一、该问题的重现步骤是什么?
1. 单点登录统一认证中心作为主应用入口挂载在其他业务系统中
2. 其他业务应用已经登录,可以提供相关code换取token,从而换取个人信息
3. 根据个人信息在统一认证中心进行自动登录
4. bladex开发的相关业务应用通过挂载统一认证中心的地址实现单点登录
二、你期待的结果是什么?实际看到的又是什么?
基于bladex统一认证中心开发各个业务系统,但是在某些场景需要对接第三方登录,对接第三方登录后不希望各业务系统重新对接,而是各个业务系统只需要对接bladex的统一认证中心,由统一认证中心和第三方完成对接,从而实现高适配性。目前的第三方系统登录,都是各业务系统单独对接第三方的,授权后统一认证中心并没有登录,且无法进行统一管理和登录日志记录,是否有相关方案可以实现bladex的认证中心对接其他业务系统的单点,同时又不修改bladex本身的认证逻辑
三、你正在使用的是什么产品,什么版本?在什么操作系统上?
bladex3.4.0
linux
四、请提供详细的错误堆栈信息,这很重要。
五、若有更多详细信息,请在下面提供。
目前还不能实现,因为bladex只是使用了oauth2的授权码模式实现了单点登录的功能,bladex并没有统一认证中心。只有在bladex体系下的各个子系统才可以轻松对接单点登录。
但如果是第三方系统,涉及到各系统的状态、不同的协议、不同的字段等信息,如果要对接,其实是要开发一个新的系统,叫综合认证平台。这个平台bladex是没有的。
只有开发了这样的综合认证平台,所以的第三方应用都登记到这个平台里,第三方应用引入综合平台的通用依赖,通过依赖的api来操作登录用户的状态。
只有这样,才能实现任意一个接入了综合平台的系统登录后,另外其他的系统都无需登录的需求。如果第三方平台不引入综合平台的依赖,那基本是无法做到无缝对接的。
这个工作量非常大,更建议找一个开源的统一认证平台来实现你们需要的这个功能。
扫一扫访问 Blade技术社区 移动端