

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

# 在 Amazon Connect 中设置 IP 地址限制和会话超时
<a name="authentication-profiles"></a>

**注意**  
此功能为预览版，可能会发生变化。要获得对此功能的访问权限，请联系您的 Amazon Connect 解决方案架构师、技术客户经理或 支持。

例如，要进一步锁定您的联络中心，以符合您所在行业的要求和法规，您可以设置 IP 地址限制和会话超时。
+ IP 地址限制要求座席只能通过您的 VPN 登录，或者阻止来自特定国家/地区或子网的访问。
+ 会话超时要求座席重新登录 Amazon Connect。

在 Amazon Connect 中，您可以配置*身份验证配置文件*，以设置 IP 地址限制和登录座席的会话持续时间。身份验证配置文件是一种存储联络中心用户身份验证设置的资源。

## 身份验证配置文件入门
<a name="get-started-auth-profiles"></a>

您的 Amazon Connect 实例包含默认的身份验证配置文件。默认情况下，此身份验证配置文件适用于联络中心**的所有用户**，无需分配。

身份验证配置文件目前只能通过 AWS SDK 进行配置。要配置您的默认身份验证配置文件，请使用以下命令。

**提示**  
您需要您的 Amazon Connect 实例 ID 才能运行这些命令。有关如何查找实例 ID 的说明，请参阅 [找到您的 Amazon Connect 实例 ID 或 ARN](find-instance-arn.md)。

1. 列出实例中的身份验证配置文件，以获取要更新的身份验证配置文件的配置文件 ID。您可以调用 [ListAuthenticationProfile](https://docs.aws.amazon.com/connect/latest/APIReference/API_ListAuthenticationProfile.html)API 或运行 `list-authentication-profiles` CLI 命令。

   以下是示例 `list-authentication-profiles` 命令。

   ```
   aws connect list-authentication-profiles --instance-id {{your-instance-id}}
   ```

   以下是 `list-authentication-profiles` 命令返回的默认身份验证配置文件示例。

   ```
   {
       "AuthenticationProfileSummaryList": [
           {
           "Arn": "arn:aws:connect:us-west-2:{{account-id}}:instance/{{your-instance-id}}/authentication-profile/{{profile-id}}",
           "Id": "{{profile-id}}",
           "IsDefault": true,
           "LastModifiedRegion": "us-west-2",
           "LastModifiedTime": 1.719249173664E9,
           "Name": "Default Authentication Profile"
           }
       ],
       "NextToken": null
   }
   ```

1. 查看要更新的身份验证配置文件的配置。您可以调用[DescribeAuthenticationProfile](https://docs.aws.amazon.com/connect/latest/APIReference/API_DescribeAuthenticationProfile.html)或运行 `describe-authentication-profile` CLI 命令。

   以下是示例 `describe-authentication-profile` 命令。

   ```
   aws connect describe-authentication-profile --instance-id {{your-instance-id}} --profile-id {{profile-id}}
   ```

   以下是 `describe-authentication-profile` 命令返回信息的示例。

   ```
   {
       "AuthenticationProfile": {
       "AllowedIps": [],
       "Arn": "arn:aws:connect:us-west-2:{{account-id}}:instance/{{your-instance-id}}/authentication-profile/{{profile-id}}",
       "BlockedIps": [],
       "CreatedTime": 1.718999177811E9,
       "Description": "A basic default Authentication Profile",
       "Id": "{{profile-id}}",
       "IsDefault": true,
       "LastModifiedRegion": "us-west-2",
       "LastModifiedTime": 1.719249173664E9,
       "MaxSessionDuration": 720,
       "Name": "Default Authentication Profile",
       "PeriodicSessionDuration": 60,
       "SessionInactivityDuration": 60,
       "SessionInactivityHandlingEnabled": false
       }
   }
   ```

   有关每个字段的描述，请参阅 *Amazon Connect API 参考[AuthenticationProfile](https://docs.aws.amazon.com/connect/latest/APIReference/API_AuthenticationProfile.html)*中的。

1. 使用 [UpdateAuthenticationProfile](https://docs.aws.amazon.com/connect/latest/APIReference/API_UpdateAuthenticationProfile.html)API 或 `update-authentication-profile` CLI 命令配置身份验证配置文件。除 `InstanceId` 和 `ProfileId` 之外的所有字段均为可选字段。只有您在 API 调用中定义的设置才会被更改。

   以下是示例 `update-authentication-profile` 命令。它可以配置自动分配给所有用户的默认身份验证配置文件。它允许某些 IP 地址，屏蔽其他 IP 地址，启用用户不活动时自动注销，并将[会话非活动持续时间](#configure-session-timeouts)设置为 60 分钟。

   ```
   aws connect update-authentication-profile 
       --instance-id {{your-instance-id}} 
       --profile-id {{profile-id}}
       --name "Default Authentication Profile"
       --description "A basic default Authentication Profile"
       --allowed-ips "ip-range-1" "ip-range-2" ...
       --blocked-ips "ip-range-3" "ip-range-4" ...
       --session-inactivity-handling-enabled
       --session-inactivity-duration 60
   ```

## 配置基于 IP 的访问控制
<a name="configure-ip-based-ac"></a>

如果您要根据 IP 地址配置对联络中心的访问，则可以使用身份验证配置文件的基于 IP 的访问控制功能。

在身份验证配置文件中可以配置两种类型的 IP 配置：允许的 IP 地址范围和屏蔽的 IP 地址范围。以下几点介绍了基于 IP 的访问控制的工作原理。
+ IP 地址可以是 IPV4 *和*两种 IPV6 格式。
+ 您可以用 CIDR 符号定义单个 IP 地址*和* IP 地址范围。
+ 屏蔽的 IP 配置始终优先。
+ 如果在允许 IP 列表中定义了 IP 地址，则*只*允许使用这些 IP 地址。
  + 这些 IP 地址可以通过屏蔽的 IP 列表缩小范围。
+ 如果只定义了屏蔽的 IP 地址，则*除*屏蔽列表中定义的 IP 地址外，任何 IP 地址都可以访问实例。
+ 如果在允许和屏蔽的 IP 地址列表中都定义了 IP 地址，则*只*允许在允许范围内定义的 IP 地址，*不包括*屏蔽范围内的任何 IP 地址。

**注意**  
基于 IP 地址的访问控制不适用于[紧急管理员登录](emergency-admin-login.md)。要对此用户施加限制，您可以[在 IAM 策略中对 API `connect:AdminGetEmergencyAccessToken` 应用 `SourceIp` 限制](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_examples_aws_deny-ip.html)。

当用户的 IP 地址被实例确定为被屏蔽时，此用户的会话将失效。[登录/注销报告](login-logout-reports.md)中会发布注销事件。

### 用户在 IP 地址检查失败时的体验
<a name="ccp-ip"></a>

**座席**

当座席在联络人控制面板 (CCP) 中处于活动状态时，会定期检查其 IP 地址。

以下是 IP 地址未通过检查时的情况：
+ 如果座席未处于活动通话状态，则如果座席的 IP 地址更改为不允许使用的地址，则此座席将被注销。
+ 如果代理正在通话，则代理的会话将失效。但是，这并不能结束当前正在进行的呼叫。将发生以下情况：

  1. 座席无法采取任何操作，例如更改座席状态、转接通话、搁置通话、结束通话或创建案例。

  1. 座席将被告知其被限制在 CCP 中采取操作。

  1. 如果他们在会话失效后成功登录，他们就会重新处于活动通话状态，可以再次进行操作。

**使用管理员网站的 Connect Customer 管理员和用户**

当管理员和其他用户在 Connect Customer 管理员网站上执行操作（例如保存资源更新或进入正在进行的通话）时，如果 IP 地址检查失败，他们会被自动注销。

## IP 地址配置示例
<a name="example-ip-addresses"></a>

### 示例 1：仅在允许的 IP 列表中定义的 IP 地址
<a name="example-ip1"></a>
+ AllowedIps: [ `111.222.0.0/16` ]
+ BlockedIps: [ ]

结果：
+ 只有介于 `111.222.0.0` 和 `111.222.255.255` 之间的 IP 地址才允许访问此实例。

### 示例 2：仅在屏蔽的 IP 列表中定义的 IP 地址
<a name="example-ip2"></a>
+ AllowedIps: [ ]
+ BlockedIps: [`155.155.155.0/24` ]

结果：
+ 允许使用所有 IP 地址，*但* IP 地址范围 `155.155.155.0 - 155.155.155.255` 包含在内的除外。

### 示例 3：同时在允许的 IP 列表和阻止的 IP 列表中定义的 IP 地址
<a name="example-ip3"></a>
+ AllowedIps: [` 200.255.0.0/16` ]
+ BlockedIps: [`200.255.10.0/24, 200.255.40.50, 192.123.211.211` ]

结果：
+ 允许介于 `200.255.0.0 - 200.255.255.255` 两者之间的 IP 地址，不包括 `(200.255.10.0 - 200.255.10.255 AND 200.255.40.50)`。
+ 实际上，`200.255.0.0 - 200.255.9.255, 200.255.11.0 - 200.255.40.49, 200.255.40.51 - 200.255.255.255` 是允许的。
+ `192.123.211.211` 实际上会被忽略，因为它不在允许的范围内。

### 示例 4：允许的 IP 列表或屏蔽的 IP 列表中均未定义 IP 地址
<a name="example-ip4"></a>
+ AllowedIps: [ ]
+ BlockedIps: [ ]

在这种情况下，没有任何限制。

**重要**  
该`allowedIps`列表定义了仅当联络中心不为空时*才 IPs *允许进入联络中心的范围。如果为空，则允许*任何* IP 地址访问您的联络中心，除非被 `blockedIps` 列表明确屏蔽。

## 配置用户会话超时
<a name="configure-session-timeouts"></a>

Amazon Connect 会话定义为对联络中心网站进行持续的身份验证访问。有两种会话超时适用于联络中心的用户会话：
+ **最长会话持续时间**：此值表示联络中心用户在被迫再次登录之前可以登录的最长时间段。此值默认为 12 小时，不可配置。
+ **会话不活动持续时间：**：此值表示座席处于非活动状态时自动退出联络中心之前的时段。

默认情况下，您的 Amazon Connect 实例中的用户将保持登录状态，直到 12 小时的最长会话持续时间，并且不会因为处于非活动状态而自动注销。但是，具有更严格的安全性和合规性要求的组织可以利用身份验证配置文件在用户处于非活动状态时启用自动注销。启用后，此功能将监视用户活动模式，并在配置的会话非活动持续时间过后自动结束会话。

执行以下任一操作时，联络中心用户均被视为活跃用户：
+ 联系人控制面板 (CCP)、座席工作区或管理员网站上的鼠标和键盘活动
+ 是否有活跃的语音联系人

如果确定用户处于非活动状态，屏幕上将出现一个弹出窗口，警告用户由于不活动而他们的会话即将过期。用户可以选择保持登录状态或注销状态。

要选择在用户不活动时自动注销，请使用 Amazon Connect 软件开发工具包对实例中的身份验证配置文件执行以下 API 调用。

```
aws connect update-authentication-profile 
    --instance-id <your-instance-id> 
    --profile-id <profile-id>
    --session-inactivity-handling-enabled
    --session-inactivity-duration <minutes between 15 and 720>
```

**注意**  
将联络中心与第三方供应商（例如 Salesforce Service Cloud Voice (SCV)）集成的客户应先参考供应商文档，以确定是否支持此功能，然后才能启用非活动状态自动注销。

**注意**  
利用 AmazonConnectStreams 或 AmazonConnect软件开发工具包将其现有网络应用程序与 Amazon Connect 集成的客户必须将活动处理作为集成的一部分，然后才能在用户不活动时启用自动注销。有关更多信息，请参阅 AmazonConnectStreams 或 AmazonConnect SDK 文档。

**注意**  
在采用[拆分 CCP 模式的虚拟桌面基础架构 (VDI)](using-ccp-vdi.md#use-split-ccp) 中使用 Amazon Connect 时，不支持在用户不活动时自动注销。