2010-05-28 98 views
14

我是oAuth區域的新手,已經設置了DotNetOpenAuth來設置oAuth服務提供程序。在DotNetOpenAuth下載中提供的示例對我來說是相當困惑的......也許因爲我對這個東西很陌生。有一個默認頁面用於創建數據庫並填充數據庫。現在我瀏覽到login.aspx並要求我放置一個openid,實際上我想使用DNN(實現DotNetOpenAuth),並且我想在另一個將成爲oAuth使用者的​​站點上使用這些憑證。有人可以解釋如何在DotNetOpenAuth的示例中測試oAuth服務提供者嗎?Dotnetopenauth oAuth服務提供程序說明

+0

你想使用與.net相關的網站的開放認證? – 2010-05-28 07:33:22

+1

是的,我想讓我的網站oauth提供商和JSF中的另一個網站成爲該網站的消費者。但是,目前我的主要問題是瞭解DotNetOpenAuth示例oAuth提供程序服務。我不知道它應該如何工作,它的流程是什麼。我測試了DotNetOpenAuth oAuth消費者樣本,並讓它早些工作。但我不知道如何使我的網站oAuth提供商服務 – ria 2010-05-28 07:54:32

回答

12

你已經偶然發現了DotNetOpenAuth中包含的最糟糕的示例。對於那個很抱歉。您可能發現OpenID project templates提供了一個更簡單和更真實的構想,即如何設置OAuth服務提供程序。

您正在使用的示例是一個使用OAuth公開WCF服務的服務提供者,因此如果您不使用WCF,示例中將存在一些複雜性。這裏就是你需要做的就是樣品準備,雖然什麼:

  1. 修改樣本的根default.aspx.cs文件將數據添加到新的數據庫爲自己的OpenID,並導致樣品重建其數據庫OR只是在樣本創建自己的數據庫後,自己將原始數據添加到數據庫。
  2. 使用OAuthConsumer示例嘗試訪問OAuthServiceProvider示例上的數據。請務必至少檢查一個複選框,以確定您要求獲得許可的範圍。
  3. SP將提示您登錄。請繼續使用您爲其添加數據到數據庫的OpenID。
  4. SP會詢問您是否同意與消費者樣本共享您的數據。說是的。
  5. 消費者會說它已經獲得授權併爲您提供了幾個在SP上查詢用戶數據的按鈕。

This should work。如果沒有,請添加評論給這個答案,我會編輯這個答案,直到我們做對了。 :)

現在關於您的DNN登錄 - 沒有問題。您可能知道,OAuth和OpenID是相互正交的,所以您可以將SP上的OpenID登錄切換爲DNN登錄,並且SP將工作得很好 - 儘管在數據庫中匹配用戶數據課程將需要DNN要求的任何工作。

+0

非常感謝...虐待測試,並讓你知道。我非常感謝你的詳細回覆。 – ria 2010-05-31 08:18:19

+0

@Andrew,你有一個DotNetOpenAuth YahooConsumer嗎? – 2012-05-22 21:02:36

+1

還沒有。請隨時捐助一個。 – 2012-05-24 15:00:29