spring security Oauth开发APP认证3

1、重构三种登录方式:

 

 原来的4种收取模式逻辑不能用,能用的就是产生令牌的逻辑,需要将用户名密码登录、短信登录、社交账号登录,登录成功后也返回令牌。

1、clientId由请求头参数传过来,client:secret 使用任意base64工具编码,Authorization: Basic Z3Vhbmd4dW46Z3Vhbmd4dW5TZWNyZXQ=

2、Scope权限由后台配置client来的。

3、grantType:在标准的流程就是4种模式的一种,这里由我们自己定义。

2、重构用户名密码登录:

 1)在原来用户名密码登录成功处理器里面,从请求头获取client信息,然后生成token。

 

3、重构社交登录:

 APP社交登录有2种模式:

 1)简化模式:APP端通过服务提供商提供的SDK直接引导用户跳转,服务提供商返回openId和accessToken等信息。然后APP通过openId去我们的后台服务器去换取token。

 

 

 这种方式,和短信验证码类似,需要去自定义一种登录方式,给用户生成令牌。

  2)授权码模式:这种模式和原来标准社交登录流程一样,只是返回授权码是给APP,APP将这个地址再发给我们后台,我们后台就会去走后面的流程。

并且通过添加后置处理器来登录成功后返回令牌给用户。

 

 

 

 

参考:

前后端分离之授权码模式社交登录:https://segmentfault.com/a/1190000016589568

前后端分离项目-基于SpringSecurity OAuth2.0用户认证:https://segmentfault.com/a/1190000016583573

spring security OAuth2开发App认证框架:https://www.jianshu.com/p/24c00a751ee8

posted on 2020-03-28 23:32  好好学习,天天睡觉  阅读(319)  评论(0)    收藏  举报