2011-04-14 86 views
0

我研究如何將用戶對域名認證通過abc.com,然後允許他們訪問網站xyz.com的安全區域,而無需登錄的第二時間。跨域認證通過URL

一點閱讀後,下面的解決方案看起來可行:

  1. 用戶登錄到通過普通窗體身份驗證

  2. 成功登錄後,記錄是在創建的網站abc.com包含guid,用戶名和當前日期/時間的共享數據庫。

  3. 通過加密guid生成安全令牌,然後返回到站點xyz.com的重定向,並將安全令牌作爲查詢字符串參數。

  4. 網站xyz.com收到傳入請求,解密令牌,在數據庫中找到匹配的記錄(過去一分鐘過濾),然後在將用戶重定向到abc之前爲相關用戶生成表單身份驗證Cookie .com

用戶現在應該有兩個表單身份驗證Cookie,每個域一個。

這種方法基本上是健全的嗎?你知道有什麼好的參考嗎?

回答

2

該方法雖然對重播攻擊敏感,但仍然有效。爲什麼不使用OpenId?它也可以做不請自來的斷言,這聽起來像你想使用的。

OpenId不需要共享數據庫。

+0

是的 - 我已經發現OpenID的身份驗證和OAuth委派授權更好。謝謝 – 2011-04-27 06:23:13