

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

# Restrict AWS 可以与 Connect Customer 关联的资源
<a name="restrict-access-examples"></a>

创建实例[时，每个 Connect 客户实例都与一个 IAM ](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-linked-role) 服务相关角色相关联。Connect 客户可以针对通话录音存储（亚马逊 S3 存储桶）、自然语言机器人（亚马逊 Lex 机器人）和数据流（亚马逊 Kinesis 数据流）等用例与其他 AWS 服务集成。Connect 客户扮演服务相关角色与这些其他服务进行交互。该策略首先作为 Connect 客户服务（又由 AWS 管理员控制台调用）上相应 API 的一部分添加到服务相关角色中。例如，如果您想将某个 Amazon S3 存储桶用于 Connect 客户实例，则必须将该存储桶传递给 [ AssociateInstanceStorageConfig ](https://docs.aws.amazon.com/connect/latest/APIReference/API_AssociateInstanceStorageConfig.html) API。

有关 Connect 客户定义的一组 IAM [ 操作，请参阅连接客户定义的操作](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonconnect.html#amazonconnect-actions-as-permissions)。

以下是一些如何限制对可能与 Connect Customer 实例关联的其他资源的访问权限的示例。它们应应用于与 Connect 客户 API 或 Connect Customer 控制台进行交互的用户或角色。

**注意**  
在这些示例中，具有显式 `Deny` 的策略将覆盖 `Allow` 策略。

有关您可以使用哪些资源、条件密钥和依赖 API 来限制访问的更多信息，请参阅 Connect Customer 的[操作、资源和条件密钥](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonconnect.html)。

## 示例 1：限制哪些 Amazon S3 存储桶可以与 Connect 客户实例关联
<a name="example1-restrict-buckets"></a>

此示例允许 IAM 委托人关联给定 Connect 客户实例 ARN 的通话录音的 Amazon S3 存储桶和名`my-connect-recording-bucket`为的特定 Amazon S3 存储桶。`AttachRolePolicy`和`PutRolePolicy `操作的范围限定为 Connect Customer 服务相关角色（本示例中使用通配符，但如果需要，您可以为实例提供角色 ARN）。

**注意**  
要使用 AWS KMS 密钥加密该存储桶中的录音，需要额外的策略。

## 示例 2：限制哪个 AWS Lambda 函数可以与 Connect Customer 实例相关联
<a name="example2-restrict-lambda-functions"></a>

AWS Lambda 函数与 Connect Customer 实例相关联，但是 Connect Customer 服务相关角色不用于调用它们，因此未进行修改。取而代之的是，通过 `lambda:AddPermission` API 向函数添加策略，允许给定的 Connect 客户实例调用该函数。

要限制哪些函数可以与 Connect 客户实例关联，您可以指定用户可以用来调用的 Lambda 函数 ARN：`lambda:AddPermission`

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": [
                "connect:AssociateLambdaFunction",
                "lambda:AddPermission"
            ],
            "Resource": [
                "arn:aws:connect:{{us-east-1}}:{{111122223333}}:instance/{{instance-id}}",
                "arn:aws:lambda:*:*:function:{{my-function}}"
            ]
        }
    ]
}
```

------

## 示例 3：限制哪些 Amazon Kinesis 数据流可以与 Connect 客户实例关联
<a name="example3-restrict-kinesis-data-streams"></a>

此示例遵循与 Amazon S3 示例类似的模型。它限制了哪些特定的 Kinesis 数据流可能与用于传送联系人记录的给定 Connect 客户实例相关联。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": [
                "connect:UpdateInstanceStorageConfig",
                "connect:AssociateInstanceStorageConfig"
            ],
            "Resource": "arn:aws:connect:{{us-east-1}}:{{111122223333}}:instance/{{instance-id}}",
            "Condition": {
                "StringEquals": {
                    "connect:StorageResourceType": "CONTACT_TRACE_RECORDS"
                }
            }
        },
        {
            "Sid": "VisualEditor1",
            "Effect": "Allow",
            "Action": [
                "kinesis:DescribeStream",
                "iam:PutRolePolicy"
            ],
            "Resource": [
                "arn:aws:iam::{{111122223333}}:role/aws-service-role/connect.amazonaws.com/*",
                "arn:aws:kinesis:*:{{111122223333}}:stream/{{stream-name}}"
            ]
        },
        {
            "Sid": "VisualEditor2",
            "Effect": "Allow",
            "Action": "kinesis:ListStreams",
            "Resource": "*"
        }
    ]
}
```

------