5

我喜歡StackExchange/StackOverflow整合OpenID的方法。StackExchange網站如何關聯用戶帳戶和OpenID登錄?

據我瞭解,過程是這樣的:

  • 如果使用者登入了一個OpenID提供商(如谷歌),StackOverflow上(或類似網站),爲用戶創建和關聯帳戶使用該帳戶的OpenID。
  • 現有用戶可以將多個OpenID帳戶與他/她的StackExchange帳戶相關聯。

我很想效仿這種行爲,因爲我沒有在其他網站上看到它的用戶友好。

我知道StackExchange是建立在ASP.NET MVC上的,但我不確定它是否使用標準的ASP.NET憑證模型,然後將OpenID提供程序添加到單獨的數據庫表中或什麼。

所以,我的問題是:

  • 如何StackExchange創建這些帳戶?他們是否在標準的ASP.NET MVC提供者中創建一個用戶,然後關聯這個ID,還是有一個單獨的過程?
  • StackExchange如何讓額外的OpenID提供者帳戶與現有帳戶相關聯?

在此先感謝您的幫助!

+1

這屬於元。 – chrisaycock 2010-12-09 05:36:59

回答

6

StackExchange sites useDotNetOpenAuth庫(以前稱爲DotNetOpenId庫)。

您基本上需要一個User表和一個User_OpenID表與一對多的關係。 Scot Hanselman有一個很好的基本文章或嘗試more in depth overview

+0

正是我在找什麼;不知道是否還有更多。完美 - 感謝您的快速幫助! – SeanKilleen 2010-12-11 02:55:49

相關問題