Настройка SSO (OAuth 2.0) через AD FS
Система UnSpot может взаимодействовать с Active Directory Federation Service (ADFS) через SSO (Single Sign-On) для обеспечения автоматической аутентификации пользователей.
Взаимодействие между системой UnSpot и ADFS через SSO обеспечивает удобство использования для пользователей, так как им не нужно вводить учетные данные каждый раз при доступе к ресурсам UnSpot, и повышает безопасность, обеспечивая аутентификацию на основе надежной идентификационной системы, такой как Active Directory.
1. Настройка Active Directory Federation Services (AD FS)
Создание приложения компании в AD FS
- Перейдите в приложение AD FS и выберете папку Группы приложений, в боковом меню Действия > Добавить группу приложений
- Введите Имя группы и выберите в Шаблоне Веб-браузер, подключающийся к веб-приложению (подключение к сайту) и нажмите Далее
- Сохраните у себя появившийся идентификатор клиента (генерируется автоматически).
- Добавьте URL https://auth.unspot.ru/api/oauth2/verify и нажмите Добавить, чтобы он появился в поле ниже и нажмите кнопку Далее
- Выберите политику управления доступом: Разрешение для каждого и нажмите Далее
- Проверьте Сводку и нажмите Далее, после чего ваша Группа приложений успешно создалась. Закройте и вернитесь на окно с Группами приложений
Создание правила
Следующим шагом нужно создать правило для определения информации, которая будет содержаться в токене:
- Выберете созданную группу приложений и в правом меню нажмите Свойства
- В окне Приложения выберите Веб-приложение > Изменить
- Выберите вкладку Разрешения клиента и поставьте или проверьте галочку напротив openid
- Во вкладке Правило преобразования выдачи > Добавить правило, далее выберите тип правила из шаблонов Отправка атрибутов LDAP как утверждений и нажмите Далее
- Введите Название правила, выберите в хранилище атрибутов Active Directory, сопоставьте правильно атрибуты (см.ниже), нажмите Готово и примените все изменения.
🔹 Сопоставление атрибутов:
Для успешного переноса пользователя со всеми его данными из AD FS в систему UnSpot, требуется настроить сопоставления.
Нужно сопоставить атрибуты LDAP (левая колонка) с Типами исходящих утверждений (правая колонка). Последняя колонка здесь дана для обозначения, что хранится в этих полях.
В колонке LDAP выберете нужные атрибуты в всплывающем окне, а в Типах исходящих утверждений самостоятельно впишите значения, которые указаны в таблице. Тип исходящего утверждения всегда начинается с символа нижнего регистра.

Важно: Чтобы пользователь был создан через AD FS обязательно должен присутствовать email. При отсутствии имени и/или фамилии пустые поля будут заполнены информацией из email.
2. Настройка Single Sign-On (SSO) в UnSpot
Подключение OAuth 2.0 в UnSpot

Если интеграция с AD FS настроена, то при входе в UnSpot добавится возможность входа c помощью on-premises AD аккаунтов.
Для подключения интеграции:
- Перейдите на сайте UnSpot в раздел Администрирование → Интеграции → Способы входа / SSO
- На странице найдите Дополнительные способы входа и нажмите Подключить к OAuth 2.0
Важно: Чтобы заполнить данные, такие как LoginUri или JWKs, вы можете воспользоваться ссылкой, заменив <название вашего сервера ADFS>: https://<название вашего сервера ADFS>/adfs/.well-known/openid-configuration

Заполните:
clientId– идентификатор клиента, который вы сохранили из AD FSLoginUri– введите ссылку- Пример:
https://<название вашего сервера ADFS>/adfs/oauth2/authorize
- Пример:
Тип JWKs– проверка подлинности токенов доступа- если вы хотите вставить ссылку > выберите
Url, - если хотите вставить ключи вручную > выберите
Keys
- если вы хотите вставить ссылку > выберите
JWKs– в зависимости от выбранного типа JWK вставьте нижеуказанную ссылку или скопируйте ключи, перейдя по этой ссылке- Пример:
https://<название вашего сервера ADFS>/adfs/discovery/keys
- Пример:
Название– будет отображаться на кнопке подключение при входе в приложениеИконка– будет отображаться на кнопке подключение при входе в приложение. Формат изображения: png или jpg, размер до 5 МБ.Тип ответа– Id token. Для интеграции с AD FS выбрите этот тип ответа. AD FS возвращает JWT токен, в котором содержится передаваемые данные пользователя (имя, фамилия, почта, и другие передаваемые данные), которые могут использоваться для создания аккаунта в системе.
Нажмите Сохранить > OAuth 2.0 успешно подключен.
Для отключения OAuth 2.0 нажмите на кнопку Отключить
Важно: Для автоматического входа сотрудников в систему UnSpot и импорта данных из AD FS, необходимо добавить корпоративный домен компании в разделе Администрирование → Интеграции → Способы входа / SSO → OpenID Connect

Тип ответа Code и срок действия авторизации
Для AD FS в поле «Тип ответа» рекомендован вариант Id token (по умолчанию). Если ваша конфигурация требует потока authorization code, выберите Code — форма дополнится полями:
- Client secret (обязательное) — секрет клиента из AD FS. При последующем редактировании подключения поле можно оставить пустым — сохранённый секрет не изменится.
- TokenURI (обязательное) — адрес token endpoint вашего сервера.
- Scope (необязательное) — например, openid.
- Тумблер «Применять срок действия авторизации как в SSO» — сессия UnSpot будет жить столько же, сколько выданный провайдером токен. Если тумблер выключен, действуют TTL из блока «Время действия авторизации» на этой же вкладке.
Изменение и отключение подключения
Настроенное подключение отображается карточкой в секции «Дополнительные способы входа». Кнопка «Изменить» открывает форму с сохранёнными параметрами (Client secret показан пустым — см. выше), «Отключить» — убирает кнопку входа через это подключение со страницы авторизации. Уже выполненные входы сотрудников при отключении не разрываются до истечения их сессий.
Вход пользователя через SSO
При подключении OAuth 2.0 как вариант входа будет добавлен ваш способ авторизации.
Важно: В случае если у вас откроется предупреждение от браузера, вам нужно перейти на сайт несмотря на предупреждение. Вид предупреждений будет варьироваться в зависимости от браузера.
- В предупреждающем окне перейдите в дополнительные параметры и перейдите по ссылке на сайт.
- В открывшемся окне введите Имя пользователя и Пароль (данные AD FS аккаунта) и нажмите кнопку Вход.