Перейти к основному содержимому

AD FS IdP

Введение​

Единый вход (Single Sign-on, SSO) — это технология, позволяющая пользователям входить в систему только один раз и затем получать доступ к нескольким приложениям и сервисам без повторной аутентификации.

Если веб-портал состоит из нескольких крупных независимых разделов (форум, чат, блоги и т. д.), пользователь может пройти аутентификацию в одном из сервисов и автоматически получить доступ ко всем остальным, не вводя учетные данные несколько раз.

Единый вход всегда обеспечивается совместной работой двух приложений: поставщика учетных записей и поставщика сервиса (их также называют «IdP» и «SP»). ONLYOFFICE SSO реализует только SP. В роли IdP могут выступать самые разные поставщики, но в этой статье рассматривается реализация Active Directory Federation Services (AD FS).

Подготовка AD FS для настройки SSO​

  1. Установите последнюю версию AD DS (Active Directory Domain Service) со всеми официальными обновлениями и исправлениями.

  2. Установите последнюю версию AD FS со всеми официальными обновлениями и исправлениями.

    примечание

    Для развертывания AD FS с нуля можно воспользоваться следующей инструкцией.

  3. Проверьте, что ссылка на файл метаданных AD FS доступна публично. Для этого:

    1. В консоли Диспетчер сервера откройте Tools (Инструменты) -> AD FS Management (Управление AD FS),

    2. Перейдите в AD FS \ Service \ Endpoints (AD FS \ Служба \ Конечные точки),

    3. Найдите в таблице строку с типом Federation Metadata (Метаданные федерации). Ссылка на файл метаданных IdP формируется по следующей схеме:

      https://{ad-fs-domain}/{path-to-FederationMetadata.xml}

      Можно также воспользоваться следующей командой PowerShell:

      PS C:\Users\Administrator> (Get-ADFSEndpoint | Where {$_.Protocol -eq "FederationMetadata" -or $_.Protocol -eq "Federation Metadata"}).FullUrl.ToString()

      В результате вы должны получить ссылку следующего вида:

      https://myportal-address.com/FederationMetadata/2007-06/FederationMetadata.xml
    4. Чтобы проверить, что AD FS запущен корректно, откройте полученную ссылку в браузере. Должен отобразиться или скачаться XML-файл.

      Как настроить ONLYOFFICE SP и AD FS IdP

      Скопируйте ссылку на XML-файл метаданных: она потребуется на следующем шаге. Убедитесь, что вы вошли в ONLYOFFICE Apps как администратор. Откройте страницу Настройки -> Интеграция -> Единый вход.

Настройка ONLYOFFICE SP​

  1. Как настроить ONLYOFFICE SP и AD FS IdP

    Включите SSO с помощью переключателя Включить аутентификацию с помощью технологии единого входа (SSO) и вставьте ссылку, скопированную из AD FS, в поле URL-адрес XML-файла метаданных.

    Как настроить ONLYOFFICE SP и AD FS IdP

  2. Нажмите кнопку со стрелкой вверх, чтобы загрузить метаданные IdP. Форма Настройки поставщика сервиса ONLYOFFICE будет автоматически заполнена данными из AD FS IdP.

    Как настроить ONLYOFFICE SP и AD FS IdP

  3. В селекторе Формат NameID выберите следующее значение: urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress.

    Как настроить ONLYOFFICE SP и AD FS IdP

  4. В разделе Публичные сертификаты IdP \ Расширенные настройки снимите флажок Проверять подпись ответов выхода, так как AD FS не требует этого по умолчанию.

    Как настроить ONLYOFFICE SP и AD FS IdP

  5. Теперь необходимо добавить сертификаты в раздел Сертификаты поставщика сервиса. Можно сгенерировать самоподписанные сертификаты или добавить любые другие.

    Важно

    В окне Новый сертификат переключите селектор Использовать для на вариант Подпись и шифрование, так как AD FS IdP автоматически настроен на проверку цифровой подписи и шифрование данных.

    Как настроить ONLYOFFICE SP и AD FS IdP

  6. В разделе Сертификаты поставщика сервиса \ Расширенные настройки снимите флажок Подписывать ответы на запросы выхода, так как AD FS не требует этого по умолчанию.

    Как настроить ONLYOFFICE SP и AD FS IdP

  7. Форму Сопоставление атрибутов настраивать не нужно, так как эти параметры мы зададим позже в AD FS IdP.

  8. Нажмите кнопку Сохранить.

  9. Должен открыться раздел Метаданные поставщика сервиса ONLYOFFICE.

    Как настроить ONLYOFFICE SP и AD FS IdP

  10. Проверьте, что настройки доступны публично, нажав кнопку Загрузить XML-файл метаданных поставщика сервиса. Должно отобразиться содержимое XML-файла.

    Как настроить ONLYOFFICE SP и AD FS IdP

  11. Скопируйте ссылку на файл метаданных ONLYOFFICE SP из поля Идентификатор сущности поставщика сервиса (ссылка на XML-файл метаданных) и перейдите на машину, где установлен AD FS.

    Как настроить ONLYOFFICE SP и AD FS IdP

Настройка AD FS IdP​

  1. В консоли Диспетчер сервера откройте Tools (Инструменты) -> AD FS Management (Управление AD FS),

    Как настроить ONLYOFFICE SP и AD FS IdP

  2. В панели AD FS Management (Управление AD FS) выберите Trust Relationships > Relying Party Trusts (Отношения доверия > Отношения доверия проверяющей стороны). Выберите команду Add Relying Party Trust... (Добавить отношение доверия проверяющей стороны...) справа. Откроется Add Relying Party Trust Wizard (Мастер добавления отношений доверия проверяющей стороны),

    Как настроить ONLYOFFICE SP и AD FS IdP

  3. В окне мастера выберите переключатель Import data about the relying party published online or on a local network (Импорт данных о проверяющей стороне, опубликованных в Интернете или локальной сети), вставьте скопированную ранее ссылку на файл метаданных ONLYOFFICE SP в поле Federation metadata address (host name or URL) (Адрес метаданных федерации (имя узла или URL-адрес)) и нажмите кнопку Next (Далее),

    Как настроить ONLYOFFICE SP и AD FS IdP

  4. В поле Display name (Отображаемое имя) укажите любое имя и нажмите кнопку Next (Далее),

    Как настроить ONLYOFFICE SP и AD FS IdP

  5. Выберите вариант Permit everyone (Разрешить всем) и нажмите кнопку Next (Далее),

    Как настроить ONLYOFFICE SP и AD FS IdP

  6. Проверьте полученные настройки и нажмите кнопку Next (Далее),

    Как настроить ONLYOFFICE SP и AD FS IdP

  7. Оставьте вариант, выбранный по умолчанию, без изменений и нажмите кнопку Close (Закрыть),

    Как настроить ONLYOFFICE SP и AD FS IdP

  8. Откроется новое окно. На вкладке Edit Claim Issuance Policy нажмите кнопку Add Rule... (Добавить правило...),

    Как настроить ONLYOFFICE SP и AD FS IdP

  9. Выберите вариант Send LDAP Attributes as Claims (Отправка атрибутов LDAP как утверждений) из списка Claim rule template (Шаблон правила утверждения) и нажмите кнопку Next (Далее),

    Как настроить ONLYOFFICE SP и AD FS IdP

  10. Введите любое имя в поле Claim rule name (Имя правила утверждения). Выберите вариант Active Directory из списка Attribute store (Хранилище атрибутов) и заполните форму Mapping of LDAP attributes to outgoing claim types (Сопоставление атрибутов LDAP типам исходящих утверждений) согласно таблице ниже. Когда все будет готово, нажмите Finish (Завершить).

    LDAP Attribute (Атрибут LDAP)Outgoing Claim Type (Тип исходящего утверждения)
    Given-NamegivenName
    Surnamesn
    E-Mail-Addressesmail

    Как настроить ONLYOFFICE SP и AD FS IdP

  11. В окне Edit Claim Rules (Изменить правила утверждений) снова нажмите кнопку Add Rule... (Добавить правило...), выберите вариант Transform an Incoming Claim (Преобразование входящего утверждения) из списка Claim rule template (Шаблон правила утверждения) и нажмите кнопку Next (Далее),

    Как настроить ONLYOFFICE SP и AD FS IdP

  12. Введите любое имя в поле Claim rule name (Имя правила утверждения) и выберите следующие значения из списков:

    • Incoming claim type (Тип входящего утверждения): mail,
    • Outgoing claim type (Тип исходящего утверждения): Name ID,
    • Outgoing name ID format (Формат ИД исходящего имени): Email

    Как настроить ONLYOFFICE SP и AD FS IdP

    Когда все будет готово, нажмите кнопку Finish (Завершить).

  13. Если выход из AD FS не работает, рекомендуется добавить Custom Claim Rule (настраиваемое правило утверждения), заменив {portal-domain} на домен своего SP, а {ad-fs-domain} на домен IdP:

    c:[Type == "mail"]
    => issue(Type = "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier", Issuer = c.Issuer, OriginalIssuer = c.OriginalIssuer, Value = c.Value, ValueType = c.ValueType, Properties["http://schemas.xmlsoap.org/ws/2005/05/identity/claimproperties/format"] = "urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress", Properties["http://schemas.xmlsoap.org/ws/2005/05/identity/claimproperties/namequalifier"] = "http://{ad-fs-domain}/adfs/services/trust", Properties["http://schemas.xmlsoap.org/ws/2005/05/identity/claimproperties/spnamequalifier"] = "https://{portal-domain}/sso/metadata");

    Как настроить ONLYOFFICE SP и AD FS IdP

  14. Нажмите кнопку OK,

  15. Откройте свойства созданной проверяющей стороны и перейдите на вкладку Advanced (Дополнительные параметры),

    Выберите вариант SHA-1 в списке Secure hash algorithm (Алгоритм SHA).

    Как настроить ONLYOFFICE SP и AD FS IdP