我正在嘗試像Google一樣進行登錄,其中包括跨域身份驗證。當登錄到google.com時,您將自動登錄像youtube.com這樣的不同域名。對我來說,它看起來像:使用EasyXDM進行跨域身份驗證
- 你在accounts.google.com輸入憑據
- 谷歌通過AJAX發送一個請求,以檢查他們
- ,如果他們是正確的,它1.設置一個cookie和2。向其他域(如YouTube)發送請求併發送一些標識符(SID或令牌?),併爲這些域設置Cookie
- 所有其他域也具有cookie後Google會將您重定向回來的位置
我在研究很多,看起來easyXDM(http://easyxdm.net/wp/)是一個很好的解決方案(你認爲它是什麼?)。但我不確定如何進行跨域身份驗證。當用戶正確登錄時,我是否應該向其他域請求並傳遞SID並在域上創建cookie?或者它不安全?或者,我應該在登錄後爲用戶創建令牌並將其存儲在我的數據庫中。然後將令牌發送到所有域以驗證他,然後刪除令牌?
我發現的其他一些東西是通過iframe在iframes中的解決方案..也谷歌analytics.js(https://developers.google.com/analytics/devguides/collection/analyticsjs/cross-domain)看起來令人興奮......但我看到它甚至在easyXDM中被集成。
我希望有些人,如果你們有這些東西的經驗。我很想知道你在想什麼:) gerti
謝謝,我會看看Stormpath。但關於OAuth ..我也認爲這將是一個很好的解決方案。但它似乎更像是第三方授權。當您第一次訪問時,您需要確認每個域的授權。我錯了嗎? – gerti
這是正確的 - 如果你真的想要'單點登錄',你需要實現SAML - 但這通常比大多數人需要的方式複雜。通過使用token auth =)實現流暢的OAuth2流程,您可以'欺騙'用戶認爲他們擁有SSO – rdegges