SpringCloud----spring security Oauth2认证解决方案

Oauth2授权码模式

授权码授权流程

例举的黑马程序员网站使用微信认证的过程就是授权码模式,流程如下:

1、客户端请求第三方授权 

2、用户(资源拥有者)同意给客户端授权

3、客户端获取到授权码,请求认证服务器申请令牌 

4、认证服务器向客户端响应令牌 

5、客户端请求资源服务器的资源,资源服务校验令牌合法性,完成授权

6、资源服务器返回受保护资源

申请授权码

请求认证服务获取授权码:

Get请求:

localhost:40400/auth/oauth/authorize?client_id=XcWebApp&response_type=code&scop=app&redirect_uri=http://localhost

参数列表如下:
client_id:客户端id,和授权配置类中设置的客户端id一致。

response_type:授权码模式固定为code

scop:客户端范围,和授权配置类中设置的scop一致。

redirect_uri:跳转uri,当授权码申请成功后会跳转到此地址,并在后边带上code参数(授权码)。

数据库中有一张表,表里面存放了配置的客户端id,如果请求的参数后的client_id在数据库中不存在,是不会颁发授权码的

请求后会跳转到登录页面

  用户名是client_id,密码是client_secret(已经加密过) 

page10image3801088

密码和账号输入成功后会带着授权码重定向到指定的uri下

猜你喜欢

转载自www.cnblogs.com/yanxiaoge/p/12312381.html