什么是单点登录?
- IAM 词汇表
- 什么是单点登录?
单点登录 (SSO) 是一种身份验证技术,允许用户使用一组登录凭据访问多个应用和服务。SSO 的主要目标是减少用户输入凭据的次数,使用户无需多次登录即可更为轻松地访问所需的所有资源。
SSO 平台在大多数组织的身份和访问管理 (IAM) 系统中起着不可或缺的作用。此外,每当用户使用社交媒体帐户登录其他网站(例如“使用 Facebook 登录”)时,他们都在使用单点登录。
单点登录的工作原理是什么?
SSO 系统的工作原理是在用户、身份提供程序 (IdP) 和使用 SSO 登录的网站及应用(亦称为服务提供商)之间建立信任关系。以下是这一过程的高层次概述:
用户登录身份提供程序。 用户向 IdP 提供用户名和密码,IdP 会验证用户的身份并对会话进行验证。
身份提供程序生成令牌。 您可以将此令牌视为临时数字身份证,其中包含有关用户身份和会话的信息。此令牌存储在用户的浏览器中或 SSO 服务的服务器中,用于将用户的身份信息从 IdP 传递给服务提供商。
用户访问服务提供商。 当用户尝试访问网站或应用时,该网站或应用会请求 IdP 进行身份验证。
IdP 将令牌发送给网站或应用。 IdP 将加密的一次性令牌安全地发送给用户希望登录的应用或网站。
网站或应用使用令牌中的信息来验证用户的身份。 成功验证后,服务提供商向用户授予访问权限,用户即可开始使用网站或应用。
单点登录安全吗?
是的。实际上,单点登录通常被认为比传统的用户名和密码身份验证系统更安全,因为 SSO 减少了用户必须记住的密码的数量,从而阻止用户采用糟糕的密码安全做法,例如创建弱密码和在多个帐户中重复使用密码。
但是,与任何其他技术一样,必须正确配置和维护 SSO 系统才能实现最佳安全性。此外,SSO 系统必须与其他 IAM 工具和协议一起使用,包括多步验证、全面的企业密码管理程序和基于角色的访问控制。
单点登录的类型
所有 SSO 系统都有相同的最终目标:允许用户仅进行一次身份验证,无需再次登录即可访问多个应用和系统。然而,具体的协议和标准可能因系统而异。以下是您在使用 SSO 时会遇到的一些最常见的术语:
- 联合 SSO 在具有分布在不同部门和地点的多个应用和系统的超大型组织中很常见。它可提供对不同组织中多个系统的单一访问。
- 基于 Web 的 SSO 通常被“数字原生”组织使用,这些组织的员工完全使用基于云的应用和服务。
- 安全断言标记语言 (SAML) 不是一种 SSO “类型”,而是一种用于在各方之间交换身份验证和授权数据的标准数据格式。SAML 通常用于基于 Web 的 SSO 系统。
- Kerberos 是一种网络身份验证协议,它使用数字“票证”系统为网络服务提供安全的身份验证。与用于对 Web 应用进行身份验证的 SAML 不同,Kerberos 是企业局域网 (LAN) 中的一种后端技术。
- 轻型目录访问协议 (LDAP) 是一种目录服务协议,用于存储和检索有关用户和资源的数据。基于 LDAP 的 SSO 解决方案允许组织使用其现有的 LDAP 目录服务来管理 SSO 的用户。然而,由于 LDAP 并不是为与 Web 应用进行本地协同工作而设计,因此组织通常将其 LDAP 服务器与基于 SAML 的 SSO 一起用作权威的“可信源”,换句话说,作为身份提供程序。
单点登录的优缺点
SSO 的主要优点包括:
方便和更好的用户体验: SSO 使用户无需记住多个用户名和密码,因此可以更快、更轻松地访问所需的服务。
提升安全性: SSO 让 IT 管理员可以集中管理用户身份,这有助于管理员更好地了解和控制谁有权访问哪些内容,从而提高安全性。这也有助于防止未经授权访问敏感信息。
提高生产力: 管理员可以减少花在管理用户身份上的时间,用户则不必浪费时间摸索如何设置密码。SSO 解决方案还可以显著减少甚至消除因忘记密码而产生的服务台工单。
SSO 的主要缺点包括:
单点故障: 如果 SSO 系统发生故障,用户将无法访问任何依赖它的服务,这可能会导致严重中断。同样,如果 SSO 系统遭到入侵,则威胁行为者将可以访问所有包含在内的服务提供商。这就是为什么使用多步验证来保护 SSO 凭据非常重要的原因。
复杂性: 实施 SSO 系统可能很复杂,需要大量的时间和资源投入。
漏洞: 如果 SSO 系统维护不当,则威胁行为者可能会入侵系统并获得对多种服务的访问权限。
局限性: 并非所有应用都支持 SSO,尤其是执行关键后端业务功能且不容易进行重构或替换的遗留业务线 (LOB) 应用。一款稳健的企业密码管理程序可填补这一缺口。
如何实施单点登录
实施单点登录解决方案是一项重大的 IT 项目,必须谨慎进行。以下是应遵循的主要步骤。
记住应避免使用电子邮箱、短信或电话作为身份验证因素,除非网站或应用不支持其他方法。
定义您的需求: 确定哪些服务和应用将包含在 SSO 实施中,以及每个服务和应用的安全和访问控制要求。别忘了您的安全需求,例如多步验证、密码管理和基于角色的访问控制。
选择 SSO 解决方案: 选择 SSO 解决方案或解决方案组合,以满足您的需求。
配置您的身份提供程序: 设置 SSO 解决方案的 IdP 组件。您的 IdP 将负责对用户进行身份验证,并向所包含的服务提供商提供他们的身份信息。
集成服务提供商: 将每个网站和应用与 SSO 解决方案集成。这包括将每个服务提供商配置为与 IdP 进行通信,以接收用户身份信息并验证 SSO 会话的真实性。
测试 SSO 的实施情况: 选择一小部分测试用户,确保他们仍可使用一组凭据访问所需的服务和应用。
在企业范围内部署 SSO 解决方案: 根据您的需求和数据环境,这可能涉及在单独的服务器上部署 IdP 和服务提供商组件,或将它们集成至现有基础设施中。
监视和维护 SSO 解决方案: 定期监视 SSO 解决方案,确保其正常运行,并解决出现的任何问题。
请务必记住,实施 SSO 需要大量的时间和资源投入,并且可能需要几个月才能完成流程。与在 SSO 解决方案和安全最佳做法方面具有专业知识的经验丰富的 IT 专业人员合作也很重要,以确保成功实施。