2011-06-16 152 views
5

OAuth允許您將用戶授權訪問其在一個站點上的私人資源到另一個站點。但是,這究竟發生了什麼。如果我想在我的網站中提供OAuth功能(作爲服務提供商和客戶),我該如何去做。我使用的是基於Fedora 13的服務器。是否可以配置Round Cube/Squirrel Mail來提供這些服務。就像現在我所有的用戶都在服務器中都有郵件帳戶一樣,我希望郵件中的憑證用於提供OAuth服務。如何從網站提供OAuth服務?

回答

3

一個演示oauth流程的簡單示例。瞭解這個概念有助於設計相應的: enter image description here

4

如果您希望成爲數據提供者,那麼您必須在您的站點上實現OAuth服務器,並且如果您想成爲使用者,則必須在您的站點上實現OAuth客戶端。

您還應該閱讀一些文章和教程,以更好地理解協議,因爲它是一個允許保護API的協議,並且被說成與開發人員很好地理解與安全相關的所有內容。

如果你是一個供應商,在1.0版本的協議工作在以下方式:

  1. 消費者需要獲得最終用戶的隱私數據
  2. 提供商發出的令牌給消費者
  3. 最終用戶授權令牌
  4. 消費者可以授權的請求與該令牌最終用戶的私人數據

好地方開始是:http://hueniverse.com/oauth/

當您決定是否要實現1.0a或2.0版本的協議時,您還可以閱讀RFC。到目前爲止,我只實現了1.0a,所以我不能給出更好的建議。我想2.0版本有更多的可能性,並且每個人都說它更容易實現。至於更容易,1.0a也不難實現,因爲對於客戶端和服務器都有很好的開源庫,如果你瞭解協議的機制,你可以設置並運行服務器或客戶端1天。

當然,如果你想用不同的訪問範圍,範圍的繼承和如果你的API是複雜和可擴展的,你將不得不在那裏做更多的工作,不管你選擇1.0 a或2.0 OAuth版本

相關問題