OAuth允许用户将其在一个站点上的私有资源的访问权限授予另一个站点。但究竟是怎么发生的呢。如果我想在我的网站中提供OAuth功能(作为服务提供商和消费者),我该如何去做。我正在使用基于Fedora 13的服务器。是否可以配置Round Cube / Squirrel Mail来提供这些服务。就像现在所有用户都在服务器中拥有邮件帐户一样,我希望邮件中的凭据用于提供OAuth服务。
答案 0 :(得分:4)
如果您想成为数据提供商,那么您必须在您的网站上实施OAuth服务器,如果您想成为消费者,则必须在您的网站上实施OAuth客户端。
您还应该阅读一些文章和教程以更好地理解协议,因为它是一个允许保护API的协议,而且说,与安全相关的所有内容都应该被开发人员很好地理解。
如果您是提供者,协议的1.0版本按以下方式工作:
开始的好地方是:http://hueniverse.com/oauth/
当您决定是否实施1.0a或2.0版本的协议时,您也可以阅读RFC。到目前为止我只实现了1.0a,所以我不能给出更好的建议。我想2.0版本有更多的可能性,每个人都说它更容易实现。至于容易实现,1.0a也不难实现,因为对于客户端和服务器都有良好的开源库,如果您了解协议的机制,则可以设置并运行服务器或客户端1天。
当然,如果你想创建一个具有不同访问范围的良好服务器,范围的继承以及如果你的API复杂和可扩展,你将不得不在那里做更多的工作,无论你选择1.0a或2.0 OAuth版本
答案 1 :(得分:3)
演示oauth流程的简单示例。理解这个概念有助于相应地设计:
答案 2 :(得分:2)
至于“我将如何做?”
那里有很多好的图书馆。这是一个很好的列表:http://oauth.net/code/