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
浙公网安备 33010602011771号