Авторизация пользователей по SSO осуществляется посредством сервиса ADFS. Взаимодействие между ADFS и Yva.ai осуществляется посредством Relying Party Trust (RPT) через SAML2 протокол. Скриншоты в данной инструкции сделаны в MS Windows Server 2012, однако в иных версиях ОС последовательность действий схожа.

Необходимые предварительные действия

Перед тем как перейти к настройке авторизаций через ADFS, необходимо убедиться, что все необходимое подготовлено. В рамках данного действия потребуется:

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

Конфигурирование RPT

Взаимодействие между ADFS и Yva.ai осуществляется посредством Relying Party Trust (RPT).

image19_ru

Выберите каталог «Relying Party Trusts» в оснастке ADFS Management, и добавьте «Standard Relying Party Trust» из меню «Actions»Запустится мастер настройки нового доверенного приложения. В первом окне нажмите «Start». 

image9_ru

На следующем шаге «Select Data Source» выберите вариант «Enter Data About the Party Manually».

image20_ru

Далее, в поле «Display name» введите название приложения. Здесь можно указать любое название, которое поможет вам в будущем идентифицировать приложение, например, Yva.

image10_ru

На следующем шаге активируйте переключатель «AD FS profile».

image1_ru

В следующем окне будет предложено изменить настройки сертификата. Оставьте всё по умолчанию.

image6_ru

На следующем шаге активируйте опцию «Enable Support for the SAML 2.0 WebSSO protocol». В поле URL введите адрес платформы, добавив к нему «/sso/saml2/consume».

https://адрес_вашей_yva/sso/saml2/consume - для On-Premise и Private Cloud
https://eeu.yva.app/sso/saml2/consume - для SaaS
CODE
image17_ru

Далее необходимо указать идентификатор, представляющий собой всё тот же URL платформы.  (Обратите внимание, что в конце / должен отсутствовать)

https://адрес_вашей_yva - для On-Premise и Private Cloud
https://eeu.yva.app - для SaaS
CODE
photo_2021-08-16_13-23-27

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

image8_ru

Затем необходимо активировать чек-бокс «Permit all users to access this relying party» для того, чтобы активировать приложение для пользователей.

image4_ru

На следующих двух экранах, мастер предложит проверить все сделанные настройки. Нажмите «Close» в последнем интерфейсе, чтобы выйти из мастера настройки и открыть редактор правил.

image15_ru
image18_ru

Создание правил обработки запросов (Claim rules)

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

image5_ru

Чтобы создать новое правило, нажмите «Add Rule». Для обеспечения взаимодействия Yva.ai с ADFS нужно создать правило из шаблона, который называется «Send LDAP Attributes as Claims». Для этого достаточно выбрать «Send LDAP Attributes as Claims» из выпадающего списка и нажать «Next».

image3_ru

В открывшемся окне, придумайте название для правила, а так же выберите «Active Directory» в качестве значения параметра «Attribute store», и  произведите следующие настройки:

В столбце «LDAP Attribute», выберите «E-Mail Addresses».
В столбце «Outgoing Claim Type», выберите «Name ID».
CODE

Нажмите «Finish» для сохранения правила.

image21_ru

Для обеспечения взаимодействия Yva.ai с ADFS требуется создать ещё одно правило. Снова нажмите «Add Rule», и в этот раз выберите шаблон «Transform an Incoming Claim».

image13_ru

На следующем шаге:

Выберите «Issuer Name» в выпадающем списке «Incoming Claim Type».
Для «Outgoing Claim Type», выберите «Name ID».
Для «Outgoing Name ID Format», выберите «Persistent Identifier».
CODE

Переключатель установите в положение «Pass through all claim values».

image11_ru

Нажмите «Finish», а затем «OK» для сохранения правил.

Настройка приложения

После создания приложения и правил требуется дополнительно внести ряд изменений в конфигурацию RPT. Для доступа к тонким настройкам, выберите «Properties» из меню «Actions», выбрав RPT. На вкладке «Advanced»убедитесь, что в качестве алгоритма шифрования выбран «SHA-256».

image12_ru

На вкладке «Endpoints» щелкните «add SAML». В качестве «Endpoint type» выберите «SAML Logout». В выпадающем списке «Binding», выберите «POST». В качестве «Trusted URL» укажите адрес платформы, добавив к нему /sso/saml2/consume.

https://адрес_вашей_yva/sso/saml2/consume - для On-Premise и Private Cloud
https://eeu.yva.app/sso/saml2/consume - для SaaS
CODE
image14_ru

Получение сертификата x.509

Для настройки аутентификации также потребуется публичный сертификат ADFS. Для его получения нужно из оснастки ADFS перейти в «Service - Certificates». Выбрать «Token-signing» сертификат, дважды щелкнуть по нему и перейти во вкладку «Details». Нажать «Copy To File…».

image2_ru

В открывшемся окне нажать «Next», выбрать «Base-64 encoded X.509 (.CER)» нажать «Next» и сохранить сертификат. Открыть сохраненный файл при помощи блокнота и скопировать содержимое между «-----BEGIN CERTIFICATE-----» и «-----END CERTIFICATE-----».

Этот сертификат потребуется в процессе настройки аутентификации со стороны платформы.

Настройка платформы

В первую очередь необходимо убедиться, что SAML2 аутентификация позволена в административной части платформы на вкладке «General settings - Single sign-on». Для этого чек-бокс «Allow SAML2 login» должен быть включен.

04_ru

Далее, для того, чтобы внести настройки на стороне платформы, необходимо перейти в раздел «Администрирование - Настройка единого входа» в рабочем пространстве (dashboard) вашей Yva.ai.

Примечание: для доступа к данному разделу потребуется учетная запись с ролью администратор

Далее необходимо заполнить предложенные поля.

В качестве поставщика удостоверений выбираем Microsoft Active Directory.

URL единого входа - адрес, по которому ADFS ожидает подключения для прохождения SSO-аутентификации. Присваивается в процессе конфигурации ADFS на Windows-сервере. По умолчанию, параметр формируется из адреса сервера с добавлением adfs/ls (например, https://company.com/adfs/ls). 

URL издателя - адрес, с которого будет приходить запрос на авторизацию. Совпадает с параметром URL платформы.

https://адрес_вашей_yva/ - для On-Premises и Private Cloud
https://eeu.yva.app/ - для SaaS
CODE

Список доменов - адреса которых могут участвовать в sso. Совпадает со списком доменов почтового сервера MS Exchange в компании.

Сертификат X.509 - сертификат, требующийся для аутентификации приложения на сервере с ADFS. Представляет собой публичную часть ключа шифрования, применённого на сервере ADFS в формате X.509.

sso1_ru