Конфигурация SSO c ADFS
В инструкции, в качестве примера, используется имя сервера с AD FS ssotest.passwork.org и имя сервера Пассворка passwork.passwork.org
Откройте Управление AD FS и проверьте настройки, кликнув Изменить свойства службы федерации.
Убедитесь, что поля на вкладке Общие соответствуют именам в DNS-записи и имени в сертификате. Адрес в поле Идентификатор службы федерации также будет использоваться при настройке SSO SAML 2.0 на стороне Passwork.
В Управление AD FS откройте Сертификаты, выберите сертификат из Для подписи маркера и экспортируйте его в base64. В будущем содержимое необходимо будет вставить в настройки SSO.
Выберите Отношения доверия проверяющей стороны, кликните Добавить отношение доверия проверяющей стороны.
Выполните следующие действия:
- «Поддерживающие утверждения».
- «Ввод данных о проверяющей стороне вручную».
- Укажите отображаемое имя.
- В «Настройка сертификата» нажмите Далее.
- Выберите «Включить поддержку протокола SAML 2.0 Web SSO» и добавьте «URL проверяющей стороны» — https://passwork.passwork.org/sso/acs.
- Добавьте https://passwork.passwork.org/sso/metadata в «Идентификатор отношения доверия проверяющей стороны» и нажмите Добавить.
- В «Выбрать политику управления доступом» нажмите Далее.
- В «Готовность для добавления отношения доверия» нажмите Далее.
- Нажмите Закрыть.
Отройте Свойства вашего отношения доверия проверяющей стороны, выберите Конечные точки, кликните Добавить SAML, выберите Завершение сеанса SAML в Тип конечной точки и введите https://passwork.passwork.org/sso/sls в Доверенный URL адрес.
Перейдите на Отношения доверия проверяющей стороны и выберите Изменить политику подачи запросов для созданного отношения доверия. Добавьте правило Отправка атрибутов LDAP как утверждение. Выберите атрибут LDAP из хранилища атрибутов, содержащий User Principal Name. Сопоставьте его с типом исходящего утверждения UPN.
Создайте второе правило Преобразование входящего утверждения. Настройте входящее утверждение UPN на тип исходящего утверждения Name ID.
Укажите необходимые данные и в поле сертификата вставьте содержимое файла сертификата, который вы экспортировали в начале.
Добавление файла sso.phpизменяет поведение SSO к тому, которое требуется для работы с AD FS
Создайте файл: <path-to-passwork>/app/config/sso.php
Поместите в созданный файл следующее содержимое.
На этом установка завершена. Возможно, вам потребуется перезапустить сервер или службу AD FS.
Чтобы исключить ошибки, связанные с сертификатами, можно воспользоваться командами PowerShell.