

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 将您的身份提供商（IdP）与 Amazon Connect Global Resiliency SAML 登录端点集成
<a name="integrate-idp"></a>

要使您的代理能够登录一次并登录到两个 AWS 区域以处理来自当前活动区域的联系人，您需要将 IAM 设置配置为使用全局登录 SAML 终端节点。

## 开始前的准备工作
<a name="before-idp"></a>

您必须为 Amazon Connect 实例启用 SAML，才能使用 Amazon Connect Global Resiliency。有关 IAM 联合身份验证入门的信息，请参阅[使 SAML 2.0 联合身份用户能够访问 AWS 管理控制台](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_enable-console-saml.html)。

## 需要了解的重要事项
<a name="important-integrate-idp"></a>
+ 仅在使用全局登录端点时才支持代理故障转移。
+ 要执行本主题中的步骤，您需要使用您的实例 ID。有关其查找方法的说明，请参阅[找到您的 Amazon Connect 实例 ID 或 ARN](find-instance-arn.md)。
+ 此外，还需要知道您的 Amazon Connect 实例的源区域。有关其查找方法的说明，请参阅[如何查找您的 Amazon Connect 实例的源区域](create-replica-connect-instance.md#how-to-find-source-region-of-instances)。
+ 如果您要在内嵌框架中嵌入 Connect 应用程序，则必须确保您的域出现在源实例和副本实例的 Approved Origins 列表中，这样才能正常运行全局登录。

  要在实例级别配置 Approved Origins，请按照 [使用 Amazon Connect 中的集成应用程序的允许列表](app-integration.md) 中的步骤操作。
+ 座席必须已*同时* 在您的源和副本 Amazon Connect 实例中创建，并且其用户名必须与身份提供商（IdP）中的角色会话名称相同。否则，您将收到 `UserNotOnboardedException` 异常，并有失去实例之间的座席冗余功能的风险。
+ 在座席尝试登录之前，您必须将座席与流量分配组相关联。否则，座席登录将失败，并显示 `ResourceNotFoundException`。有关如何设置您的流量分配组以及如何将座席与其关联的信息，请参阅[将代理关联到多个 AWS 区域的 Amazon Connect 实例](associate-agents-across-regions.md)。
+ 当您的座席使用新的 SAML 登录 URL 向 Amazon Connect 进行联合身份验证时，无论在流量分配组中如何配置 `SignInConfig`，Amazon Connect Global Resiliency 都会尝试将座席记录到您的源和副本区域/实例中。您可以通过检查 CloudTrail 日志来验证这一点。
+ 默认流量通讯组中的`SignInConfig`分布仅决定 AWS 区域 哪个用于简化登录。无论您的 `SignInConfig` 分配是如何配置的，Amazon Connect 都会始终尝试将座席登录到您的 Amazon Connect 实例所在的两个区域。
+ 复制 Amazon Connect 实例后，只会为您的实例生成一个 SAML 登录端点。此端点的 URL AWS 区域 中始终包含来源。
+ 在将个性化 SAML 登录 URL 与 Amazon Connect Global Resiliency 结合使用时，您无需配置中继状态。

## 如何集成身份提供者
<a name="howto-integrate-idp"></a>

1. 当您使用 [ReplicateInstance](https://docs.aws.amazon.com/connect/latest/APIReference/API_ReplicateInstance.html)API 创建 Amazon Connect 实例的副本时，系统会为您的 Amazon Connect 实例生成一个个性化的 SAML 登录网址。生成的 URL 采用以下格式：

   `https://instance-id.source-region.sign-in.connect.aws/saml`

   1. *instance-id*是您的实例组中任一实例的实例 ID。源区域和副本区域中的实例 ID 相同。

   1. *source-region*对应于调[ReplicateInstance](https://docs.aws.amazon.com/connect/latest/APIReference/API_ReplicateInstance.html)用 API 的源 AWS 区域。

1. 将以下信任策略添加到您的 IAM 联合身份验证角色中。使用全局登录 SAML 端点的 URL，如以下示例中所示。

------
#### [ JSON ]

****  

   ```
   {
      "Version":"2012-10-17",		 	 	 
      "Statement":[
         {
            "Effect":"Allow",
            "Principal":{
               "Federated":[
                 "arn:aws:iam::111122223333:saml-provider/MySAMLProvider"
               ]
            },
            "Action":"sts:AssumeRoleWithSAML",
            "Condition":{
               "StringLike":{
                  "SAML:aud":[
                     "https://instance-id.source-region.sign-in.connect.aws/saml*"
                  ]
               }
            }
         }
      ]
   }
   ```

------
**注意**  
`saml-provider-arn` 是在 IAM 中创建的身份提供者资源。

1. 为您的 IAM 联合身份验证角色上的 `InstanceId` 授予对 `connect:GetFederationToken` 的访问权限。例如：

------
#### [ JSON ]

****  

   ```
   {
   "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "GetFederationTokenAccess",
               "Effect": "Allow",
               "Action": "connect:GetFederationToken",
               "Resource": "*",
               "Condition": {
                   "StringEquals": {
                       "connect:InstanceId": "your-instance-id"
                   }
               }
           }
       ]
   }
   ```

------

1. 使用以下属性和值字符串向您的身份提供者应用程序添加属性映射。    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_cn/connect/latest/adminguide/integrate-idp.html)

1. 将身份提供者的断言消费者服务 (ACS) URL 配置为指向您的个性化 SAML 登录 URL。对 ACS URL 使用以下示例：

   ```
   https://instance-id.source-region.sign-in.connect.aws/saml?&instanceId=instance-id&accountId=your AWS account ID&role=saml-federation-role&idp=your SAML IDP&destination=optional-destination
   ```

1. 在 URL 参数中设置以下字段：
   + `instanceId`：Amazon Connect 实例的标识符。有关如何查找实例 ID 的说明，请参阅[找到您的 Amazon Connect 实例 ID 或 ARN](find-instance-arn.md)。
   + `accountId`：Amazon Connect 实例所在的 AWS 账户 ID。
   + `role`：设置为用于 Amazon Connect 联合身份验证的 SAML 角色的名称或 Amazon 资源名称 (ARN)。
   + `idp`：设置为 IAM 中 SAML 身份提供商的名称或 Amazon 资源名称 (ARN)。
   + `destination`：设置为座席在登录后将在其中登录实例的可选路径（例如：`/agent-app-v2`）。