Мы создаем ADFS (2.0), который будет отвечать за аутентификацию пользователей за несколько обращенных к пользователю систем. Механизм аутентификации предоставляется внешнему партнеру, который предлагает доступ к нескольким провайдерам проверки подлинности.Единый вход ADFS с поставщиком внешней аутентификации
Недавно мы столкнулись с следующим сценарием:
- пользователя пытается получить доступ к клиентской стороне системы A и перенаправляется на ADFS для проверки подлинности.
- ADFS перенаправляет пользователя к партнеру по проверке подлинности, где он аутентифицируется успешно.
- Пользователь отправляется обратно в ADFS с его токеном аутентификации.
- ADFS отправляет пользователя обратно в систему A. Теперь у него есть сеанс.
- Пользователь пытается получить доступ к системе B, в которой он еще не аутентифицирован и отправлен в ADFS.
Именно здесь ADFS уклоняется от ожидаемого поведения. Вместо того, чтобы распознавать пользователя и прозрачно отправлять его обратно в систему B с помощью действительного токена аутентификации, ADFS отправляет его нашему партнеру по проверке подлинности для повторной аутентификации.
Это полностью разрушает функциональность SSO, которую мы хотели использовать для клиентов, использующих системы A и B, но мы не нашли способ установить учетную запись ADFS и повторно использовать ее во время доступа ко второй системе.
Кто-нибудь решил эту проблему?
Может ли ADFS предоставлять только единую регистрацию, если она полностью отвечает за аутентификацию?
Спасибо за ответ, но он, к сожалению, не решил проблему. Я думаю, что разница в том, что в нашем сценарии AD FS фактически не выполняет аутентификацию, а ретранслирует аутентификацию от другого IDP. – Henrik
Это типичный сценарий, в котором ADFS действует как поставщик федерации (FP). В любом случае, возвращаясь к моему ответу, я предлагаю вам проверить запрос аутентификации SAML, например. SAML, и убедитесь, что атрибут ForceAuthn в нем отсутствует. – UncleZen