我們正在建立一個ADFS(2.0),負責爲幾個面向客戶的系統驗證用戶身份。認證機制外包給外部合作伙伴,該合作伙伴可以訪問多個認證提供商。帶有外部認證服務提供商的ADFS單點登錄
我們最近遇到了以下方案:
- 用戶試圖訪問面向客戶的系統A和被重定向到ADFS進行身份驗證。
- ADFS將用戶重定向到身份驗證夥伴,並在其中成功進行身份驗證。
- 用戶通過其身份驗證令牌返回到ADFS。
- ADFS將用戶發送回系統A.他現在有一個會話。
- 用戶嘗試訪問系統B,其中他尚未對 進行身份驗證,並將其發送到ADFS。
這是ADFS從我們預期的行爲中逃逸出來的地方。 ADFS不會識別用戶,而是通過有效的身份驗證令牌將其透明地發送回系統B,ADFS會將其發送給我們的身份驗證合作伙伴進行重新驗證。
這完全破壞了我們希望爲客戶使用系統A和B的SSO功能,但我們還沒有找到一種方法讓ADFS建立用戶會話並在訪問第二個系統期間重新使用該會話。
有沒有人解決過這個問題?
ADFS只在完全負責身份驗證時才提供單點登錄功能嗎?
感謝您的回答,但不幸的是沒有解決問題。我認爲不同之處在於,在我們的場景中,AD FS實際上並未進行身份驗證,而是從另一個IDP中繼身份驗證。 – Henrik
這是一個典型的場景,ADFS充當聯合提供程序(FP)。無論如何,回到我的答案,我建議你檢查一下SAML認證請求。 SAML示蹤劑,並確保屬性ForceAuthn不存在於其中。 – UncleZen