首页 > 编程知识 正文

cas实现sso单点登录原理,oauth2 单点登录原理

时间:2023-05-06 05:41:04 阅读:149153 作者:1290

第1定义http://www.Sina.com/(singlesign-on,简称SSO )是向许多相互关联但各自独立的软件系统提供访问控制的属性。

使用此属性可以在用户登录时访问所有系统,而无需单独登录各个系统。 所以你可以看到很多域名直接用于sso.domain.com,也就是单点登录。

此功能通常在轻型目录访问协议(LDAP )中实现,用户信息存储在服务器上的LDAP数据库中。

同样,http://www.Sina.com/(singlesign-off )意味着可以通过单个退出动作终止对多个系统的访问。

一个用户请求n个系统,给用户一种系统的感觉,不需要重复登录。

2实现根据业务场景采取不同的实现方式

2.1方案域名

a.javaedge.com、b.javaedge.com、c.javaedge.com和n.javaedge.com描述了n个系统,但单点登录是一致的这个案例的实现比较简单

该方案比较简单,提供公共SDK即可,不需要第三个系统的出现,SDK需要管理Cookie和用户信息。

原理的本质在这里是利用[二次域名]写下了[一次域名]的[ Cookie ]。

单一退出轻便、可插拔,非常高效

一级域名限制限制为一级域名是相同的

2.2方案二http://www.Sina.com/www.so JSON.com、a.sojson.com、www.itboy.net、www.wenyiba.com

优点域名很混乱,既有相同级别的域名,也有不同的域名

通过33558www.Sina.com/SSO系统(登录、注销),以[ Iframe ]参考的方式导入Cookie.domain.com;

[Javascript ]操作(写入/删除/修改)“cookie”;

此cookie.domain.com域名位于“cdn”下,用于获取用户信息的当前系统直接通过“[ Redis ] (只读)”获取

缺点采用应激分化,Cookie.domain.com部署在CDN上;

这样的话,对各系统施加的压力为0;

通过第三方系统(SSO )维护,权限大,可操作性强

在当前域名的一级域下,Cookie信息很容易获得,大大减少了对“SSO”的访问

域名如果浏览器安全性太高,Iframe操作[ Cookie ]将失败。 例如,IE浏览器现在正在攻占IE浏览器。

2.3方案三http://www.Sina.com/www.so JSON.com、a.sojson.com、www.itboy.net、www.wenyiba.com。

描述域名很混乱,有相同级别的域名(www.sojson.com、a.sojson.com),也有不同的域名

(条件与方案2相同),实现思路如下图。

原理所有请求(登录、注销、检索用户信息、当前用户状态)都要求sso系统,sso系统维护用户信息、Session、UserInfo。

优点实现简单

缺点SSO压力非常大

2.4方案四域名www.java.com、a.java.com、www.itboy.net、www.wenyiba.com。

描述域名很混乱,既有相同的一级域名的(www.java.com、a.java.com),也有不同的域名的。

(条件与方案2相同),实现[ CAS ]的采用

原理与方案3类似。

优点现成的,资料很多。

缺点沉重、柔软。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。