单点登录 (SSO):工作原理、实现方法和优势


什么是单点登录?

SSO 是一种将多个应用程序登录窗口合并到单个屏幕的系统。要访问所有 SaaS 服务,用户只需在单个页面上使用 SSO 输入一次其登录凭据即可。

SSO 广泛应用于企业环境中,其中用户应用程序由内部 IT 团队分配和管理。使用 SaaS 服务的远程员工也受益于 SSO。

想象一下,如果之前被允许进入酒吧的顾客每次想要购买更多酒水时都需要出示身份证,会发生什么情况。一些顾客会对持续不断的检查感到恼火,甚至会试图通过自带酒水来规避检查。

另一方面,大多数企业会简单地验证一次顾客的身份,然后在整个晚上为其提供多种酒水。这与 SSO 系统相同,用户只需创建一次身份,然后即可访问多种服务,而不是多次验证其身份。

许多身份和访问管理 (IAM) 或访问控制解决方案都包含单点登录 (SSO)。验证用户身份对于确定每个用户应该具有的权限至关重要。Cloudflare Zero Trust 就是一个使用 SSO 解决方案控制用户身份的访问控制系统的例子。

单点登录是如何工作的?

SSO 基于服务提供商和身份提供商(如 OneLogin)之间建立信任关系。这种信任关系通常通过身份提供商和服务提供商之间交换证书来建立。该证书可用于检查从身份提供商传输到服务提供商的身份信息,确保服务提供商收到的信息来自可靠的来源。此身份数据以令牌的形式存储在 SSO 中,其中包含有关用户的识别信息,例如电子邮件地址或用户名。

以下是典型的登录流程 -

  • 用户访问服务提供商,即他们想要访问的程序或网站。

  • 服务提供商向 SSO 系统或身份提供商发送令牌,作为验证用户身份的请求的一部分。令牌包含一些有关用户的信息,例如他们的电子邮件地址。

  • 身份提供商首先检查以确定用户是否已通过身份验证;如果已验证,则用户将被授予访问服务提供商应用程序的权限,并将跳过步骤 5。

  • 如果用户尚未登录,系统将提示他们输入身份提供商的凭据进行登录。

  • 这可能很简单,如用户名和密码,也可能包含其他类型的身份验证,例如一次性密码。

  • 当身份提供商检查提供的凭据后,它会向服务提供商返回一个令牌,表明身份验证成功。

  • 用户的浏览器将此令牌发送到服务提供商。

  • 服务提供商在初始配置期间与身份提供商建立的信任连接用于验证服务提供商收到的令牌。

  • 授予用户访问服务提供商的权限。

  • 当用户尝试访问另一个网站时,新网站必须与 SSO 解决方案建立类似的信任关系,并且身份验证将遵循类似的步骤。

实施 SSO 的流程是什么?

SSO 解决方案的部署细节将根据所使用的 SSO 解决方案而有所不同。但是,无论具体步骤如何,都必须确保已为实施明确定义目标和目标。

确保您回答以下问题 -

  • 您为哪些不同类型的用户提供服务,以及他们的不同需求是什么?

  • 您对本地部署还是基于云的解决方案感兴趣?

  • 此解决方案能够扩展以满足您业务的需求吗?

  • 您需要哪些功能来确保只有可信的人员才能登录?MFA、自适应身份验证、设备信任、IP 地址白名单等?

  • 您需要连接哪些系统?您需要 API 访问权限吗?

SSO 的优势

在本节中,让我们看看实施单点登录可能有哪些优势。

帮助用户生成、记住和使用更强的密码

SSO 提示用户生成更强的密码,因为他们只需要使用一个密码。使用 SSO,大多数用户会选择更强的密码。

您如何知道密码是否“强”?强密码难以猜测,并且足够随机,以至于蛮力攻击不太可能成功。“w7:g"5h$G@" 是一个不错的密码;“password123”则不是。

不应重复使用密码

当用户需要记住多个应用程序和服务的密码时,可能会出现“密码疲劳”的情况,导致在服务之间重复使用密码。

对多个服务使用相同的密码存在重大的安全风险,因为所有服务的安全级别都与密码保护最弱的服务一样:如果该服务的密码数据库遭到泄露,攻击者可以使用该密码破解用户的其他所有服务。

SSO 通过将所有登录整合到单个帐户中来避免此问题。

提高对密码策略的遵守率

SSO 允许 IT 团队通过集中密码输入来轻松执行密码安全策略。例如,一些企业要求用户定期更改密码。

使用 SSO 更容易重置密码,因为用户只需更改一个密码,而不是跨多个应用程序和服务更改多个密码。(虽然频繁重置密码的有效性受到质疑,但一些 IT 部门仍然认为它是其安全策略的关键部分。

多因素身份验证

MFA 或多因素身份验证是指使用多个身份识别要素来验证用户身份。除了提供用户名和密码外,用户可能还需要连接 USB 设备或输入其智能手机上显示的代码。用户拥有此实物是第二个“因素”,用于验证他们就是他们声称的那个人。MFA 比仅使用密码安全得多。

SSO 允许您从单个位置启用 MFA,而不是必须为三个、四个或几十个应用程序启用 MFA,而这些应用程序可能无法支持 MFA。

管理员可以限制在特定时间段后重新输入密码,以确保同一用户仍在已登录的设备上处于活动状态。

SSO 允许他们从单个位置为所有内部应用程序执行此操作,而不是必须在各个应用程序中执行此操作,其中一些应用程序可能不支持它。

在内部管理凭据,而不是将它们存储在外部

用户凭据通常由程序和服务远程持有,未经管理,这些程序和服务可能遵守或不遵守标准安全实践。另一方面,SSO 将它们存储在 IT 团队拥有更多控制权的环境中。

减少密码恢复带来的时间损失

除了上述安全优势外,SSO 还帮助内部团队节省时间。用户花费更少的时间登录多个应用程序来完成工作,而 IT 花费更少的时间让用户恢复或重置数十个应用程序的密码。这有可能提高工作场所的生产力。

更新于: 2022 年 6 月 2 日

1K+ 阅读量

开启您的 职业生涯

通过完成课程获得认证

立即开始
广告