簡體   English   中英

在沒有Cookie的情況下跨多個域進行單一登錄

[英]single sign on across many domain without cookies

即時通訊使用Visual Studio 2008。

我的要求是在不使用Cookie的情況下跨多個域實施單點登錄。 這可能嗎?

例如,我有3個域(托管在3個不同的系統中)。 www.domain1.com www.domain2.com www.domain3.com

和cookie被禁用。

我使用Cookie實施了單點登錄,如果網站托管在單個系統中,則它可以正常工作。 但是如果禁用了cookie,則無法使用。

我嘗試了所有使所有可能的谷歌搜索,但找不到任何有用的。 請幫忙 ?

我相信Microsoft對其單一登錄有一個竅門,可能可以解決此問題。 我假設要設置會話變量而不是cookie,所以理論是(從內存中)類似:

1-您將一個域指定為認證點,即無論您在何處登錄,都要確保www.domain1.com的會話變量設置為表明用戶已通過身份驗證(我想理想情況下,您可以將其登錄)該域上的頁面,但如果沒有,則可以使用http請求在domain1上設置初始登錄身份驗證來解決此問題。

2-然后,訣竅是在所有其他域(1,2,3,4)頁面中具有一個公共標頭,該頁面首先進行檢查以查看是否在相應域上設置了會話變量,如果沒有,則重定向到domain1,確定用戶是否已登錄-如果是,則獲取登錄詳細信息-重定向回您來自的域(傳遞登錄詳細信息),然后在回到起始域時設置登錄變量。

我們在使用的系統上進行了跨域身份驗證-它是通過​​cookie完成的,並且是一個噩夢-我們研究了重新設計此方法的可能選項,這是從內存來看,似乎是最有效的解決方案常見-請注意,我認為它仍基於cookie,但它也應與會話配合使用。

您應該看看這個時代的Windows Identity FoundationActive Directory聯合 身份驗證 服務 它基於身份元系統和基於聲明的身份模型; 使這些類型的身份/身份驗證和SSO場景更容易。

基於聲明的身份和訪問控制指南

就您而言,您的所有三個站點都將身份驗證服務“外包”到受信任的安全令牌服務(STS)。 如果您將AD域標識公開給Internet,則此STS可以是ADFS,否則可以是自定義WIF實現。 您的網站將未經身份驗證的訪問者重定向到您的STS,后者將向他們提供安全令牌(通常以SAML形式),這些令牌可以被網站接受為身份聲明。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM