OAuth 是一种开放协议,允许通过桌面和 Web 应用程序以简单和标准的方法进行 API 身份验证。
OAuth是由Blaine Cook、Chris Messina、Larry Halff 及David Recordon共同发起的,目的在于为API访问授权提供一个开放的标准。OAuth讨论组于2007年4月建立,以便向这个小组的实现者提供一种机构 来编写协议草案。Eran Hammer-Lahav与Google的DeWitt Clinton在开发过程中做出了巨大的贡献。规范的1.0版于2007年12月4日发布。
OAuth 协议为用户资源的授权提供了一个安全的、开放而又简易的标准。与以往的授权方式不同之处是OAUTH的授权不会使第三方触及到用户的帐号信息(如用户名与密 码),即第三方无需使用用户的用户名与密码就可以申请获得该用户资源的授权,因此OAUTH是安全的。同时,任何第三方都可以使用OAUTH认证服务,任 何服务提供商都可以实现自身的OAUTH认证服务,因而OAUTH是开放的。业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间,因而OAUTH是简易的。目前互联网很多服务如Open API,很多大头公司如Google,Yahoo,Microsoft等都提供了OAUTH认证服务,这些都足以说明OAUTH标准逐渐成为开放资源授权 的标准。
从高层次来看,OAuth按以下方式工作:
- 你的站点已与不同的验证服务供应商建立了关系。
- 你共享一个密码短语或者公钥,这样你就能使用它访问web联系人。
- 你 根据验证服务供应商将用户重定向到登录页面。
- 该用户登录然后告诉验证服务供应商你的站点访问其地址薄是没问题的。
你可以进入本页的下载地址中下载各种开发语言对应的 OAuth 开发包,或者在本站搜索更多开发包。
评论