IntraVision

Настройка интеграции Intradesk с ADFS, keycloak

Цели интеграции:
1. Сотруднику не надо помнить логин/пароль для входа в Intradesk. Сквозной вход (или вход по кнопке) с доменными учетными данными.
2. Не надо заводить учетную запись сотрудника в Intradesk. При первом входе учетная запись в Intradesk будет создана (возможно дополнительно потребуется обогатить данные привязкой в группы) 
3. Доменная учетная запись является Master записью. При блокировании учетной записи в домене, в Intradesk также будет заблокирован вход.
4. Авторизация через домен считается более безопасной чем авторизация по логину паролю.

ADFS, keycloak и другие провайдеры
Основная идея в том, что ADFS, keycloak и другие используются как сервис авторизации OIDC для Intradesk. В данной статье со скриншотами  описана настройка именно с ADFS. Настройка с keycloak не описана в данной статье, но если вы прочитаете и поймете, то сможете это сделать сами и для keycloak.
 

Разделы инструкции: 

   Проверка авторизации и создания пользователя, который не заведен в Intradesk.

Основной сценарий авторизации в Intradesk через ADFS. 

Сервис ADFS используется как сервис авторизации OIDC. В Intradesk настроена авторизация через OIDC с провайдером ADFS (в разделе "Настройки -> Интеграции -> OIDC-аутентификация") и  на стороне Active Directory произведены настройки для корректной работы интеграции. 

Пользователь по веб-ссылке хочет открыть Intradesk. До этого авторизации в Intradesk у данного пользователя не было. Перед пользователем открывается форма авторизации от службы ADFS. Пользователь вводит свои доменные логин/пароль. ADFS авторизует пользователя и далее Intradesk пробует найти данного пользователя среди Сотрудников и Пользователей клиентов Intradesk. Если находит, то успешно пропускает. Если такого Пользователя в Intradesk нет, то он будет автоматически создан по правилам создания пользователей (которые задаются в разделе "Настройки -> Правила поведения -> Правила создания пользователей") и далее будет успешно авторизован в Intradesk. Данные кейсы подробней описаны в разделе Проверка. 

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


Настройка в Active Directory.  

1. Открыть консоль администрирования ADFS на вашем Windows Server
2. Нажать на "Application Group"
3. Добавить новую группу приложений, нажав "Add Application Group"
 
 
4. Ввести имя для интеграции в поле "Name"
5. В поле "Template" в списке "Standalone applications" выбрать "Server Application" и нажать "Next"
 
 
7. Скопировать идентификатор клиента из поля "Client Identifier" и сохранить куда-нибудь, он нам еще понадобится
 
 
8. В поле "Redirect URI" ввести "https://login.intradesk.ru/" и нажать "Add"
 
 
9. Нажать "Next"
10. Установите чек-бокс "Genrate a shared secret" и скопировать значение поля "Secret", нажав "Copy to clipboard". Сохранить куда-нибудь это значение, оно нам еще понадобится. Нажать "Next"
 
 
12. На следующем экране снова нажать « Next»
 
 

13. Нажать "Close"
 
 
14. Нажать на созданную группу. В правом меню нажать на "Properties"
 
 

15. Нажать "Add Application"
 
 
16. В поле "Template" в списке "Standalone applications" выбрать "Web API" и нажать "Next"
 
 
17. В поле "Identifier" вставить сохраненный на шаге 7 "Client Identifier" и нажать "Add"
 
 
18. Так же, в поле "Identifier" добавить URL-адрес "https://login.intradesk.ru/" и нажать "Add". Нажать "Next"
 
 
Важно! Если у Вас уже создана группа со значением "https://login.intradesk.ru/" в поле "Identifier", то в новую группу это значение уже добавлять не нужно. Иначе на шаге 21 отобразится ошибка уникальности identifier
 
 

19. На экране "Access Control Policy" выбрать "Permit everyone" и нажать "Next"
 
 
20. На экране "Configure Application Permissions" выбрать "allatclaims" и "openid", и нажать "Next"
 
 
21. Нажать "Next"
 
 
* Если при нажатии "Next" отобразится ошибка ошибка уникальности identifier, то вернитесь на шаг 18 к пометке "Важно!"

22. Выбрать созданную запись Web-API и нажать "Edit"
 
 

23. Открыть вкладку "Issuance Transform Rules" и нажать "Add Rule"
 
 

24. Выберите шаблон "Send LDAP Attributes as Claims" и нажать "Next"
 
 
25. В поле "Claim rule name" ввести название правила, в поле "Attribute store "выбрать "Active Directory" 
 
 

26. В поле "Mapping of LDAP attributes to outgoing claim types" добавить клаймы, которые нужно передавать при авторизации. 
Полям нужно выставить соответствие из выпадающих списков.
Например "Surname": "Surname" 
 
 

Если соответствия в выпадающем списке нет, то дописать вручную эти значения. 
Прикладываем список клаймов и возможные варианты значений:
 
 
 
 

27. Нажать "Finish"

Настройка в Intradesk.  

Данный раздел поможет вам произвести настройки OIDC аутентификации и правил создания пользователей в Intradesk. 

Настройка OIDC аутентификации.  

1.Открыть Вашу площадку Intradesk. Авторизоваться под учетной записью администратора
2. Открыть "Настройки -> Интеграции -> OIDC аутентификация"
3. Нажать "+Создать"
 
 

4. Заполнить название, например "Вход через 
ADFS" (будет отображаться в виде кнопки на странице авторизации)
5. В поле "Provider URL (Authority)" ввести url на Вашего провайдера ADFS
6. После заполнения поля "Provider URL (Authority)" в поле "OidcIdentifier" попадает значение из "Provider URL (Authority)", обрезая точки, тире, двоеточие.
 
 

7. В поле "Client ID" вставить сохраненный ранее "Client Identifier" (сохраняли на шаге 7 в разделе Настройка в Active Directory)
8. В поле "Client Secret" вставить сохраненный ранее "Secret" (сохраняли на шаге 10 в 
разделе Настройка в Active Directory)
9. В поле "Scopes" ввести "openid allatclaims"
10. В поле "SignedOutRedirectUri" добавить URl, на который будет перенаправлять пользователя при выходе из системы
11. В поле "Аутентифицировать по" выбрать "Email" 
12. Выбрать чек-бокс Активно
 
 
13. Нажать Сохранить

Правила создания пользователей в Intradesk. 

У нас в AD есть пользователи, которые не заведены в Intradesk. 
Цель - автоматически создавать пользователей в Intradesk с типом "Сотрудник",  ролью "Исполнительская" и добавлять их в группу "IT". 

Для этого:
1. Создать нужную группу ("IT") в разделе "Сотрудники -> Группы"
2. Открыть "Настройки -> Правила поведения -> Правила создания пользователей"
3. Нажать "+Создать"
4. В поле "Провайдер аутентификации" выбрать провайдера (провайдера создавали в прошлом разделе  Настройка в Intradesk -> Настройка OIDC аутентификации -> шаги 1-12)
 
 
5. Заполнить Результат: 
  • Создавать: "Сотрудник" или "Клиент"
  • Выбрать "Роль", с которой будет создаваться пользователь
  • Выбрать "Группы, в которых создавать пользователя". (Не используется при создании клиентов физ.лиц)
 
 

6. Нажать "Сохранить". 
Готово! Правило создания пользователей создано. 

Для более гибкой настройки правил создания пользователя можно использовать клаймы:
 
 
При помощи клаймов есть возможность задать разные параметры создания пользователей с возможностью выбрать тип "Сотрудники" / "Клиенты", выбрать роль и группу, в которой будет создан пользователь. 
*Подробный разбор примеров интеграции Intradesk с ADFS с использованием клаймов описан в Статья №26155. 

Проверка. 

В данном разделе мы осуществим проверку, по выполненным настройкам из прошлых разделов инструкции.  

Проверка авторизации пользователя, который заведен в Intradesk. 

Для проверки авторизуемся за пользователя, который заведен в Intradesk и в AD.
1. Открыть страницу авторизации -> появилась созданная ранее кнопка, в нашем случае это "Вход через ADFS". Нажать "Вход через ADFS" 
 

 
2. Вы будете перенаправлены на экран входа в ADFS, где необходимо ввести домен, имя пользователя и пароль. Нажать Вход. 
 
 
Готово! Авторизация в Intradesk через ADFS прошла успешно. 
 
 

Проверка авторизации и создания пользователя, который не заведен в Intradesk. 

Теперь попробуем авторизоваться под пользователем, который не заведен в Intradesk, но заведен в AD. При первой авторизации, пользователь должен создастся в группе IT (настраивали ранее в Правилах создания пользователей в Intradesk)
 
 
 
 
1. Открыть страницу авторизации. Нажать "Вход через ADFS" (Ваша кнопка авторизации через ADFS может иметь иное название)
 
 

2. Вы будете перенаправлены на экран входа в AD FS, где необходимо ввести домен, имя и пароль пользователя из группы IT, который не заведен в Intradesk, нажать Вход:
 
 

Готово! Авторизация в Intradesk через ADFS прошла успешно. Пользователь автоматически создался с типом "Сотрудник", ролью "Исполнительская" и в группе "IT".
 
 


синхронизация с AD