-
Oauth2的授权模式
1.授权码模式(Authorization Code)(常用)
2.隐式授权模式(Implicit)
3.密码模式(Resource Owner Password Credentials)(常用)
4.客户端模式(Client Credentials) -
授权码模式
1、客户端请求第三方授权
2、用户(资源拥有者)同意给客户端授权
3、客户端获取到授权码,请求认证服务器申请 令牌
4、认证服务器向客户端响应令牌
5、客户端请求资源服务器的资源,资源服务校验令牌合法性,完成授权
6、资源服务器返回受保护资源
2.1 申请授权码
Get请求:
http://localhost:9100/oauth/authorize?client_id=dongyimai&response_type=code&scop=app&redirect_uri=http://localhost
2.2 会跳转到登录页面,然后输入账号密码
然后点击
就会出来授权码
2.3 在apipost或者postman申请令牌
post请求:http://localhost:9100/oauth/token
认证选择Basic auth认证
然后写参数
第一个参数是授权模式,填写为授权码类型
发送请求后就会获得令牌
access_token:访问令牌,携带此令牌访问资源
token_type:有MAC Token与Bearer Token两种类型,两种的校验算法不同,RFC 6750建议Oauth2采用 Bearer Token(http://www.rfcreader.com/#rfc6750)。
refresh_token:刷新令牌,使用此令牌可以延长访问令牌的过期时间。
expires_in:过期时间,单位为秒。
scope:范围,与定义的客户端范围一致。
jti:当前token的唯一标识
2.4 令牌校验
刷新令牌校验
- 密码授权