Creating a One-Time URL

 

The VirtualUI Server processes a One-Time URL creation request in the form of an http(s) request, as follows:

 

serverurl + "/ws/oturl/get?apikey=" + apikey + "&accesskey=" + accesskey +

                                  "&userid=" + userid + "&password=" + password +

                                  "&customdata=" + customData +

                                           "&plen=" + passlen + "&expires=" + expires,

 

where:

 

 

serverurl

optional

VirtualUI Server address (protocol, domain and port)

apikey

required

VirtualUI installation [API] key. Find this information in Thinfinity.VirtualUI.Server.ini at C:\ProgramData\Cybele Software\Thinfinity\VirtualUI

accesskey

required

Identifies the application that will be run. Complete this parameter with the 'access key' parameter found in the application’s profile in the VirtualUI Server Manager.

userid

optional

A valid user that meets the criteria set in the application profile’s 'Permission' tab.

password

optional

The password of the user specified in the 'userid' parameter.

customdata

optional

Use this field to send any information you may need to make available to the application. This is the right place to pass sign-on credentials. This information will be accessible in the application through the BrowserInfo.CustomData property.

plen

optional

Length of the passcode to be returned.

expires

optional

Ticket expiration time, in minutes.

 

Note: The user indicated in the 'userid' parameter is a user validated within VirtualUI to access the application. This is an Active Directory user that was either added individually, or as part of a group of users in the 'Permissions' tab of the profile that will be accessed. In a regular non-one-time-URL implementation, the end user would authenticate by providing these credentials. However, when using one-time-URL, this information is used internally by the application and the user can be authenticated somehow else.

 

If the request is unsuccessful, the following HTTP codes can be received:

 

400: Invalid parameters

401: Userid/password invalid

 

If the request is successful, the HTTP call returns a 200 HTTP status code, and a JSON consisting of two fields:

{

  "key": "LnJwsxGHp5d@6MHeiEswRdfxFCiIcLAUttRS$9FSUs-Utz3o",

  "pass":"1U4KRLN0"

}

 

With this information, the backend can build the final URL, following this format:

http(s)://server-url/oturl.html?key=[accesskey]&pass=[passcode]

 

Here's an example that uses the JSON shown above:

http(s)://server-url/oturl.html?key=LnJwsxGHp5d@6MHeiEswRdfxFCiIcLAUttRS$9FSUs-Utz3o&pass=1U4KRLN0

 

Read more:

Single Sign-On Sequence Example