Skip to main content

Create application templates

The ESSO Template Wizard utility is designed for preparing XML templates of Win32 and web applications integrated with the ESSO Agent module.

The utility processes the form of the target application and generates a form snapshot. This is a set of data describing the form elements, such as the title name and the identifiers of buttons and input fields. Based on the data contained in the template, ESSO Agent tracks the start of the target application on the user workstation and, depending on the settings for the specific user, grants or denies access.

Note

The resulting snapshot is a draft for creating the application template. After the snapshot is generated, you need to edit it manually.

Install ESSO Template Wizard​

Install ESSO Template Wizard on the workstations where the applications you need to prepare a template for are installed.

To do this, run the Axidian Access <version number>/Axidian Template Wizard/<version number>/AxidianID.ESSO.Template.Wizard.msi file and follow the instructions of the installation wizard.

After the installation is complete, the ESSO Template Wizard components — Web Template Wizard and Win32 Template Wizard — appear in All Programs → Axidian → Enterprise SSO.

Collect information about the application​

Before creating an application template, collect the following information about it:

  1. The set of target application windows that the ESSO template will process. You can be guided by the main operations that a template can perform:

    • Login to the application
    • Unlocking
    • Password change in the application

    In some cases, the user scenario implies giving up the password — the user does not know their password and uses an authenticator or transparent authentication to work with the target application. In this case, all windows where the user is prompted to enter the application password must be included in the list of processed windows. Besides the target windows, pay attention to the controls (interface controls) that must be processed by the template.

  2. The set of ways to start the application, such as through shortcuts, command files, or executable files. This information is required to configure the quick start of the application.

  3. The set of executable files that create the processes displaying the application graphical interface — the windows that ESSO Agent must respond to. For each such file, you need to know the name, description, and location. If the application has only one executable file, the information that Template Wizard collects during its operation is sufficient.

Create a template​

After you define the list of required windows and operations, you can start creating the template snapshot or snapshots. Several snapshots may be required for one window. Also, additional snapshots may be required while debugging the template. Therefore, access to the workstation with the target application and ESSO Template Wizard installed is required throughout the entire template creation process.

  1. Start the Enterprise SSO — Win32 Template Wizard application.

  2. Start the target application you need to create a template for and go to its login form.

  3. Press Ctrl+Shift+T.

  4. The template generation settings window opens in Template Wizard. Specify the required parameters in it.

Form control depth settings
  • Form control view depth.

    With this parameter, you can set the nesting depth of the form controls that Template Wizard uses to build the template. This parameter is set manually when creating a template. If the parameter is 0, Template Wizard collects information only about non-nested controls. If the parameter is 1, Template Wizard collects data about non-nested controls and about the controls of the first nesting level, and so on.

  • Control depth of the selected form.

    This parameter displays the maximum nesting depth of controls on the selected form — how many nesting levels of controls exist on the form. When selecting the value of the Form control view depth parameter, we recommend that you be guided by this parameter. Template Wizard calculates the control depth value for the selected form individually for each form at the moment the target application form is defined.

Target application form settings

This set of settings allows you to define the combination of application form attributes that ESSO Agent takes into account when searching for the target window among the multiple windows of the target application.

TitleIf this setting is enabled, the form title value is taken into account when tracking the target form of the target application. A fixed title value is added to the template for comparison.
If the setting is disabled, the form title value is not taken into account when defining the target application form.

We recommend that you use this parameter in the template, except when the title changes dynamically.
Window class nameIf this setting is enabled, the window class name for this form is taken into account when tracking the target form of the target application. The window class name is set at the application development stage. A fixed window class name value is added to the template for comparison.
If the setting is disabled, the window class name is not taken into account when defining the target application form.

We recommend that you use this parameter in the template, except when the class name changes dynamically.
SizeIf this setting is enabled, strictly fixed window dimensions — width and height in pixels — are taken into account when tracking the target form of the target application. A fixed form size value is added to the template for comparison.
If the setting is disabled, the window size is not taken into account when defining the target application form.

Use this parameter only when the other parameters do not describe the target application form accurately enough.
Target application form control settings

This set of settings allows you to define the combination of attributes of the controls present in the application window that ESSO Agent takes into account when searching for the target window among the multiple windows of the target application.

CtrIdIf this setting is enabled, the identifiers of all controls that are part of the window are taken into account when tracking the target form of the target application. These identifiers are set at the application development stage. The values of all control identifiers are fixed in the template.
If the setting is disabled, the control identifiers are not taken into account when defining the target application form.

We recommend that you use this parameter, except when the control identifiers in the target form change dynamically.
Window class nameIf this setting is enabled, the window class name for this form is taken into account when tracking the target form of the target application. The window class name is set at the application development stage. A fixed window class name value is added to the template for comparison.
If the setting is disabled, the window class name is not taken into account when defining the target application form.

We recommend that you use this parameter in the template, except when the class name changes dynamically.
TextEnabling this setting allows you to take into account the text contained in the controls in the application window (input fields, drop-down lists, and so on) when tracking the target form of the target application. The parameter is taken into account for all controls that are part of the window. The values of all text strings for the controls are fixed in the template.
If the setting is disabled, the control text is not taken into account when defining the target application form.

IMPORTANT:
When creating a template, pay attention to changes in the control text. Under various circumstances — for example, when the language in the system or in the application changes, the application version changes, or the user is switched — the text in a control may change. This may interfere with the application tracking procedure. Do not use dynamically changing text in the template, or take into account all possible variants of this parameter.
SizeIf this setting is enabled, strictly fixed dimensions of all controls in the window — width and height in pixels — are taken into account when tracking the target form of the target application. A fixed size value is added to the template for comparison.
If the setting is disabled, the control dimensions are not taken into account when defining the target application form.

Use this parameter only when the other parameters do not describe the properties of the target application form controls accurately enough.
PositionIf this setting is enabled, a strictly fixed position — the position of the upper left corner of the control relative to the upper left corner of the container holding this control, in pixels — is taken into account for all controls in the window when tracking the target form of the target application. A fixed position value is added to the template for comparison.
If the setting is disabled, the control position is not taken into account when defining the target application form.

Use this parameter only when the other parameters do not describe the properties of the target application form controls accurately enough.
VisibleIf this setting is enabled, the visibility attribute — whether a control present in the form is visible to the user — is taken into account for all controls that are part of the window when tracking the target form of the target application. The visibility property values for the controls are fixed in the template.
If the setting is disabled, the control visibility is not taken into account when defining the target application form.
EnableIf this setting is enabled, the availability attribute — whether a control is available for user actions — is taken into account for all controls that are part of the window when tracking the target form of the target application. The availability property values for the controls are fixed in the template.
If the setting is disabled, the control availability is not taken into account when defining the target application form.
Filling algorithm settings

In this section, you set the filling algorithm that is used when substituting the username and password into the target ESSO application form.

NoneThe filling algorithm is not generated in the template. The form is not filled in automatically.
Based on SetTextIf this setting is selected, Template Wizard generates the commands for filling in the username input field, filling in the password input field, and clicking the OK button. Each command contains the data of the control it must be applied to. The form controls are filled in with the standard SetText method.

We recommend that you use this filling algorithm.
Input emulationIf this setting is selected, Template Wizard generates the commands for setting the focus in the username input field, filling in the username input field, filling in the password input field, clicking the OK button, switching between controls, and pause commands. The filling itself is performed by emulating keyboard keystrokes. The focus is switched between controls by emulating the Tab keystroke. The filling algorithm also contains 50-millisecond pause commands between the filling and switching commands.

Recommended for use in templates for applications where using the SetText method is impossible or difficult.
Note

When creating a template for a specific application, set only the set of settings that distinguishes this application from others. Before generating the template, it is important to understand which attributes are used to define the application login form and which filling algorithm must be applied.

  1. Click Generate.

  2. The Form control definition window opens. Go to the target application window, to the required control, and press Ctrl+Shift+T. Following the Template Wizard prompts, perform these actions for each selected control.

    After the controls are defined, the template draft is created.

  3. Enable the Save in UTF-16 option and click Save.

  4. In the window that opens, select the save location and specify the file name of the template draft. Click Save.

    The draft is saved in the XML format.

  5. In the Template Wizard window, click Exit and close the target application.

  6. Open the draft in Notepad or another text editor that supports the XML format.

  7. Check the path to the target application in the paths section. If required, you can add an additional path where the application is available.

Example
    <paths>
<path>C:\Users\Admin\Desktop\TestApps\TestApp\TestAppWin\AxidianID.SSO.Test.App.exe</path>
// highlight-green-next-line
<path>C:\Users\Admin\Desktop\AxidianID.SSO.Test.App.exe</path>
</paths>
  1. In the userDescription parameter, specify the name of the target application. This is the name the user sees in the ESSO Agent window on their device.
Example
<userDescription>Test.App.Win</userDescription>
  1. In the cmdLine parameter, check the command for the quick start of the application. This must be the path to the application executable file.
Example
    <applicationDetails>
// highlight-green-next-line
<cmdLine>C:\Users\Admin\Desktop\AxidianID.SSO.Test.App.exe</cmdLine>
</applicationDetails>
  1. If Input emulation was selected as the filling algorithm when generating the template draft, check which field the cursor is initially placed in when the application starts and in which order it moves through the other controls. Based on the results, edit the form filling algorithm in the fillingAlgorithm section of the template if required.

  2. Save the modified template file with the .APP extension.