Интеграция SAML + AD FS
Раздел описывает настройку аутентификации пользователей через Active Directory Federation Services (AD FS) по протоколу SAML 2.0 для коробочной версиии YouGile.
Интеграция позволяет использовать корпоративные доменные учетные записи и централизованно управлять доступом. В YouGile передаются:
- уникальный идентификатор пользователя (NameID)
- имя и фамилия
- доменный логин / UPN
- группа / роль
Пользователи создаются и аутентифицируются во внешнем IdP (AD FS). В YouGile не требуется ручное создание учётных записей.
Требования к окружению
Перед началом проверьте, что выполнены условия:
- развернут AD FS (Windows Server 2016+)
- доступен HTTPS-эндпоинт AD FS:
https://<fqdn>/adfs/ls/ - сервер YouGile доступен по HTTPS. Инструкция по настройке HTTPS
- сертификат AD FS валиден
- версия YouGile поддерживает SAML-аутентификацию (поддержка осуществляется с версии 2.5)
Настройка конфигурации SAML в YouGile
Откройте conf.json и добавьте секцию:
"saml": {
"allowOnlySaml": true,
"entryPoint": "https://adfs.yougile/adfs/ls/",
"issuer": "yougile-box",
"audience": "yougile-box",
"idpCert": "cert",
"wantAssertionsSigned": true,
"wantAuthnResponseSigned": false
},
Где параметры указывают на следующие пункты:
allowOnlySamlв значенииtrueразрешает только SAML-авторизациюentryPointуказывает полный путь до SAML endpoint AD FSissuerидентификатор SPaudienceзначение должно совпадать со значением в настройках клиентаidpCertпубличный сертификат AD FSwantAssertionsSignedтребование подписи assertionwantAuthnResponseSignedподпись всего ответа (опционально)
Создание Relying Party Trust в AD FS
- Откройте AD FS Management
- Перейдите в раздел
Relying Party Trusts - Нажмите Add Relying Party Trust
- Выберите режим Claims aware
- Нажмите Start
Укажите следующие параметры:
- Display name:
YouGile - Relying Party Identifier:
yougile-box - Relying Party Trust Identifier (Audience):
yougile-box
На шаге настройки конечной точки ACS добавьте:
https://your-yourgile-domain/saml/acs
После этого завершите мастер создания доверия.
Настройка Claim Rules (передачи атрибутов)
Далее необходимо настроить правила выдачи атрибутов (Issuance Transform Rules).
Нажмите: Edit Claim Issuance Policy - Add Rule
Выберите шаблон: Send Claims Using a Custom Rule
- Передайте идентификатор пользователя: Rule name:
nameID
c:[Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress
"]
=> issue(
Type = "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier
",
Value = c.Value,
Properties["http://schemas.xmlsoap.org/ws/2005/05/identity/claimproperties/format
"]
= "urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress"
);
Данное правило передаст email пользователя как NameID, уникальный идентификатор учетной записи YouGile.
- Передайте имя пользователя, First Name / Display Name: Rule name:
name
c:[Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name"]
=> issue(
Type = "urn:oid:2.5.4.42",
Value = c.Value
);
Проверка интеграции
- Откройте веб-интерфейс YouGile
- Нажмите Войти через SAML
- Выполните вход через AD FS
- Проверьте возврат в систему
По итогам настройки:
- пользователь создается автоматически
- корректно подставляется имя и фамилия
- корректно передаётся email / NameID