一 OAuth协议简介
OAuth协议的主要角色分为三个。
1.资源的拥有者,比如我的相册中有很多照片,我可以选择将这些照片上传到微信朋友圈或者微博上。那么我就是资源的拥有者。
2.服务提供商provider,如很多用户把照片都上传在了微信上,那么微信就可以对外提供照片服务,所以这时微信就是服务提供商。
3.第三方应用,如美拍开发了一款软件可以把照片做一些样式处理,美拍为了提高用户数量,可以去微信哪里申请用户的资源照片。
这时美拍就是第三方应用。
微信不可能无缘无故将照片给美拍,美拍就来问我,我想用你的照片,帮你美化,你是否同意。资源的拥有者同意,美拍拿到授权令牌token,再去微信哪里用token换取照片资源。个人理解
服务提供商provider又可以细分出2个角色
1.认证服务器AuthorizationServer : 它验证用户(资源所有者)的身份,发放令牌(token).
2.资源服务器ResourceServer: 它主要是保存用户资源(自拍照片),验证令牌.
二. oauth协议中的授权模式
1.授权码模式(authorization code)
授权码模式是这种4中模式中功能最完整,流程最严密的一种方式。
2.简化模式(implicit)
3.密码模式(resource owner password credentials)
4.客户端模式(client credentials)