Интеграция с Active Directory
Интеграция со службой Active Directory (далее - AD) осуществляется так:
1. Front Сервис Оркестратора регистрируется в AD и DNS. См. документ «Руководство по установке и настройке AD для SSO.docx», который входит в комплект поставки. 2. В зависимости от ОС и варианта развертывания:
Для Windows 2016 Server и варианта развертывания WebApi и Front работают под IIS сервер с IIS может быть включен в AD. Тогда в IIS для узла Primo.WebApi должна быть разрешена аутентификация Windows, а пул приложений этого узла должен работать под доменной SPN учетной записью, полученной при регистрации сервиса в AD:
![](https://docs.primo-rpa.ru/~gitbook/image?url=https%3A%2F%2F746369787-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252F-M-L9CGkriEo1_2PfJzA%252Fuploads%252Fgit-blob-c87cc42b00383eef936145cfcfee54e9022c7075%252F6.%2520%25D0%25A0%25D0%25B0%25D0%25B7%25D1%2580%25D0%25B5%25D1%2588%25D0%25B5%25D0%25BD%25D0%25B8%25D0%25B5%2520%25D0%25B0%25D1%2583%25D1%2582%25D0%25B5%25D0%25BD%25D1%2582%25D0%25B8%25D1%2584%25D0%25B8%25D0%25BA%25D0%25B0%25D1%2586%25D0%25B8%25D1%258F%2520Windows%2520%25D0%25B4%25D0%25BB%25D1%258F%2520%25D1%2583%25D0%25B7%25D0%25BB%25D0%25BE%25D0%25B2%2520%25D0%25B2%2520IIS.png%3Falt%3Dmedia&width=768&dpr=4&quality=100&sign=e560a8db&sv=1)
![](https://docs.primo-rpa.ru/~gitbook/image?url=https%3A%2F%2F746369787-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252F-M-L9CGkriEo1_2PfJzA%252Fuploads%252Fgit-blob-ac42a858e94c8b1a2ce82cbc523e29277b7fd527%252F7.%2520%25D0%259F%25D0%25BE%25D0%25BB%25D1%258C%25D0%25B7%25D0%25BE%25D0%25B2%25D0%25B0%25D1%2582%25D0%25B5%25D0%25BB%25D1%258C%252C%2520%25D0%25BF%25D0%25BE%25D0%25B4%2520%25D0%25BA%25D0%25BE%25D1%2582%25D0%25BE%25D1%2580%25D1%258B%25D0%25BC%2520%25D1%2580%25D0%25B0%25D0%25B1%25D0%25BE%25D1%2582%25D0%25B0%25D0%25B5%25D1%2582%2520%25D0%25BF%25D1%2583%25D0%25BB%2520%25D0%25BF%25D1%2580%25D0%25B8%25D0%25BB%25D0%25BE%25D0%25B6%25D0%25B5%25D0%25BD%25D0%25B8%25D0%25B9%2520Primo.WebApi.png%3Falt%3Dmedia&width=768&dpr=4&quality=100&sign=8298aa7f&sv=1)
Для ОС Linux, или варианта развертывания для Windows 2016 Server WebApi – служба Windows, Front – nginx, или если сервер с IIS не включен в AD – только на основе keytab-файла.
3. В конфигурационном файле WebApi в секции ActiveDirectory нужно прописать настройки для каждого AD, чтобы в UI Оркестратора роль Оркестратора могла быть ассоциирована с группой AD:
Для AD-групп в параметре GroupsFilter может быть произведена более точная фильтрация, например, по названиям групп:
Путем явного перечисления через ИЛИ:
(&(ObjectClass=group)(|(cn=primo)(cn=another)))
С использованием регулярного выражения:
(&(ObjectClass=group)(cn=prim*))
Если фильтрация не используется, может возникнуть ошибка при запросе слишком большого количества групп.
Если не используется одновременно несколько AD, лишний AD должен быть удален.
Наименование AD в конфигурационном файле WebApi рекомендуется выбирать в соответствии со значениями DC в параметре StartPoint, например, для primo1.orch - DC=primo1
, DC=orch
.
В таблице ниже приведено описание параметров для настройки AD, которые администратор может изменять в конфигурационном файле.
Таблица 1 – Описание параметров для настройки AD.
Параметр | Назначение | Примечание |
---|---|---|
Type | Настройка формы авторизации. Возможные значения 1 (авторизация только в Оркестраторе) и 5 (авторизация в Оркестраторе или SSO) | |
primo1.orch, primo2.orch и т.д. | Точные названия AD, без сокращения, со всеми поддоменами. Должны быть заменены | Рекомендуется использовать префиксы наименований, чтобы отфильтровать в GroupsFilter |
Host | Адрес AD | |
UseSsl | Используется LDAPS | |
AcceptUntrustedCertificate | При использовании LDAPS опеределяет допустимость невалидного SSL-сертификата | |
AdminUserName | Имя учетной записи, имеющей права на просмотр каталога AD | |
AdminPassword | Зашифрованный пароль | См. раздел «Атрибуты безопасности» в документе «Развертывание Primo RPA 1.23.6 - Руководство администратора» (входит в комплект поставки) |
StartPoint | Уровень, с которого просматривается каталог. Параметры DC должны соответствовать названию AD. Параметр CN не меняется | |
Tenants | Массив идентификаторов тенантов, которые относятся к AD | |
TrustedDomains | Массив доменов (в нижнем регистре), из которых пользователь может авторизоваться в домене (при настроенных доверительных отношениях между доменами), в котором зарегистрирован сервис Оркестратора |
Рабочие станции, на которых запускается UI Оркестратора, должны быть включены в AD.
Типовые проблемы
Если возникают проблемы при настройке SSO, требуется пошагово проверить настройку.
Проверка, что группа AD пользователя, который авторизуется в Оркестраторе по SSO, привязана к роли Оркестратора в БД: <имя роли> - имя роли Оркестратора, к которой должна быть привязана группа AD <имя группы>.
Шаг 1: На рабочей станции, включенной в AD (через cmd):
Среди групп должна быть (определяется по SID) группа AD, которая привязана к роли Оркестратора в БД (см. шаг 3).
Шаг 2: На сервере контроллера AD (через PowerShell):
SID группы AD должен быть привязан к роли Оркестратора в БД (см. шаг 3) и должен содержаться среди SID на шаге 1.
Шаг 3: В БД ltoolsidentity:
Запрос вернет привязку по SID к <имя роли> групп AD.
Поле RoleAds.Ad в БД ltoolsidentity, название AD в конфиге WebApi (секция ActiveDirectory:MultyForest) и название AD, которое приходит из AD при авторизации, должны совпадать. Если они отличаются, необходимо привести их в соответствие и перезапустить службу Primo.Orchestrator.WebApi.
Шаг 4 (не обязательный): Выполняется после того, как интеграция с AD настроена. При помощи запроса в PowerShell получаем из AD все группы, предназначенные для использования в Оркестраторе:
Например, используя префикс prim (может использоваться другая фильтрация).
![](https://docs.primo-rpa.ru/~gitbook/image?url=https%3A%2F%2F746369787-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252F-M-L9CGkriEo1_2PfJzA%252Fuploads%252Fgit-blob-650e3b413b3048ca65bf0b8cde35670bff2d1b96%252Fquery-AD-groups.png%3Falt%3Dmedia&width=768&dpr=4&quality=100&sign=99bd9ae9&sv=1)
Копируем полученный результат в SQL-запрос к БД ltoolsidentity:
Здесь вместо s1.primo1.orch нужно подставить название своего домена.
![](https://docs.primo-rpa.ru/~gitbook/image?url=https%3A%2F%2F746369787-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252F-M-L9CGkriEo1_2PfJzA%252Fuploads%252Fgit-blob-d7665e4a586adbf86a0dd827fc7e4848f0c7ea7e%252Fquery-ad-result.png%3Falt%3Dmedia&width=768&dpr=4&quality=100&sign=1ba296c3&sv=1)
По результату запроса видно, что AD-группа primo3 относится к тенанту BUCH. Это значит, что Оркестратор не даст привязать AD-группу primo3 к роли другого тенанта, так как AD-группа может быть привязана только к ролям одного тенанта.
Если привязка правильная, имеет смысл переименовать AD-группу primo3 в primo3-BUCH, чтобы в UI Оркестратора была видна принадлежность AD-группы к тенанту (через роль).
Если привязка неправильная, и AD-группа primo3 должна использоваться в другом тенанте, сначала нужно отвязать её от ролей тенанта BUCH.
Last updated