因此,此處爲設置。我有一個STS提供程序和2個ASP.NET MVC站點兩個信任相同的STS提供程序。用戶來到站點A並被重定向到STS提供者被動登錄,認證正確,並且按照預期被重定向回站點「A」。這一切都很好。我可以看到在代碼中的令牌和身份的網站「A」使用下列內容:如何使用WIF和STS提供商從站點A獲取站點B上的SSO
IClaimsPrincipal claimsPrincipal = Thread.CurrentPrincipal as IClaimsPrincipal;
IClaimsIdentity claimsIdentity = (IClaimsIdentity)claimsPrincipal.Identity;
現在有現場「A」到網站「B」的鏈接truts的相同 STS provder。問題是,當我導航到網站'B'時,索賠信息不存在,並且用戶未被自動驗證。按照STS和WIF文檔下面應該發生:
「流程開始像往常一樣,用戶的B內設有一個請求一個頁面,被重定向到STS以獲得令牌然而,這一點。時間用戶已經與 的STS網站,因爲存在由STS 餅乾表示的活動會話驗證。這意味着爲STS頁面的請求直接導致的 的SecurityTokenService髮卡序列執行,而不向用戶示出 任何用於憑證收集的UI 令牌默認發出 並轉發根據通常的順序編輯B。從 時刻,用戶點擊B鏈接,瀏覽器顯示B請求的頁面 ,只有 瀏覽器中的地址欄閃爍一些將泄露一些身份驗證 。這幾乎是單點登錄(SSO)的含義: 用戶只經歷了一次登錄的體驗,而從 系統上的那一刻能夠訪問進一步的可靠方 而不提示用戶輸入憑據「
有人知道STS提供商,網站A或網站B爲了使這項工作正確發生什麼需要發生嗎?記住STS和網站'A'工作正常;它只是網站'B'沒有獲得SSO的能力。
Thanks!
那麼當用戶導航到B時會發生什麼? –