OAuth 初探
OAuth wiki:
http://zh.wikipedia.org/wiki/OAuth
OAuth RFC:
http://tools.ietf.org/html/rfc5849
OAuth java implement:
http://www.ibm.com/developerworks/cn/java/j-lo-oauth/index.html
总的来讲,在 OAuth 的技术体系里,服务提供方需要提供如下基本的功能:
- 第 1、实现三个 Service endpoints,即:提供用于获取未授权的 Request Token 服务地址,获取用户授权的 Request Token 服务地址,以及使用授权的 Request Token 换取 Access Token 的服务地址。
- 第 2、提供基于 Form 的用户认证,以便于用户可以登录服务提供方做出授权。
- 第 3、授权的管理,比如用户可以在任何时候撤销已经做出的授权。
而对于消费方而言,需要如下的基本功能:
- 第 1、从服务提供方获取 Customer Key/Customer Secret。
- 第 2、提供与服务提供方之间基于 HTTP 的通信机制,以换取相关的令牌。