Перейти к основному содержимому

Создание шаблонов приложений

Для подготовки XML-шаблонов win32- и веб-приложений, интегрированных с модулем ESSO Agent, предназначена утилита Indeed-Id ESSO Template Wizard (Мастер шаблонов).

Утилита обрабатывает форму целевого приложения и формирует слепок формы. Это набор данных, описывающий элементы формы, например, имя заголовка, идентификаторы кнопок и полей ввода данных. На основе данных, содержащихся в шаблоне, ESSO Agent отследит запуск целевого приложения на рабочей станции пользователя и, в зависимости от настроек для конкретного пользователя, предоставит или не предоставит доступ.

Примечание

Полученный слепок является заготовкой для создания шаблона приложения. Поэтому после генерации слепка его нужно отредактировать вручную.

Установить Indeed-Id ESSO Template Wizard

Установите Indeed-Id ESSO Template Wizard на рабочих станциях, где установлены приложения, для которых необходимо подготовить шаблон.

Для этого запустите файл Indeed AM <номер версии>/Indeed AM Template Wizard/<номер версии>/IndeedID.ESSO.Template.Wizard.msi и следуйте указаниям мастера установки.

После завершения установки компоненты Indeed-Id ESSO Template Wizard — Web Мастер шаблонов и Win32 Мастер шаблонов — появятся в разделе Все программы → Indeed-Id → Enterprise SSO.

Собрать информацию о приложении

Прежде чем создавать шаблон приложения, соберите о нем следующую информацию:

  1. Набор окон целевого приложения, которые будет обрабатывать ESSO-шаблон. При этом можно ориентироваться на основные операции, которые способен выполнять шаблон:

    • вход в приложение;
    • разблокировка;
    • смена пароля в приложении.

    В некоторых случаях пользовательский сценарий предполагает отказ от пароля — пользователь не знает свой пароль и использует аутентификатор или прозрачную аутентификацию для работы с целевым приложением. Тогда все окна, в которых пользователю предлагается ввести пароль для приложения, необходимо включить в список обрабатываемых окон. Помимо самих целевых окон важно обратить внимание на контролы (элементы управления интерфейсом), которые должны обрабатываться шаблоном.

  2. Набор способов запуска приложения, например через ярлыки, командные или исполняемые файлы. Эта информация необходима для настройки быстрого запуска приложения.

  3. Набор исполняемых файлов, создающих процессы, отображающие графический интерфейс приложения — окна, на которые должен реагировать ESSO Agent. Для каждого такого файла необходимо узнать имя, описание и расположение. Если у приложения только один исполняемый файл, то достаточно той информации, которую Мастер шаблонов соберет во время работы.

Создать шаблон

Определив список необходимых окон и операций, можно приступить к созданию слепка или слепков шаблона. Для одного окна может потребоваться несколько слепков. Также в процессе отладки шаблона может потребоваться создать дополнительные слепки. Поэтому доступ к рабочей станции с установленным целевым приложением и Indeed-Id ESSO Template Wizard необходим на протяжении всего процесса создания шаблона.

  1. Запустите приложение Enterprise SSO — Win 32 Мастер шаблонов.

  2. Запустите целевое приложение, шаблон для которого нужно создать, и перейдите на его форму входа.

  3. Нажмите комбинацию клавиш Ctr+Shift+T.

  4. В мастере шаблонов откроется окно настроек генерации шаблона. Укажите в нем необходимые параметры.

Настройки глубины контролов формы
  • Глубина просмотра контролов формы.

    С помощью данного параметра можно задать глубину вложенности элементов управления формы, на основе которой Мастер шаблонов построит шаблон. Данный параметр задается вручную при создании шаблона. Если параметр равен 0, то Мастер шаблонов соберет информацию только о невложенных элементах управления. Если параметр равен 1, то Мастер шаблонов соберет данные о невложенных элементах управления и об элементах управления первого уровня вложенности и так далее.

  • Глубина контролов выбранной формы.

    Данный параметр отображает максимальную глубину вложенности элементов управления на выбранной форме — сколько уровней вложенности элементов управления существует на форме. При выборе значения параметра Глубина просмотра контролов формы рекомендуется ориентироваться на данный параметр. Значение глубины контролов для выбранной формы Мастер шаблонов вычисляет индивидуально для каждой формы в момент определения целевой формы приложения.

Настройки формы целевого приложения

Данный набор настроек позволяет задать совокупность признаков формы приложения, которые будут учитываться Агентом ESSO при поиске целевого окна среди множества окон целевого приложения.

ЗаголовокПри включении данной настройки значение заголовка формы будет учитываться в процессе отслеживания целевой формы целевого приложения. В шаблон будет добавлено фиксированное значение заголовка для сравнения.
Если настройка выключена, значение заголовка формы при определении целевой формы приложения учитываться не будет.

Рекомендуется использовать данный параметр в шаблоне, кроме случаев, когда заголовок динамически изменяется.
Имя класса окнаПри включении данной настройки в процессе отслеживания целевой формы целевого приложения будет учитываться имя класса окна для данной формы. Имя класса окна задается на этапе разработки приложения. В шаблон будет добавлено фиксированное значение имени класса окна для сравнения.
Если настройка выключена, имя класса окна при определении целевой формы приложения учитываться не будет.

Рекомендуется использовать данный параметр в шаблоне, кроме случаев, когда имя класса изменяется динамически.
РазмерыПри включении данной настройки в процессе отслеживания целевой формы целевого приложения будут учитываться строго зафиксированные размеры окна — ширина и высота в пикселях. В шаблон будет добавлено фиксированное значение размеров формы для сравнения.
Если настройка выключена, размеры окна при определении целевой формы приложения учитываться не будут.

Использовать данный параметр следует только в тех случаях, когда остальные параметры не позволяют достаточно точно описать целевую форму приложения.
Настройки контролов формы целевого приложения

Данный набор настроек позволяет задать совокупность признаков элементов управления, присутствующих в окне приложения, которые ESSO Agent будет учитывать при поиске целевого окна среди множества окон целевого приложения.

CtrIdЕсли данная настройка включена, в процессе отслеживания целевой формы целевого приложения будут учитываться идентификаторы всех контролов, которые входят в состав окна. Эти идентификаторы задаются на этапе разработки приложения. Значения всех идентификаторов элементов управления будут зафиксированы в шаблоне.
Если настройка выключена, идентификаторы элементов управления при определении целевой формы приложения учитываться не будут.

Рекомендуется использовать данный параметр, кроме случаев, когда идентификаторы контролов в целевой форме изменяется динамически.
Имя класса окнаЕсли данная настройка включена, в процессе отслеживания целевой формы целевого приложения будет учитываться имя класса окна для данной формы. Имя класса окна задается на этапе разработки приложения. В шаблон будет добавлено фиксированное значение имени класса окна для сравнения.
Если настройка выключена, имя класса окна при определении целевой формы приложения учитываться не будет.

Рекомендуется использовать данный параметр в шаблоне, кроме случаев, когда имя класса изменяется динамически.
ТекстВключение данной настройки позволяет учитывать текст, содержащийся в элементах управления в окне приложения (поля ввода, выпадающие списки и так далее), в процессе отслеживания целевой формы целевого приложения. Параметр учитывается для всех элементов управления, которые входят в состав окна. Значения всех текстовых строк для элементов управления будут зафиксированы в шаблоне.
Если настройка выключена, текст элементов управления при определении целевой формы приложения учитываться не будет.

ВАЖНО:
При создании шаблона обращайте внимание на изменение текста элементов управления. При различных обстоятельствах — например, при смене языка в системе или в приложении, изменении версии приложения или смене пользователя — текст в элементе управления может измениться. Это может помешать процедуре отслеживания приложения. Не используйте динамически изменяющийся текст в шаблоне либо учитывайте все возможные варианты данного параметра.
РазмерыЕсли данная настройка включена, в процессе отслеживания целевой формы целевого приложения будут учитываться строго зафиксированные размеры всех элементов управления в окне — ширина и высота в пикселях. В шаблон будет добавлено фиксированное значение размеров для сравнения.
Если настройка выключена, размеры элементов управления при определении целевой формы приложения учитываться не будут.

Используйте данный параметр только в тех случаях, когда остальные параметры не позволяют достаточно точно описать свойства элементов управления целевой формы приложения.
ПозицияЕсли данная настройка включена, в процессе отслеживания целевой формы целевого приложения будет учитываться строго зафиксированная позиция — позиция левого верхнего угла элемента управления относительно левого верхнего угла контейнера, содержащего этот элемент управления, в пикселях — для всех элементов управления в окне. В шаблон будет добавлено фиксированное значение позиции для сравнения.
Если настройка выключена, позиция элементов управления при определении целевой формы приложения учитываться не будет.

Используйте данный параметр только в тех случаях, когда остальные параметры не позволяют достаточно точно описать свойства элементов управления целевой формы приложения.
VisibleЕсли данная настройка включена, в процессе отслеживания целевой формы целевого приложения учитывается признак видимости — виден ли присутствующий в форме элемент управления для пользователя — всех элементов управления, которые входят в состав окна. Значения свойства видимости для элементов управления будут зафиксированы в шаблоне.
Если настройка выключена, видимость элементов управления при определении целевой формы приложения учитываться не будет.
EnableЕсли данная настройка включена, в процессе отслеживания целевой формы целевого приложения учитывается признак доступности — доступен ли элемент управления для действий пользователя — всех элементов управления, которые входят в состав окна. Значения свойства доступности для элементов управления будут зафиксированы в шаблоне.
Если настройка выключена, доступность элементов управления при определении целевой формы приложения учитываться не будет.
Настройки алгоритма заполнения

В данном разделе задается алгоритм заполнения, который будет использован в процессе подстановки имени пользователя и пароля в целевую форму приложения ESSO.

НетАлгоритм заполнения не будет сгенерирован в шаблоне. Автоматическое заполнение формы происходить не будет.
На основе SetTextПосле выбора данной настройки Мастер шаблонов сгенерирует команды заполнения поля ввода имени пользователя, заполнения поля ввода пароля и нажатия кнопки ОК. Каждая команда будет содержать данные элемента управления, к которому она должна быть применена. Заполнение элементов управления формы будет производиться стандартным методом SetText.

Рекомендуется использовать данный алгоритм заполнения.
Эмуляция вводаЕсли выбрана эта настройка, Мастер шаблонов сгенерирует команды установки фокуса в поле ввода имени пользователя, заполнения поля ввода имени пользователя, заполнения поля ввода пароля, нажатия кнопки ОК, команды перехода между элементами управления и команды паузы. Само заполнение будет происходить с помощью эмуляции нажатия клавиш клавиатуры. Переход фокуса между элементами управления будет осуществляться эмуляцией нажатия клавиши Tab. В алгоритме заполнения также будут присутствовать команды паузы в 50 миллисекунд командами заполнения и перехода.

Рекомендуется к использованию в шаблонах для приложений, в которых использование метода SetText невозможно или затруднено.
Примечание

При создании шаблона для конкретного приложения задавайте только тот набор настроек, который будет отличать это приложение от других. Перед генерацией шаблона важно понять, по каким признакам будет определяться форма входа в приложение, и какой алгоритм заполнения необходимо применить.

  1. Нажмите Генерировать.

  2. Откроется окно Определение контрола формы. Перейдите в окно целевого приложения на нужный контрол и нажмите Ctrl+Shift+T. Следуя подсказкам Мастера шаблонов, выполните эти действия для каждого выбранного элемента управления.

    После определения контролов будет создан макет шаблона.

  3. Включите опцию Сохранять в UTF−16 и нажмите Сохранить.

  4. В открывшемся окне выберите место сохранения и укажите имя файла макета шаблона. Нажмите Сохранить.

Макет сохранится в формате XML.

  1. В окне Мастера шаблонов нажмите Выход и закройте целевое приложение.

  2. Откройте макет в редакторе Блокнот или другом текстовом редакторе, поддерживающем формат XML.

  3. Проверьте путь к целевому приложению в разделе paths. При необходимости можно добавить дополнительный путь, по которому будет доступно приложение.

Пример
    <paths>
<path>C:\Users\Admin\Desktop\TestApps\ТестApp\TestAppWin\IndeedID.SSO.Test.App.exe</path>
<path>C:\Users\Admin\Desktop\IndeedID.SSO.Test.App.exe</path>
</paths>
  1. В параметре userDescription укажите название целевого приложения. Именно это название пользователь будет видеть в окне ESSO Agent на своем устройстве.
Пример
<userDescription>Test.App.Win</userDescription>
  1. В параметре cmdLine проверьте команду для быстрого запуска приложения. Это должен быть путь до исполняемого файла приложения.
Пример
    <applicationDetails>
<cmdLine>C:\Users\Admin\Desktop\IndeedID.SSO.Test.App.exe</cmdLine>
</applicationDetails>
  1. Если при генерации макета шаблона в качестве алгоритма заполнения была выбрана опция Эмуляция ввода, то проверьте, в каком поле изначально установлен курсор при запуске приложения и в какой последовательности он перемещается по остальным контролам. По результатам этого исследования, если нужно, отредактируйте алгоритм заполнения формы в шаблоне в разделе fillingAlgorithm.

  2. Сохраните измененный файл шаблона с расширением APP.