OAuth 2.0:使用联合协议的利与弊

日期: 2011-11-13 作者:Michael Cobb翻译:Odeyssey 来源:TechTarget中国 英文

问:我们组织非常倾向于将OAuth协议集成到我们的Web应用认证架构中,从而同时支持标准的和移动Web应用。使用OAuth协议,特别是用于移动应用时,有什么不利的地方吗?或者还有一些别的原因,我们应该考虑其他方法或联合协议?   答:OAuth(Open Authorization,开放授权)协议2.0版本作为一个IETF标准,目前已接近最后的完成阶段。它是一个联合协议,旨在简化对受到保护数据的授权和访问,在授予对数据的访问的同时,保护拥有者的帐户凭证。它允许拥有某个web站点(服务提供商)账号的用户,同意另一个web站点(消费者)从前者访问他/她的数据(允许用户让第三方应用访问该用户在某一网……

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

问:我们组织非常倾向于将OAuth协议集成到我们的Web应用认证架构中,从而同时支持标准的和移动Web应用。使用OAuth协议,特别是用于移动应用时,有什么不利的地方吗?或者还有一些别的原因,我们应该考虑其他方法或联合协议?

  答:OAuth(Open Authorization,开放授权)协议2.0版本作为一个IETF标准,目前已接近最后的完成阶段。它是一个联合协议,旨在简化对受到保护数据的授权和访问,在授予对数据的访问的同时,保护拥有者的帐户凭证。它允许拥有某个web站点(服务提供商)账号的用户,同意另一个web站点(消费者)从前者访问他/她的数据(允许用户让第三方应用访问该用户在某一网站上存储的私密的资源,而无需将用户名和密码提供给第三方应用。)。用户可以提供令牌而不是凭证(通常是他们的用户名和密码)来共享访问他们位于因特网上的私有资源(如文档、图像和日程表)。令牌可以授予在指定时间内对特定资源的访问,这样一来,用户可以授权第三方访问他们共享的资源,而不需要分享他们的访问许可或他们数据的所有内容。比起为了相互访问数据,用户们互相共享他们的用户名和密码,这个解决方案更好。

  OAuth 2.0的一个潜在好处是,能够让用户共享关于他们自身身份的可核实的声明,而不必发布任何个人识别信息。允许你的客户将他们的信息与让你的应用系统整合,或通过你的应用从别的站点上共享有关他们的信息,能够极大地提高你的服务,同时,和别的站点一起发挥作用可以降低成本。

  许多大型网站包括Twitter、Facebook和Google都使用OAuth协议。选择一个备选协议来提供网络上这些大型站点要求的支持水平十分困难,但是OAuth协议不是一个简单的即插即用的技术。当使用OAuth协议时,你需要从想委派的服务获取密钥字符串。在浏览各种博客和论坛中,我获悉开发人员们正努力在移动设备上管理该密钥,因为在应用中存储密钥信息时意味着其可以被发现和滥用。

  还要记住,OAuth是一项关于授予对资源的访问无需共享拥有者身份或是凭证的技术,例如某个临时的数据传输授权。即使用户们使用OpenID以及单个身份登入众多站点,他们仍然不得不在某个站点使用用户名或密码登录。我会建议在设计架构上实施一些可用性测试来看看你的用户的反应。有些人可能喜欢输入用户名和密码而不是点击登录到Twitter,他们输入用户名/密码,点击提交,批准后最终返回到你的站点。

  为移动应用建立一套标准的认证和授权框架,我们还有一些路要走,但是对于那些以此为业务模式中的关键方面的公司来说,如Google,他们正在继续为之努力。到那时,OAuth 2.0可能是你最佳的选择,你只要牢记你用户的需和你自己的需求。

相关推荐