29170

Accessing Access Gateway programmatically

Question:

is there any way to connect to citrix access gateway using some api, so that credentials for authentication are sent through that program, the user is authenticated and then is able to access internal resources. I saw about NITRO Api, and Web interface SDK...is this thing can be done using any of theses...which one of them is a better choice?

Answer1:

There is an API available by using the COM object WFICA.OCX (this component is included with the installation of the Citrix client).

I believe this provides what you are looking for - you can set properties for username and password. (Note: I haven't yet been able to get a working example for myself.)

Documentation for the API is available on the Citrix Developer Network: - <a href="http://community.citrix.com/display/xa/ICA+Client+Object+SDK" rel="nofollow">ICA Client Object SDK</a> - <a href="http://community.citrix.com/display/xa/Citrix+ICA+Client+Object+SDK+Overview" rel="nofollow">Citrix ICA Client Object SDK Overview</a>

There is also a detailed tutorial in <a href="http://blogs.citrix.com/2010/03/02/fun-with-the-ica-client-object-ico-and-net-console-applications/" rel="nofollow">Fun with the ICA Client Object (ICO) and .Net Console Applications</a> on the Citrix blog. I was first referred to this blog post by another Stack Overflow user after asking the question <a href="https://stackoverflow.com/questions/9911507/detect-termination-of-citrix-session-launched-by-kiosk-application" rel="nofollow">Detect termination of Citrix session launched by kiosk application</a>.

Recommend

  • Unable to register DLL using Regsv32 - error “Dll
  • The module “.dll” was loaded but the entry-point was not found
  • VBA compatibility issues: 64-bit Windows7 (MSINET missing) and Trim function compatibility issues
  • Can not debug an ActiveX inside a VB6 project with several components inside
  • Service stack arrayof to be removed
  • How to free memory using Core Data External Storage?
  • User Authentication on a mobile AngularJS App
  • Can weak symbol be resolved among libraries during linking?
  • Radio button show hover between two radio button using jquery
  • Django Rest Framework: getting lists from query_params without request.getlist
  • Simple command-line app I/O in Dart
  • Comparing user's facebook/twitter friends to site's users in Python/Django
  • Why can't UI components be accessed from a backgroundworker?
  • Android application: how to use the camera and grab the image bytes?
  • Spring Cloud Microservice Architecture Confusion
  • How to revert to previous XCode version?
  • Firefox Extension - Monitor refresh and change of tab
  • How to get Eclipse Oxygen to run on Java 9
  • Transactional Create with Validation in ServiceStack Redis Client
  • How to attach a node.js readable stream to a Sendgrid email?
  • Handling un-mapped Rest path
  • PHP - How to update data to MySQL when click a radio button
  • C# - Serializing and deserializing static member
  • Get object from AWS S3 as a stream
  • Menu Color Fade on Hover with Jquery
  • How to handle AllServersUnavailable Exception
  • How to limit post in wp_query
  • Hazelcast - OperationTimeoutException
  • How to make Safari send if-modified-since header?
  • Adding custom controls to a full screen movie
  • RestKit - RKRequestDelegate does not exist
  • AT Commands to Send SMS not working in Windows 8.1
  • Revoking OAuth Access Token Results in 404 Not Found
  • Rails 2: use form_for to build a form covering multiple objects of the same class
  • How to set the response of a form post action to a iframe source?
  • How do I configure my settings file to work with unit tests?
  • Change div Background jquery
  • Qt: Run a script BEFORE make
  • Is it possible to post an object from jquery to bottle.py?
  • reshape alternating columns in less time and using less memory