如何使用 AWS SSO 为我的 Amazon Connect 实例设置基于 SAML 2.0 的身份验证?

上次更新日期:2021 年 8 月 5 日

我想使用 AWS Single Sign-On (AWS SSO) 为我的 Amazon Connect 实例设置基于 SAML 2.0 的身份验证。该如何操作?

简短描述

要为您的 Amazon Connect 实例设置基于 SAML 2.0 的身份验证,请执行以下操作:

重要提示:请务必在您的 Amazon Connect 实例所在的 AWS 区域执行以下步骤。

解决方法

创建使用基于 SAML 2.0 的身份验证的 Amazon Connect 实例

按照创建 Amazon Connect 实例中的说明进行操作。配置实例时,请确保执行以下操作:

创建 AWS SSO 云应用程序以连接到您的 Amazon Connect 实例

按照 AWS SSO 用户指南的添加和配置云应用程序中的说明进行操作。配置云应用程序时,请确保执行以下操作:

  • 选择 Amazon Connect 作为云应用程序的服务提供商。
  • AWS SSO 元数据下,下载 AWS SSO SAML 元数据文件AWS SSO 证书
    注意:您需要这些文件才能设置 IAM IdP。如果您使用的是 AWS SSO 以外的 IdP,则必须从该 IdP 中获取 SAML 元数据文件。
  • 应用程序属性下,接受默认的中继状态

创建 IAM IdP

按照创建和管理 IAM 身份提供商 (控制台) 中的说明进行操作。创建 IdP 时,请确保执行以下操作:

  • 对于提供商名称,输入 ConnectSSO
  • 对于元数据文档,请选择您在上一步中下载的 AWS SSO SAML 元数据文件。

重要提示:记下 IdP 的 Amazon 资源名称 (ARN)。您需要 ARN 来将 Amazon Connect 实例的用户属性映射到 AWS SSO 属性。

为您的 Amazon Connect 实例创建允许 GetFederationToken 操作的 IAM 策略

使用以下 JSON 模板创建名为 Connect-SSO-Policy 的 IAM 策略

重要提示:<connect instance ARN> 替换为 Amazon Connect 实例的 ARN。

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "Statement1",
            "Effect": "Allow",
            "Action": "connect:GetFederationToken",
            "Resource": [
                "<connect instance ARN>/user/${aws:userid}"
            ]
        }
    ]
}

有关更多信息,请参阅创建 IAM 策略GetFederationToken

创建 IAM 角色,该角色授予联合身份用户访问您的 Amazon Connect 实例的权限

按照 AWS IAM 用户指南的为 SAML 创建角色中的说明进行操作。创建 IAM 角色时,请确保执行以下操作:

  • 对于 SAML 提供商,请输入 Connect-SSO
  • 选择允许程序访问和 AWS 管理控制台访问
  • 对于策略,请选择您在上一步中创建的 Connect-SSO-Policy
  • 对于角色名称,请输入 Connect-SSO

重要提示:记下 IAM 角色的 ARN。您需要 ARN 来将 Amazon Connect 实例的用户属性映射到 AWS SSO 属性。

将 Amazon Connect 实例的用户属性映射到 AWS SSO 属性

按照将应用程序中的属性映射到 AWS SSO 属性中的说明进行操作。映射属性时,请确保添加以下属性和值:

重要提示:<IAM role ARN> 替换为 IAM 角色的 ARN。将 <IAM IdP ARN> 替换为 IAM IdP 的 ARN。

属性 Value
主题 ${user:email}
https://aws.amazon.com/SAML/Attributes/RoleSessionName ${user:email}
https://aws.amazon.com/SAML/Attributes/Role <IAM 角色 ARN>,<IAM IdP ARN>

有关详细信息,请参阅属性映射

在 AWS SSO 中创建用户并将其分配给您的 AWS SSO 云应用程序

按照管理 AWS SSO 中的身份的说明进行操作。

使用 IdP 和创建的 AWS SSO 用户凭证之一登录 Amazon Connect 来测试您的设置

按照 AWS SSO 用户指南的如何登录用户门户中的说明进行操作。