单点登录的三种实现方式

单点登录的三种实现方式假如你是企业管理者 你的公司正在使用包括考勤系统 差旅报销系统 在线协同工具等十几甚至几十套不同的软件系统 你的员工是否可以在这些不同的系统中 一次登录全部搞定

欢迎大家来到IT世界,在知识的湖畔探索吧!

单点登录的三种实现方式



欢迎大家来到IT世界,在知识的湖畔探索吧!

假如你是企业管理者,你的公司正在使用包括考勤系统、差旅报销系统、在线协同工具等十几甚至几十套不同的软件系统,你的员工是否可以在这些不同的系统中,一次登录全部搞定?有没有发生多人共享同一账号,造成身份管理混乱的情况?

企业在统一员工身份管理时,面临诸多挑战:

1. 应用太多,员工账号密码众多,复杂难记,或设置单一,存在安全隐患。

2. 登录入口众多,没有统一界面,切换频繁,体验差。

3. 不同应用和员工数据之间割裂,不同设备和操作系统不兼容。

4. 不同应用、各地分支机构,档案信息不同。

单点登录可以解决这些痛点。

单点登录是一个身份验证机制,英文全称 Single Sign On,简称 SSO。它的定义是:在多个应用系统中,用户只需要登录一次,即可访问所有相互信任的应用系统,就像健康保一样,为你的身份做担保

单点登录 SSO 可以安全地确保员工只需要一组账号与密码,或通过标准协议认证、第三方身份源认证,就可以登录所有被授权的应用系统。例如,员工只需要登录个人 OA 系统的账号密码就可以访问飞书、销售易、客户系统等应用程序,无需再次输入账号和密码。

用户在登录后,服务器需要对其身份进行验证,主要实现方式有三种:

方式 1:通过 session 进行验证

session 称为“会话”,session 对象存储特定用户会话所需的属性及配置信息。简言之,session 就是服务器为了储存用户信息而创建的一个验证手段。用户在登录了一个系统后,服务器会将登录信息储存在一个 session 中,产生 session ID,客户端会保存该 ID;当这个用户再登录其他系统时,服务器会自动复制上一个模块的 session 到该服务器的 session 中,以获取用户登录信息,实现用户只登录一次,就可以登录其他系统。在用户退出登录时,服务器会自动删除 session。

整个过程均在服务器端完成,用户实际使用时没有感知。

单点登录的三种实现方式

方式 2:通过 cookie 进行验证

cookie 是某些网站为了辨别用户身份,由服务端生成,发给客户端暂时或永久保存的信息。简言之,cookie 就是一种存储用户数据的媒介。举例来说,当我们打开一个网站,比如新浪、CSDN、知乎时,输入用户名和密码登录后系统会默认存储这些信息,在下一次登录时,就不需要再次输入用户名和密码,而是默认直接登录,进入页面。

单点登录的三种实现方式

方式 3:通过 token 进行验证

token 在身份认证中是令牌的意思,在词法分析中是标记的意思。一般作为邀请、登录系统使用。简言之,token 就是一种凭证,用户在登录注册时需要获取凭证,在经过验证后,方可登录相关被授权的应用。

用户在首次登录系统时输入账号和密码,服务器会收到登录请求,然后验证是否正确;

服务器会根据用户信息,如用户 ID、用户名、密钥、过期时间等信息生成一个 token 签名,然后发给用户;

用户验证成功后,返回 token;

前端服务器收到 token 后,存储到 cookie 或 Local Storage 里;

当用户再次登录时,会被服务器验证 token;

服务器收到用户登录请求后,对 token 签名进行比对:如果 token 验证正确,用户登录成功;如果 token 验证不正确,用户登录失败,跳转到登录页。

单点登录的三种实现方式

session 与 cookie、token 验证的区别

_

session

cookie

token

存储端

服务器

客户端(比如浏览器)

客户端

存储量

不限,当访问增多时,速度下降

不超过 4KB,每个浏览器最多 20 个

由开发者设定

安全性

比 cookie 安全性高,篡改者只能看到session_id,看不到其他信息

不安全,本地 cookie 易被盗取,篡改者可以看到该字段所有信息

安全,服务端会加密生成的令牌,存在客户端

在 Authing 中,无需手动编写操作 session、cookie 或是 token,控制台中可以一键体验单点登录功能,并且支持自建与集成第三方等多种方式,还可以通过 SDK 接入并自定义自己的应用与登录方式。

自建 SSO 方案

开启应用之间的单点登录后,同一个用户池下的不同应用之间的登录状态将会打通,终端用户只需登录一次即可在不同的应用之间畅行。

创建两个应用

首先你可以按照指引创建两个应用。

单点登录的三种实现方式

配置单点登录

进入菜单 应用 > 单点登录 SSO,点击左上角添加应用,然后选择自建应用,在下方的列表里找到刚刚创建的应用,点击 + 号,就完成了多应用单点登录的配置。

单点登录的三种实现方式

单点登录的三种实现方式

体验应用单点登录

进入 单点登录 SSO的应用列表标签,选择一个应用,点击体验登录。

单点登录的三种实现方式

在登录页面完成登录:

单点登录的三种实现方式

成功后会跳转到应用回调地址:

单点登录的三种实现方式

接下来我们点击另一个应用的体验按钮:

单点登录的三种实现方式

用户无需再次输入密码,直接进入了该应用的回调地址:

单点登录的三种实现方式

使用 SDK 接入单点登录

详细的接入流程请见 单点登录 SDK 文档。

代码参考:

https://github.com/Authing/authing-sso-demo/tree/feat-sso-v3-demo

关于 Authing

Authing 身份云是国内唯一以开发者为中心的全场景 IDaaS 服务商,以身份及服务的云计算视角,基于多租户云原生架构,集成了所有主流身份认证协议,遵循不同国家和行业的合规性要求,在所有 SaaS 软件和数亿用户中建立高安全、高性能、高生产力的统一身份认证平台,支持所有企业和开发者便捷灵活接入,满足各类场景化需求。

目前,Authing 身份云已帮助 20,000+ 家企业和开发者构建标准化的用户身份体系,感谢可口可乐、元气森林、招商银行、中国石油、三星集团等客户选择并实施 Authing 解决方案。

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://itzsg.com/128006.html

(0)
上一篇 45分钟前
下一篇 8分钟前

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们YX

mu99908888

在线咨询: 微信交谈

邮件:itzsgw@126.com

工作时间:时刻准备着!

关注微信