2011-10-12 65 views
10

對於DotNetOpenAuth和OAuth的一般情況我略微熟悉,但就Web API開發而言,根據以下方式鎖定Web服務的最佳方法是什麼標準:在.NET WCF Web API上處理身份驗證的最佳方式

  • 易於實施
  • 與最終用戶所面臨的平臺(iOS版,Android版,贏手機,軟硬...)
  • 無論這顯然是基於標準的互操作性
  • /兼容性(如OAuth)

謝謝!

回答

5

請看看這裏:OAuth 2.0 in Web API

裏面的WebApiContrib項目也有基本身份驗證的樣品是直線前進,但它不應該在沒有SSL使用。

+0

檢查了這一點!謝謝。 –

+4

好吧,這是有幫助的,但這裏是我的問題:我如何在所提供的示例中充當「Facebook」?本文假定您要使用外部OAuth信用提供商。我想在這裏建立信譽提供者和網絡服務。 –

0

有幾個wcf web api實現來處理Internet上的身份驗證。我做了一個,以及@http://misaxionsoftware.wordpress.com/2011/07/29/secure-restful-web-service-by-wcf-web-api-no-https-seriously/

注:代碼是基於第三個預覽版,一些類名稱在預覽5

改變實現的想法是確保沒有SSL安全通信。

它很容易構建。該功能對您的服務透明,因爲所有的工作都是在消息處理程序中完成的。你不用打擾在你的服務方法中調用authenticate函數。

與支持RSA加密的端點兼容。

基於標準的,嗯......標準各不相同情況而...

3

的DotNetOpenAuth .zip文件的下載包括由OAuth的保護樣本WCF服務。

+0

我剛剛下載了你的樣品。我很欣賞這麼多的樣本,但是我對所有項目名稱和術語都有些困惑。有沒有一個特定的示例演示如何使用Oauth2自己提供oauth標記而不是使用已知的openid提供程序(如google)? – Adam

+1

「OAuthResourceServer」示例演示如何使用OAuth 2訪問令牌進行授權。 OAuthAuthorizationServer樣本演示了這些訪問令牌的頒發。授權服務器使用OpenID登錄用戶的事實與OAuth流程正交,您可以將其替換爲您想要的任何內容。 –