oauth2授权流程 (附git地址)
oAuth
OAUTH协议为用户资源的授权提供了一个安全的、开放而又简易的标准。与以往的授权方式不同之处是OAUTH的授权不会使第三方触及到用户的帐号信息(如用户名与密码),即第三方无需使用用户的用户名与密码就可以申请获得该用户资源的授权,因此OAUTH是安全的。oAuth是Open Authorization的简写。
流程
无论是qq授权还是微信,github 只要用的是oauth协议 流程都是一致的,这里描述流程不包括开发者在资源服务上创建应用信息
① 用户正常访问第三方网站,要求用户登录(提供了微信,qq,github,微博登录)
②用户不想在第三方网站注册信息,于是选择了授权登录(此时第三方网站向资源服务商索要code)
③资源服务商需要知道是否经过了用户的同意,所以会询问用户
④用户同意(或拒绝)
⑤资源服务商将code提供给第三方应用网站
⑥第三方使用code去换取access_token
⑦资源服务上将access_token提供给第三方应用
⑧⑨第三方应用拿到这个access_token后就可以资源服务商请求用户信息等信息(qq稍微麻烦一点需要使用access_token换取openid,然后才能去资源服务商获取用户信息)
git地址 只是简单实现这个流程,后续将完善整理,使用demo时请以github授权为先,其他因应用未能及时审核通过,所以未做验证