Конфигурация SSO c AD FS
Перед настройкой SSO убедитесь, что в config.env параметр APP_URL соответствует текущему домену Пассворка, пример — APP_URL=https://passwork.example.ru
Для примера используются следующие имена серверов:
- Провайдер (IDP) — ad-fs.passwork.local
- Сервер Пассворка (SP) — passwork.example.ru
Открыть — Диспетчер серверов → Средства → Управление AD FS → Отношения доверия проверяющей стороны → Действия:

Поэтапно выполнить действия в — Мастер добавления отношений доверия проверяющей стороны:
- Поддерживающие утверждения;
- Ввод данных о проверяющей стороне вручную;
- Заполнить Отображаемое имя (пример: passwork-sp);
- Пропустить шаг — Настройка сертификата, нажать Далее;
- На шаге Настройка URL-адреса:
- Включить поддержку протокола SAML 2.0 WebSSO;
- Скопировать из Пассворка в — Настройки и пользователи → Настройки SSO — адрес URL ответа;
- Поместить в URL-адрес службы SAML 2.0 SSO проверяющей стороны — https://passwork.example.ru/api/v1/sso/acs
- На шаге Настройка идентификатора:
- Скопировать из Пассворка в — Настройки и пользователи → Настройки SSO — адрес Идентификатора;
- Поместить в Идентификатор отношения доверия проверяющей стороны — https://passwork.example.ru/api/v1/sso/metadata
- Пропустить шаг — Выбрать политику управления доступом, нажать Далее;
- Пропустить шаг — Готовность для добавления отношения доверия, нажать Далее;
Открыть Свойства созданного Отношения доверия проверяющей стороны:

В Свойствах перейти в Конечные точки и выполнить следующие действия:
- Добавить SAML;
- Тип конечной точки — Завершение сеанса SAML;
- Привязка — Redirect;
- Скопировать из Пассворка в — Настройки и пользователи → Настройки SSO — адрес URL выхода;
- Поместить в Доверенный URL-адрес — https://passwork.example.ru/api/v1/sso/sls
- Применить изменения и закрыть Свойства.
В зависимости от нужного вида логина пользователя в Пассворке, вы можете настроить правила обработки так, чтобы формат пользователя мог быть следующим:
- username
Пожалуйста, выберите необходимый формат логина пользователя в Пассворке и выполните настройку.
В Отношения доверия проверяющей стороны встать на созданное доверие (passwork-sp) и открыть — Изменить политику подачи запросов:

Отредактировать созданное правило с именем AttributeStatement:
- Передавать в SP (Пассворк) Display-Name атрибут:
- Атрибут LDAP — Display-Name;
- Тип исходящего утверждения — прописать displayName;
- Передавать в SP (Пассворк) E-mail-Address атрибут:
- Атрибут LDAP — E-Mail-Addresses;
- Тип исходящего утверждения — прописать emailAddress;

Авторизоваться в веб-интерфейсе Пассворка, перейти в — Настройки и пользователи → Настройки SSO и заполнить атрибуты сопоставления:
- Атрибут электронной почты — emailAddress;
- Атрибут полного имени — displayName.
Открыть Управление AD FS → встать на директорию AD FS → Изменить свойства службы федерации:

Скопировать адрес — Идентификатор службы федерации → http://ad-fs.passwork.local/adfs/services/trust:

Открыть — Настройки и пользователи → Настройки SSO и заполнить значения:
- Идентификатор (Entity ID) — http://ad-fs.passwork.local/adfs/services/trust
- Url-адрес входа — https://ad-fs.passwork.local/adfs/ls
- Url-адрес выхода — https://ad-fs.passwork.local/adfs/ls/?wa=wsignout1.0
Открыть и экспортировать сгенерированный SSL сертификат в base64 формате — Управление AD FS → Служба → Сертификаты → Для подписи маркера:

Экспортированный SSL сертификат открыть с помощью Блокнота, скопировать и поместить в соответствующее поле — Настройки и пользователи → Настройки SSO.
Поместить в JSON формате следующее содержимое:
Заменить в URL-адресах домен passwork.example.ru на домен вашего сервера Пассворка.
Открыть окно авторизации в веб-интерфейсе Пассворка и выполнить вход через SSO для проверки корректной настройки:
