生活
单点登录 、单点登录和统一认证区别
2023-04-09 02:03  浏览:36

单点登录的三种实现方式

单点登录的三种实现方式有:以cookie作为凭证媒介、通过JSONP实现、通过页面重定向的方式等。

1、以cookie作为凭证媒介

最简单的单点登录实现方式,是使用cookie作为媒介,存放用户凭证。用户登录父应用之后,应用返回一个加密的cookie,当用户访问子应用的时候,携带上这个cookie,授权应用解密cookie并进行校验,校验通过则登录当前用户。

2、通过JSONP实现

对于跨域问题,可以使用JSONP实现。 用户在父应用中登录后,跟Session匹配的cookie会存到客户端中,当用户需要登录子应用的时候,授权应用访问父应用提供的JSONP接口,并在请求中带上父应用域名下的cookie,父应用接收到请求,验证用户的登录状态,返回加密的信息,子应用通过解析返回来的加密信息来验证用户,如果通过验证则登录用户。

3、通过页面重定向的方式

是通过父应用和子应用来回重定向中进行通信,实现信息的安全传递。 父应用提供一个GET方式的登录接口,用户通过子应用重定向连接的方式访问这个接口,如果用户还没有登录,则返回一个的登录页面,用户输入账号密码进行登录。如果用户已经登录了,则生成加密Token,并且重定向到子应用提供的验证Token的接口,通过解密和校验之后,子应用登录当前用户。

单点登录的优势

用户不再被多次登录困扰,也不需要记住多个 ID 和密码。另外,用户忘记密码并求助于支持人员的情况也会减少。

SSO 为开发人员提供了一个通用的身份验证框架。实际上,如果 SSO 机制是独立的,那么开发人员就完全不需要为身份验证操心。他们可以假设,只要对应用程序的请求附带一个用户名,身份验证就已经完成了。

如果应用程序加入了单点登录协议,管理用户帐号的负担就会减轻。简化的程度取决于应用程序,因为 SSO 只处理身份验证。所以,应用程序可能仍然需要设置用户的属性(比如访问特权)。

单点登录是什么意思?

单点登录(Single Sign On),简称为 SSO,是目前比较流行的企业业务整合的解决方案之一。

单点登录就是在一个多系统共存的环境下,用户在一处登录后,就不用在其他系统中登录,也就是用户的一次登录能得到其他所有系统的信任。

单点登录在大型网站里使用得非常频繁,例如像阿里巴巴这样的网站,在网站的背后是成百上千的子系统,用户一次操作或交易可能涉及到几十个子系统的协作,如果每个子系统都需要用户认证,不仅用户会厌烦,各子系统也会为这种重复认证授权的逻辑而崩溃。

扩展资料:

实现单点登录需要具备的条件:

1、所有应用系统共享一个身份认证系统:

统一的认证系统是SSO的前提之一。认证系统的主要功能是将用户的登录信息和用户信息库相比较,对用户进行登录认证;认证成功后,认证系统应该生成统一的认证标志(ticket),返还给用户。另外,认证系统还应该对ticket进行效验,判断其有效性。

2、所有应用系统能够识别和提取ticket信息:

要实现SSO的功能,让用户只登录一次,就必须让应用系统能够识别已经登录过的用户。应用系统应该能对ticket进行识别和提取,通过与认证系统的通讯,能自动判断当前用户是否登录过,从而完成单点登录的功能。

参考资料来源:百度百科-单点登录

单点登录

在企业发展初期,公司通常只有一个web系统,web系统自身包含登录模块,用户使用自己的账号登录系统,很方便。下图表示传统系统登录方案:

随着企业的发展,公司的web系统越来越多,每个系统都包含各自的登录模块。可以想象下用户进入每个系统都需要登录,登出也要一个个登出,非常影响用户体验。下图表示传统多系统登录方案:

web系统由单系统发展成多系统,复杂性应该由系统内部承担,而不是用户。无论web系统内部多么复杂,对用户而言,都是一个统一的整体,也就是说,用户访问web系统的整个应用群与访问单个系统一样, 登录/登出只要一次 就够了。

我们都知道用户每次请求系统,都会携带浏览器上面的cookie(包含sessionId)信息作为请求头发送到系统后端,后端通过sessionId判断用户是否登录。

但是这种改进方式存在着一些不足之处:

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

单点登录将登录模块抽离出来成为一个统一认证平台,应用系统无需开发登录模块,只需简单接入统一认证平台。下面是单点登录示意图:

我们将在下一篇通过以CAS作为代表,分析下单点登录是怎么实现的原理(当然也可以通过OAuth2.0 Saml2.0 OpenID等实现单点登录)。

下一篇: CAS设计原理

单点登录是什么?

单点登录Single Sign On简称为SSO,是目前比较流行的企业业务整合的解决方案之一。F5 BIG-IP Edge Gatew***解决方案借助SSO改进用户体验。SSO的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。

企业应用集成(EAI)。企业应用集成可以在不同层面上进行:例如在数据存储层面上的“数据大集中”,在传输层面

上的“通用数据交换平台”,在应用层面上的“业务流程整合”,和用户界面上的“通用企业门户”等等。事实上,还

用一个层面上的集成变得越来越重要,那就是“身份认证”的整合,也就是“单点登录”。

单点登录的技术实现机制:当用户***次访问应用系统1的时候,因为还没有登录,会被引导到认证系统中进行登录;

根据用户提供的登录信息,认证系统进行身份效验,如果通过效验,应该返回给用户一个认证的凭据--ticket;用户再访问别的应用的时候,就会将这个ticket带上,作为自己认证的凭据,应用系统接受到请求之后会把ticket送到认证系统进行效验,检查ticket的合法性。如果通过效验,用户就可以在不用再次登录的情况下访问应用系统2和应用系统3了。

可以看出,要实现SSO,需要以下主要的功能:

所有应用系统共享一个身份认证系统;

所有应用系统能够识别和提取ticket信息;

应用系统能够识别已经登录过的用户,能自动判断当前用户是否登录过,从而完成单点登录的功能。

其中统一的身份认证系统最重要,认证系统的主要功能是将用户的登录信息和用户信息库相比较,对用户进行登录认证;认证成功后,认证系统应该生成统一的认证标志(ticket),返还给用户。另外,认证系统还应该对ticket进行效验,判断其有效性。整个系统可以存在两个以上的认证服务器,这些服务器甚至可以是不同的产品。认证服务器之间要通过标准的通讯协议,互相交换认证信息,就能完成更高级别的单点登录。

F5 BIG-IP Edge Gatew***解决方案借助SSO改进用户体验,简化移动/远程员工的身份验证流程不仅能够提升用户体验,还能够***限度降低安全风险,并减少密码锁闭呼叫帮助中心的次数。F5 BIG-IP Edge Gatew***能够缓存登录证书,并支持在登录过程中身份验证。如果发生连接掉线,用户将被自动重新执行身份验证。

通俗解释“单点登录”

单点登录(SSO)是指只需要登录一次就可以访问所有相互信任的应用系统。根本要解决的是问题是存储信任和验证信任的问题。

为了更好理解单点登录的场景,以下以生活场景为例:

1. 小明进公司大门,看门大爷问小明要公司的一卡通,小明没有一卡通,查了查电话本,找到了人力部门的电话;

2. 看门大爷把人力部门电话给了小明;

3. 小明给人力部门电话打了过去;

4. 人力部门接了电话;

5. 小明报上了自己的大名,手机号,哪个部门等等信息;

6. 人力***姐去系统里面查了查,还真有小明这个人,于是就给了小明一个一卡通;

7. 然后小明又拿着这个一卡通给老大爷一看;

8. 老大爷还得再次确认一下这个一卡通是不是真的,老大爷又去跟人力确认;

9. 人力告诉老大爷,这个一卡通确实有效;

10. 老大爷把小明放进去了;

如果理解了小明持一卡通进入公司大门的场景,那么接下来就可以对照理解单点登录系统:

1. 【客户端】发起请求,访问,经过一个过滤器(CAS提供),判断用户是否登录过。如果没登录重定向到【认证中心】;

2. 【认证中心】给【客户端】返回了重定向地址:;

3. 【客户端】重定向到;

4. 【认证中心】返回了登录页面;

5. 用户输入用户名、密码;

6. 【认证中心】验证用户名、密码真实性。真实有效后,提供了一个ticket;

7. 【客户端】又拿着ticket去请求;

8. 【服务端】拿着刚才用户提供过来的ticket去认证中心验证真实性;

9. 【认证中心】确认ticket真实有效;

10. 【服务端】返回相关资源,【客户端】展示相关资源。

当用户在访问其他业务系统时候,其他业务系统都会去【认证中心】验证用户携带的这个ticket,认证通过后即可直接访问其他业务系统,无需再次登录。

关于单点登录和单点登录和统一认证区别的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

发表评论
0评