2010-01-19 30 views
3

我有一個應用程序,它有一個內部的SSO與它的姐妹網站實施;使用CAS實現。它工作正常,並允許用戶在站點之間進行無縫過渡。 (雖然首次訪問每個站點,但用戶必須向每個站點提供一些基本的細節)。SSO,Facebook連接,用戶配置文件合併

現在我們想要繼續並實現Facebook連接或者RPX Open Id。問題是,目前系統假設用戶的電子郵件ID是唯一的。所以下面是一些問題:

  1. 如果我們允許臉書連接,那麼電子郵件ID不能再是唯一的。要消除這個限制,將會太昂貴。
  2. 如果我們確實允許用戶使用Facebook連接登錄,爲他保留了不同的用戶配置文件;當他偏離姊妹站點時會出現問題嗎?我們如何在不合並的情況下跟蹤用戶配置文件。或者即使我們合併,我們也無法在不從他那裏獲取特定於應用程序的憑據的情況下對其進行身份驗
  3. 假設他已登錄到應用程序SSO和Facebook連接;如果我們始終把SSO作爲優先事項;它基本上意味着facebook連接流將不得不被登錄的用戶隱藏;這將意味着糟糕的用戶體驗。

我只是想知道其他人也可能在他們的網站上實現了Facebook連接或開放ID;他們如何處理用戶的合併;特別是如果你有一個你自己的SSO已經出現在現場。

乾杯

+0

答案有助於解決您的問題,還是仍然存在未解決的問題? – jayshao 2010-07-23 09:36:48

+0

你有沒有進一步與此?我期待着做同樣的事情,所以任何反饋將不勝感激。 – Jim 2012-01-07 21:51:43

回答

1

如果您使用CAS你可能想實現一個自定義CredentialsToPrincipalResolver這需要的OpenID/Facebook的連接,查看電子郵件屬性,並試圖解決現有帳戶如果存在的話 - 這樣你使用外部單點登錄系統作爲憑證,就像任何其他令牌一樣(例如x509之類的)