什么是 SSO?
单点登录(SSO)是一种身份验证解决方案,可让用户通过一次性用户身份验证登录多个应用程序和网站。鉴于当今的用户经常直接从其浏览器访问应用程序,因此组织正在优先考虑改善安全性和用户体验的访问管理策略。SSO 兼具这两方面的优点,因为一旦验证身份,用户就可以访问所有受密码保护的资源,而无需重复登录。
为什么 SSO 很重要?
使用 SSO 简化用户登录可以通过多种方式使用户和组织受益。
加强密码安全
当人们不使用 SSO 时,他们必须记住不同网站的多个密码。这可能会导致不推荐的安全做法,例如对不同账户使用简单或重复的密码。此外,用户在登录服务时可能会忘记或输入错误的凭证。SSO 可防止密码疲劳并鼓励用户创建可用于多个网站的强密码。
提高生产效率
员工经常使用多个需要单独身份验证的企业应用程序。手动输入每个应用程序的用户名和密码不但费时,而且效率很低。SSO 简化了企业应用程序的用户验证过程,并且更容易访问受保护的资源。
降低成本
在尝试记住大量密码时,企业用户可能会忘记他们的登录凭证。这将导致频繁请求检索或重置其密码,从而增加内部 IT 团队的工作负载。实施 SSO 可减少忘记密码的次数,从而最大限度地减少处理密码重置请求的支持资源。
改善安全状况
通过最大限度地减少每个用户的密码数量,SSO 促进了用户访问审计,并为所有类型的数据提供了强大的访问控制。这降低了针对密码的安全事件的风险,同时帮助组织遵守数据安全法规。
提供更好的客户体验
云应用程序供应商使用 SSO 为最终用户提供无缝登录体验和凭证管理。用户管理的密码更少,并且仍然可以安全地访问完成日常工作所需的信息和应用程序。
SSO 的工作原理?
SSO 在应用程序或服务与外部服务提供商(也称为身份提供者(IdP))之间建立信任。这是通过在应用程序和集中式 SSO 服务之间执行的一系列身份验证、验证和通信步骤来实现的。SSO 解决方案中的重要组件如下所示。
SSO 服务
SSO 服务是用户登录时应用程序依赖的中心服务。如果未经身份验证的用户请求访问应用程序,应用程序会将他们重定向到 SSO 服务。然后,该服务对用户进行身份验证并将用户重定向回原始应用程序。该服务通常在专用的 SSO 策略服务器上运行。
SSO 令牌
SSO 令牌是包含用户识别信息的数字文件,例如用户名或电子邮件地址。当用户请求访问应用程序时,应用程序会与 SSO 服务交换 SSO 令牌以对用户进行身份验证。
SSO 流程
SSO 流程如下:
- 当用户登录应用程序时,应用程序会生成 SSO 令牌并向 SSO 服务发送身份验证请求。
- 该服务会检查用户之前是否在系统中进行了身份验证。如果是,它会向应用程序发送一个身份验证确认响应,以授予用户访问权限。
- 如果用户没有经过验证的凭证,SSO 服务会将用户重定向到中央登录系统并提示用户提交其用户名和密码。
- 提交后,服务会验证用户凭证并将肯定响应发送到应用程序。
- 否则,用户会收到错误消息并且必须重新输入凭证。多次尝试登录失败可能会导致服务阻止用户在固定的时间段内进行更多尝试。
SSO 有哪些类型?
SSO 解决方案使用不同的标准和协议来对用户凭证进行验证和身份验证。
SAML
SAML(或安全断言标记语言)是应用程序用来与 SSO 服务交换身份验证信息的协议或规则集。SAML 使用 XML(一种浏览器友好的标记语言)来交换用户标识数据。基于 SAML 的 SSO 服务提供更好的安全性和灵活性,因为应用程序不需要在其系统上存储用户凭证。
OAuth
OAuth(或开放授权)是一种开放标准,它允许应用程序安全地从其他网站获取用户信息,而无需提供密码。应用程序不是请求用户密码,而是使用 OAuth 来获得用户访问受密码保护的数据的权限。OAuth 通过 API 建立应用程序之间的信任,允许应用程序在已建立的框架中发送和响应身份验证请求。
OIDC
OpenID 是使用一组用户凭证访问多个站点的方法。它允许服务提供商承担验证用户凭证的角色。Web 应用程序不是将身份验证令牌传递给第三方身份提供商,而是使用 OIDC 来请求附加信息并验证用户的真实性。
Kerberos
Kerberos 是一种基于票证的身份验证系统,可让两方或多方在网络上相互验证其身份。它使用安全密码学来防止未经授权访问在服务器、客户端和密钥分发中心之间传输的标识信息。
SSO 安全吗?
是的,SSO 是一种先进且理想的身份访问管理解决方案。部署后,单点登录解决方案可帮助组织对企业应用程序和资源进行用户访问管理。SSO 解决方案使应用程序用户更容易设置和记住强密码。此外,IT 团队可以使用 SSO 工具监控用户行为,提高系统弹性,降低安全风险。
SSO 与其他访问管理解决方案相比如何?
根据您的要求,您可以选择多种身份和访问管理解决方案。
联合身份管理
联合身份管理(FIM)是一个数字框架,它允许来自不同供应商的多个应用程序共享、管理和验证用户身份。例如,FIM 允许您的员工登录到一个应用程序,然后无需再次登录即可访问其他几个企业应用程序。FIM 将使用可信的身份提供程序对服务提供者提交的凭证进行身份验证。
SSO 与联合身份管理
联合身份管理是针对跨域应用程序的综合身份认证和管理解决方案,而单点登录(SSO)则是 FIM 模型中的一项特定功能。虽然 FIM 允许用户通过一次登录访问来自不同供应商的服务,但 SSO 仅限于由单个供应商托管的服务或应用程序。
相同身份登录
相同身份登录(首字母缩略词同为 SSO)是一种数字解决方案,可在用户访问的设备上存储和同步用户凭证。它类似于密码保险库或密码管理器,允许用户在不同设备上登录多个应用程序,而无需记住凭证。
单点登录与相同身份登录
单点登录系统需要用户进行一次性身份验证。登录后,用户无需重新进行身份验证即可访问其他 Web 应用程序和服务。同时,相同身份登录要求用户每次使用相同的身份验证凭证重复登录过程。
多重身份验证
多重身份验证是一种用户身份验证框架,使用两种或多种技术来验证用户的身份。例如,用户在网页上输入他们的电子邮件地址和密码,然后键入发送到他们手机的一次性密码(OTP)以实现安全访问。
SSO 与多重身份验证
SSO 允许组织通过一次登录即可访问所有连接的服务,从而简化和加强密码安全性。多重身份验证提供额外的安全层,以减少通过被盗凭证进行未经授权访问的可能性。可以集成 SSO 和多重身份验证来改善 Web 应用程序的安全状况。
AWS 如何帮助 SSO?
AWS IAM Identity Center 是一种云身份验证解决方案,允许组织安全地创建或连接其员工身份,并跨 AWS 账户和应用程序集中管理其访问权限。您可以创建用户身份,或者从 Okta 通用目录或 Azure 等外部身份提供商导入用户身份。AWS IAM Identity Center 的一些优势包括:
- 用于管理 AWS 账户或业务应用程序身份的中央控制面板。
- 多重身份验证支持,为用户提供高度安全的身份验证体验。
- 支持与其他 AWS 应用程序集成,以实现零配置身份验证和授权。
立即创建免费 AWS 账户,开始在 AWS 上使用 SSO。