Spring+ Spring cloud + SSO单点登录应用认证

之前的文章中有介绍spring cloud sso集成的方案,也做过spring + jwt + redis的解决方案,不同系统的无缝隙集成,统一的sso单点登录界面的管理、每个应用集成的权限认证,白名单等都是我们需要考虑的,现在针对于以上的问题我们做了sso单点登录应用认证平台,设计如下:

1. 数据库设计:

DROP TABLE IF EXISTS `sso_app_apply`;  CREATE TABLE `sso_app_apply` (    `id` varchar(200) NOT NULL COMMENT '编号',    `type` varchar(200) NOT NULL COMMENT '所属分类',    `applicant` varchar(200) NOT NULL COMMENT '申请人',    `approver` varchar(200) NOT NULL COMMENT '审批人',    `appname` varchar(200) NOT NULL COMMENT '应用名称',    `range` varchar(200) NOT NULL COMMENT '使用范围',    `token` varchar(200) NOT NULL COMMENT 'token认证码',    `approval_time` datetime NOT NULL COMMENT '审批时间',    `create_date` datetime NOT NULL COMMENT '创建时间',    `update_by` varchar(64) NOT NULL COMMENT '更新者',    `update_date` datetime NOT NULL COMMENT '更新时间',    `del_flag` char(1) NOT NULL DEFAULT '0' COMMENT '删除标记',    `status` char(1) DEFAULT '0' COMMENT '审核状态:0(待审核) 1(审核通过) 2(驳回) 3(黑名单)',    PRIMARY KEY (`id`)  ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='sso应用申请表'; 

DROP TABLE IF EXISTS `sso_app_template`;  CREATE TABLE `sso_app_template` (    `id` varchar(200) NOT NULL COMMENT '编号',    `a_id` varchar(200) NOT NULL COMMENT '应用id',    `t_id` varchar(200) NOT NULL COMMENT '模板id',    PRIMARY KEY (`id`)  ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='sso应用模板中间表';  

DROP TABLE IF EXISTS `sso_template`;  CREATE TABLE `sso_template` (    `id` varchar(200) NOT NULL COMMENT '编号',    `name` varchar(200) NOT NULL COMMENT '模板名称',    `type` varchar(200) NOT NULL COMMENT '模板分类',    `img` varchar(200) NOT NULL COMMENT '模板图片',    `create_by` varchar(64) NOT NULL COMMENT '创建者',    `create_date` datetime NOT NULL COMMENT '创建时间',    `update_by` varchar(64) NOT NULL COMMENT '更新者',    `update_date` datetime NOT NULL COMMENT '更新时间',    PRIMARY KEY (`id`)  ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='sso模板表';  

2. 执行流程

A. 成用户注册 (可以注册个人账户或者企业账户)   

B.  申请应用(可能是多个应用),选择不同的模板(不同模板对应不同行业的sso单点登录系统)

C.  管理人员进行应用审核(申请人提交信息的审核),审核通过以后通过加密方式生成应用对应的token信息

D.  后台管理(应用列表、应用审核、模板管理等)

E. 将token信息和应用信息传递,进行sso统一拦截器认证(验证白名单)

F. 成功or失败(跳转到指定模板的sso登录界面)(企业架构源码可以加求球:3536247259)


3. 效果界面:

 到此完毕!

你可能感兴趣的:(Spring+ Spring cloud + SSO单点登录应用认证)