单点登录(Single Sign-On,简称SSO)是一种身份认证和访问控制的机制,允许用户在一次登录后访问多个相互关联的应用系统,而无需再次进行身份认证。它的原理是通过在用户第一次登录时颁发一个令牌(Token),然后在用户访问其他应用系统时,这些系统可以通过验证令牌来确认用户身份,从而实现无缝的登录体验。
单点登录的原理如下:
- 用户访问应用系统A时,但是A被检测到用户未登录或登录已过期,这时用户就会重定向到认证中心(SSO服务器)。
- 输入用户名和密码。
- 认证中心验证用户身份,验证成功,用户拿到一个token。这个token相当于通行证,包含了用户的身份信息和有效期。
- 用户带着token令牌返回应用系统A。
- 应用系统A将令牌保存在用户会话中,给用户打上一个已登录的标签。
- 当用户访问应用系统B时,B也检测到用户未登录或登录已过期,将用户重定向到认证中心。
- 认证中心检查令牌的有效性,如果有效,不需要再次登录,直接将用户重定向回应用系统B,用户继续访问。
用一个例子来解释单点登录的概念: 假设你是一个公司的员工,公司有多个内部系统,比如邮件系统、办公系统和人事系统,每个系统都有自己的登录方式。在没有单点登录的情况下,你需要为每个系统分别输入用户名和密码进行登录。
现在,公司引入了单点登录机制。当你第一次登录任意一个系统时,你只需输入一次用户名和密码,认证中心会颁发一个令牌给你。然后,当你访问其他系统时,这些系统会检查你的令牌,如果有效,无需再次输入用户名和密码,你就可以无缝地访问其他系统。
举例:
- 你首次登录办公系统,输入用户名和密码。
- 认证中心验证成功,颁发令牌给你,办公系统将令牌保存在你的会话中。
- 之后,你访问邮件系统,邮件系统检查令牌有效,无需再次登录。
- 你访问人事系统,同样无需再次登录,令牌验证通过。
这样,你只需要一次登录,就可以访问多个系统,提高了便利性和效率。这就是单点登录的基本原理和用例。
单点登录(SSO)通过一次性颁发令牌实现跨系统免密登录,提高便利性。用户首次登录后,令牌存储在会话中,后续访问关联系统无需重复验证。

被折叠的 条评论
为什么被折叠?



