Навигатор по разделу:
1. Сценарий генерации логина учетной записи сотрудника
Сценарий генерации логина учетной записи сотрудника позволяет генерировать логины учетных записей, создаваемых в IDM, на основании данных из кадровой системы.
Примеры подходящих свойств: "Имя", "Почтовый адрес", "Должность", "Номер телефона" и т. п.
Employee.FirstName + Employee.LastName + '_' + Role.Name
login = str.format('{0}@users',Employee.LastName)
if not UniquenessChecker.IsLoginUnique(login, [2]):
login = Employee.FirstName + login
login
Значения свойств определяются одиночными выражениями, выполняющимися в контексте:
| Параметр | Описание |
|---|---|
ResourceId | Идентификатор ресурса, для которого выполняется сценарий. Целочисленный тип. |
OwnedAccounts | Учётные записи во всех ресурсах, которыми владеет сотрудник в данный момент.
|
UsedAccounts | Учётные записи во всех ресурсах, которыми пользуется сотрудник или совместитель в данный момент.
|
NoTranslit() | Функция для указания не применять транслитерацию к возвращаемому значению., на вход которой передается результат сценария генерация логина. |
Transliterate(string str) | Функция применения транслитерации к возвращаемому значению., на вход которой передается результат сценария генерация логина. |
UniquenessChecker | Проверка уникальности для нескольких ресурсов. Свойство типа LoginUniquenessChecker. |
UniquenessChecker.IsLoginUnique(string login, IEnumerable<int> resources) | Функция проверки уникальности, на вход которой передается логин и список идентификаторов ресурсов. |
Debug | Вспомогательные средства отладки. Свойство типа ScriptDebug. |
Debug.Print(string text) | Функция вывода отладочной информации. |
Configuration | Конфигурация. Свойство типа ICustomConfigurationReadonlyFunctions. Подробнее о конфигурациях см. статью "9.5. Конфигурации" руководства по разработке. |
Configuration.GetConfigurationValueOrDefault(string sectionName, string key) | Функция получения значения конфигурации. Принимает на вход название секции и ключ конфигурации. |
Configuration.GetConfigurationValues(string sectionName) | Функция получения всех значений конфигураций в секции. Принимает на вход название секции. |
Employee | Сотрудник, для которого генерируется логин. Свойство типа ScriptEmployee. Параметры Employee см. в приложении. |
Role | Роль. Свойство типа ScriptRole. Параметры Role см. в приложении. |
Примечание:
О применении сценариев генерации логина учетной записи в веб-интерфейсе администратора см. статью "5.1.4. Настройка интеграции с целевыми системами" руководства по администрированию
2. Сценарий генерации логина учетной записи юнита
Сценарий генерации логина учетной записи юнита позволяет генерировать логины учетных записей, создаваемых в IDM, на основании данных из кадровой системы юнитов.
Примеры подходящих свойств: "Имя юнита", "Тип юнита", "Путь к юниту", и т. п.
Unit.Name + Unit.Type + '_' + Role.Name
NoTranslit(str.format('{0}@unit',Unit.Name))
Значения свойств определяются одиночными выражениями, выполняющимися в контексте:
| Параметр | Описание |
|---|---|
ResourceId | Идентификатор ресурса, для которого выполняется сценарий. Целочисленный тип. |
OwnedAccounts | Учётные записи во всех ресурсах, которыми владеет сотрудник в данный момент.
|
UsedAccounts | Учётные записи во всех ресурсах, которыми пользуется сотрудник в данный момент.
|
NoTranslit() | Функция для указания не применять транслитерацию к возвращаемому значению, на вход которой передается результат сценария генерация логина. |
Transliterate(string str) | Функция применения транслитерации к возвращаемому значению, на вход которой передается результат сценария генерация логина. |
UniquenessChecker | Проверка уникальности для нескольких ресурсов. Свойство типа LoginUniquenessChecker. |
UniquenessChecker.IsLoginUnique(string login, IEnumerable<int> resources) | Функция проверки уникальности, на вход которой передается логин и список идентификаторов ресурсов. |
Debug | Вспомогательные средства отладки. Свойство типа ScriptDebug. |
Debug.Print(string text) | Функция вывода отладочной информации. |
Configuration | Конфигурация. Свойство типа ICustomConfigurationReadonlyFunctions. Подробнее о конфигурациях см. статью "9.5. Конфигурации" руководства по разработке. |
Configuration.GetConfigurationValueOrDefault(string sectionName, string key) | Функция получения значения конфигурации. Принимает на вход название секции и ключ конфигурации. |
Configuration.GetConfigurationValues(string sectionName) | Функция получения всех значений конфигураций в секции. Принимает на вход название секции. |
Unit | Юнит, для которого генерируется логин. Свойство типа UnitScriptModel. Параметры Unit см. в приложении. |
Role | Роль. Свойство типа ScriptRole. Параметры Role см. в приложении. |
Примечание:
О применении сценариев генерации логина учетной записи в веб-интерфейсе администратора см. статью "5.1.4. Настройка интеграции с целевыми системами" руководства по администрированию
Приложение. Параметры Role
| Параметр | Описание |
|---|---|
Role.Id | Идентификатор роли. Целочисленный тип. |
Role.Name | Название роли. Строковый тип. |
Role.Properties | Расширенные свойства роли. Массив с парами значений string - ExtendedPropertyValueScriptMode. Данный тип содержит свойства:
|
Приложение. Параметры Employee
| Параметр | Описание |
|---|---|
Employee.Id | Идентификатор сотрудника. Целочисленный тип. |
Employee.EMail | Почтовый адрес сотрудника. Строковый тип. |
Employee.FirstName | Имя сотрудника. Строковый тип. |
Employee.LastName | Фамилия сотрудника. Строковый тип. |
Employee.Patronymic | Отчество сотрудника. Строковый тип. |
Employee.PersonnelNumber | Табельный номер сотрудника. Строковый тип. |
Employee.Extension | Расширенные данные сотрудника, предоставленные кадровой системой (без наследования). Свойство типа ExtensionBag. |
Employee.Extension.Properties | Массив свойств сотрудника, предоставленных кадровой системой. |
Employee.BirthDate | Дата рождения в формате ISO 8061 (гггг-мм-дд). Строковый тип. |
Employee.Division | Подразделение сотрудника с ссылкой на родительское подразделение. Свойство типа ScriptDivision. |
Employee.Division.Id | Идентификатор подразделения сотрудника. Целочисленный тип. |
Employee.Division.Name | Название подразделения сотрудника. Строковый тип. |
Employee.Division.Extension | Расширенные данные подразделения, предоставленные кадровой системой (без наследования). Свойство типа ExtensionBag. |
Employee.Division.Extension.Properties | Массив свойств подразделения, предоставленных кадровой системой. |
Employee.Division.Parent | Ссылка на родительское подразделения (рекурсивная). Свойство типа ScriptDivision. |
Employee.Division.ManagerId | Идентификатор руководителя подразделения. Целочисленный тип. |
Employee.Division.ExternalId | Идентификатор подразделения сотрудника в кадровой системе. Строковый тип. |
Employee.Division.GetFullName() | Функция для получения полного названия подразделения в формате DN (в качестве OU берутся либо первые 64 символа названия подразделения, либо значение Extension.OU) |
Employee.Division.GetFullNameExplicit(bool ignoreMissing = false) | Функция для получения полного названия подразделения в формате DN без вывода OU из названий подразделений (в качестве OU берётся только значение Extension.OU) При ignoreMissing=True, если хотя бы одно значение не заполнено, возвращается None, иначе компонент DN пропускается. |
Employee.Division.GetPath() | Функция для получения списка подразделений на пути к этому подразделению начиная от корневого и заканчивая текущим. Employee.Division.GetPath()[0] всегда корневое. |
Employee.Position | Должность сотрудника. Свойство типа ScriptPosition. |
Employee.Position.Id | Идентификатор должности сотрудника. Целочисленный тип. |
Employee.Position.Name | Название должности сотрудника. Строковый тип. |
Employee.Position.ExternalId | Идентификатор должности сотрудника в кадровой системе. Строковый тип. |
Employee.ExternalId | Идентификатор сотрудника в кадровой системе. Строковый тип. |
Employee.PersonId | Идентификатор физического лица в кадровой системе. Строковый тип. |
Employee.GetManagerId() | Функция для получения идентификатора руководителя ближайшего по иерархии подразделения кроме тех подразделений, которыми руководит указанный работник. |
Employee.GetDirectManagerId() | Функция для получения идентификатора текущего непосредственного руководителя работника. |
Приложение. Параметры Unit
| Параметр | Описание |
|---|---|
Unit.Id | Идентификатор юнита. Строковый тип. |
Unit.Name | Имя юнита. Строковый тип. |
Unit.ParentId | Идентификатор родительского юнита. Строковый тип. |
Unit.DisableIdentity | Флаг отключения авторизации. Тип boolean. |
Unit.Path | Путь к юниту. Строковый тип. |
Unit.Type | Тип юнита. Свойство типа UnitType. |
Unit.Type.Id | Идентификатор типа юнита. Тип Guid. |
Unit.Type.Name | Название типа юнита. Строковый тип. |
Unit.Type.AllowAssignments | Флаг разрешения назначения юнитов данного типа сотрудникам. Тип boolean. |
Unit.Type.IsIdentitySubject | Флаг, показывающий, являются ли юниты данного типа субъектами авторизации. Тип boolean. |
Unit.Type.Icon | Иконка типа юнита. Строковый тип. |
Unit.Type.Links | Ссылки на другие типы юнитов. Массив значений типа UnitTypeLink. Данный тип содержит свойства:
|
Unit.Type.Properties | Свойства типа юнитов. Массив значений типа UnitTypeProperty. Данный тип содержит свойства:
|
Unit.Type.Children | Дочерние типы юнитов. Массив значений типа UnitTypeChild. Данный тип содержит свойства:
|
Unit.Properties | Расширенные свойства юнита. Массив с парами значений string - UnitPropertyValueScriptModel. Данный тип содержит свойства:
|
Unit.Links | Ссылки юнита. Массив значений типа UnitLink. Данный тип содержит свойства:
|
Unit.Responsibles | Ответственные за юнит. Массив значений типа UnitEmployeeResponsibleScriptModel. Данный тип содержит свойства:
|
Unit.Assignments | Назначения юнита сотрудникам. Массив значений типа UnitAssignment. Данный тип содержит свойства:
|
Unit.Children | Дочерние юниты. Массив значений типа Unit. Данный тип содержит свойства и методы:
|