#310: Не работает вход через SSO

Отредактирована: 6 дней назад

При входе через SSO Пассворк перенаправляет пользователя к поставщику удостоверений — например, Keycloak, AD FS или Microsoft Entra ID. После проверки учётных данных поставщик возвращает ответ, по которому Пассворк определяет пользователя и разрешает вход.

Проблема может возникнуть при перенаправлении, проверке учётной записи или обработке ответа.

Нет возможности войти через SSO

Откройте Настройки и пользователи → Настройки SSO и проверьте, включено ли SSO. Настройки SSO доступны в рамках расширенной лицензии. Настройки SSO.

Если проблема возникает только у одного сотрудника, откройте Управление пользователями, выберите сотрудника и перейдите в Аутентификация. Проверьте, разрешена ли Аутентификация через SSO. Методы аутентификации пользователя.

После нажатия «Войти через SSO» страница поставщика не открывается

Проверьте URL-адрес входа в блоке Поставщик удостоверений → Пассворк. Адрес должен соответствовать SAML-настройкам выбранного поставщика.

Дополнительно проверьте:

  • Имя сервера поставщика удостоверений разрешается на компьютере пользователя
  • Адрес доступен из сети пользователя
  • Браузер доверяет HTTPS-сертификату
  • Прокси и межсетевой экран не блокируют перенаправление

Если ошибка возникает до открытия страницы поставщика, проверьте APP_URL в config.env. Значение должно соответствовать адресу Пассворка, включая https://. Параметры SSO, Требования к сетевому взаимодействию.

Поставщик удостоверений отклоняет вход

Если сообщение об ошибке отображается на странице Keycloak, AD FS или другого поставщика, проверьте учётную запись и правила доступа на стороне поставщика:

  • Учётная запись активна
  • Пользователю разрешён доступ к приложению Пассворка
  • Политики доступа не запрещают вход с используемого устройства или из текущей сети

Администратору поставщика следует найти попытку входа в журнале по пользователю и времени ошибки. Изменение пароля или прав на сейфы в Пассворке не устраняет отказ на стороне поставщика.

Проверка у поставщика проходит, но после возврата Пассворк показывает ошибку

Сверьте параметры приложения на обеих сторонах.

В Настройки SSO → Пассворк → Поставщик удостоверений проверьте значения, перенесённые в приложение поставщика:

  • Идентификатор (Entity ID) — Идентификатор Пассворка
  • URL ответа — Адрес приёма SAML-ответа
  • URL выхода — Адрес обработки единого выхода

Копируйте значения из действующей установки. Проверьте протокол, домен, порт и путь. Особенно внимательно следует проверить адреса после смены домена или перехода с Пассворка 6 на Пассворк 7. Пример сопоставления адресов.

Для определения причины откройте журналы Пассворка и поставщика за время неудачного входа. Если журнал содержит следующие сообщения:

  • Signature validation failed — Не пройдена проверка подписи: Проверьте сертификат подписи поставщика, сохранённый в Пассворке, особенно после замены сертификата
  • sp_acs_url_invalid или sp_sls_url_invalid — Некорректные адреса SAML: Проверьте APP_URL и значения адресов ответа и выхода
  • InvalidNameIDPolicy — Ошибка идентификатора пользователя: Проверьте настройку NameID и наличие значения атрибута, из которого поставщик формирует идентификатор

Примеры ошибок SSO.

Для проверки подписи используется сертификат подписи SAML-сообщений поставщика. Сертификат HTTPS-сайта может отличаться. Например, в AD FS используется сертификат Для подписи маркера. Сертификат AD FS.

Вход работает у других сотрудников, но не у конкретного пользователя

Сравните идентификатор, передаваемый поставщиком, с логином сотрудника в Пассворке. Значения ivan.petrov и ivan.petrov@example.local различаются. Формат зависит от настройки NameID на стороне поставщика. Формат идентификатора пользователя.

В Пассворке проверьте:

  • Пользователь не заблокирован
  • Регистрация подтверждена
  • Пользователю разрешена аутентификация через SSO
  • Если включена настройка Проверять ограничения LDAP при аутентификации через SSO, сотрудник соответствует ограничениям LDAP

Не изменяйте правила формирования логина для всех сотрудников ради одной учётной записи без проверки последствий для существующих пользователей.

SSO запрашивает логин и пароль вместо автоматического входа

Запрос пароля на странице поставщика не обязательно означает неисправность SSO. Автоматический вход через Kerberos/SPNEGO или WIA зависит от настроек поставщика, домена, устройства и браузера.

Если после ручного ввода учётных данных Пассворк открывается, проверьте условия бесшовной аутентификации на стороне поставщика и клиентского устройства. Пассворк принимает результат SAML-аутентификации, а решение об автоматическом входе принимает поставщик. Бесшовный вход через Kerberos/SPNEGO.

После SSO запрашивается мастер-пароль

При клиентском шифровании успешный вход через SSO не заменяет ввод мастер-пароля для доступа к зашифрованным данным. Ошибку мастер-пароля следует разбирать отдельно от подключения SSO. Аутентификация и мастер-пароль.

Если устранить проблему не удалось

Для обращения в техническую поддержку подготовьте:

  • Версию Пассворка, название и версию поставщика удостоверений
  • Этап отказа — переход к поставщику, проверка учётной записи или возврат в Пассворк
  • Масштаб проблемы — один сотрудник или все пользователи SSO
  • Значения Entity ID и адресов ответа на обеих сторонах
  • Формат идентификатора пользователя, передаваемого поставщиком
  • Сведения о недавней смене домена, сертификата или настроек SSO
  • Скриншоты настроек и отладочную информацию без паролей, токенов, файлов cookie и закрытых ключей

Более подробно: