SSO单点登录

Posted 搞4SlowX

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SSO单点登录相关的知识,希望对你有一定的参考价值。

百度:

单点登录(Single Sign On),简称为 SSO,是目前比较流行的企业业务整合的解决方案之一。SSO的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。


(大纲)

1、单点登录做什么

2、单点登录有什么用

3、以前我遇到的项目


一、单点登录做什么

单点登录说白了主要两点:

1、登录:在任何系统登录过一次,其他系统就无需重复登录;

2、登出:在任何系统退出,其他系统跟着统一退出。


二、单点登录有什么用

1、先来一句废话:统一用户权限管理

2、很重要的一点:支持多个系统接入,所谓系统集成

3、关键一点:支持多个系统接入,我们开发的应用系统是集群,任何一个系统的更新,都不会影响到其他系统的正常使用。

形象点:

1、一把钥匙

2、联盟

3、热拔插


三、以前我遇到的项目

1、第一家公司(简称GDGX),做SWLH系统,首次接触单点登录,不明觉厉。

2、同样第一家公司,做市CT的企业信息网,需要跟省CT做统一认证,之前他们用AD认证,后面改用广东微软技术中心帮他们开发的一个工作平台EIAC。用和接触几点。

(1)有一个接口做登录认证

(2)有一个接口做用户和组织关系同步

(3)有一个接口做消息推送

(4)有一个接口做消息阅读回馈

3、第二家公司(简称YYGIS),做SZLY系统,用D公司的定制开发平台,任何业务子系统都是通过定制平台定制出来,无需额外编写C#代码,bigger and bigger。特殊业务逻辑咋办:

(1)js

(2)存储过程

那个系统,没有用单点登录。

后来,当XZZF子项目启动和接入时候,(没有撕逼的动图)



有点写跑题了

就第2和3的总结吧

无非就是

1、做一个大的应用系统,首先考虑的应该不是功能,而是系统集成。

因为:

(1)系统资源问题:就算你是x64的服务器,服务器给网站的资源也是固定的,你不断的增加应用,服务器资源饱和度越来越高,迟早会拖慢的你应用的。所以,分站,把应用分开网站或服务器部署。而解决分站的方法,就是单点登录。

(2)系统更新问题:如果你一个子应用发生错误,如果只是一个系统,你要全站更新,而别的应用正在生产使用。你怎么办?而多个子系统集成的话,局部更新即可,不会影响其他应用。

(3)性能问题:曾经做了一个报表功能,导出报表时候逻辑运算特别复杂,把网站资源几乎占满了,别的应用响应不过来。分站,把报表应用、后台管理分站出去。你撸你的,别影响我工作。

(4)不能单单考虑用户权限和登录的集成。

当年的EIAC平台,说是一站式工作平台。

A.集成用户权限管理及登录登出

B.统一工作平台,平台首页有待办箱、已办箱等。这些列表记录来源于各个子系统的待办信息推送,用户只需登录EIAC,就能一目了然知道自己要做的动作清单,无需一个系统一个系统的点开(主要还是政务审批系统)

C.集成自定义插件应用:用户根据自己关注,把子系统的个别功能模块,插件模式放到首页。(比如:车辆的维修保养提醒)

D.集成邮箱功能和站内消息:可有可无


不过单点登录也会有几个问题:

1、数据缓存同步更新的问题

2、跨不跨域的问题(功能问题:以前单点登录通过cookie的,不知道有没有好的解决方案)

3、吹不出来了……


我有一个开发框架,叫SlowX

Slow:慢

X:解决


他的“爷爷”是SWLH时候,我师兄的CTBA框架,一个三层框架,已经被我改得面目全非。


过程:

CTBA

-->

CT.BA

-->

YYGIS

-->

SlowX

-->

SlowX(新)


SlowX(新)是否完美,不?得!而知!!!



(长按二维码求关注


以上是关于SSO单点登录的主要内容,如果未能解决你的问题,请参考以下文章

sso单点登录,单点登录原理图,单点登录图解,单点登录

sso单点登录实现

单点登录 SSO

学习CAS实现SSO单点登录

SSO单点登录

单点登录SSO