我創建了一個客戶端,需要做如下操作的應用:我應該如何爲應用程序實現OAuth?
- 允許用戶使用谷歌,Facebook,Twitter和LinkedIn進行身份驗證。
- 允許用戶在註冊後添加其他提供商。 (即,如果用戶通過Google認證,那麼他們應該能夠添加任何或所有其他提供商)。
- 允許用戶導入Google通訊錄,Facebook好友列表,Twitter關注者和Linkedin好友,以便構建自定義聯繫人列表。
哪裏是最好的地方開始學習這個?有沒有一個標準,每個人都使用這些東西在.NET中?我一直在谷歌搜索幾個小時,雖然看起來大多數人指向DotNetOpenAuth我似乎無法找到關於如何使用該庫的任何可靠的教程。下載附帶示例,但仍然讓我感到困惑。
我認爲這將是簡單的:
- 配置提供商的祕密。
- 開始登錄與供應商,身份驗證cookie的
- 驗證用戶在我的數據庫中創建用戶記錄,並從供應商存儲唯一的ID。
但似乎每個提供者都有它自己的一組代碼,它們都非常不同並且令人困惑。 Facebook有一些圖形對象,Twitter有一些我不明白的「InMemoryTokenManager」,Google甚至沒有認證例子,只有Google Address Book的例子。除此之外,由於某種原因,你必須將示例代碼中的一些ApplicationBlock演示代碼複製到自己的應用程序中,並且在不知道它試圖做什麼的情況下編譯所有代碼是一項艱鉅的任務。
我覺得我錯過了所有這些基本的東西。
即使是書籍推薦,在這一點上也會很棒。
我相信我理解OAuth的高級概念,但是一旦我嘗試深入探究本質,我立即就會迷失方向。
看到這個vedieo:http://www.slideshare.net/leahculver/implementing-oauth –
不幸的是,你想實現每個社交網絡API的程度的變化會有所不同。然而,他們中的大多數人使用帶有令牌的O'Auth來實際連接。 – Greg
我只是希望DotNetOpenAuth有一些簡單的教程。每個要求提供這種文檔的SO問題都不可避免地被告知「下載樣本,這就是您所需要的」。對於像我這樣顯然愚蠢的人來說,這些樣本並不是「你所需要的」。 – Chev