

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

# 服务执行角色 (SER)
<a name="msk-replicator-ser"></a>

MSK Replicator 使用服务执行角色 (SER) 从您的源集群中读取数据并写入目标集群。您可以在创建复制器时指定此角色。

您可以让 MSK 控制台自动创建角色，也可以提供自己的 IAM 角色。如果您提供自己的角色，我们建议您为其附加[https://docs.aws.amazon.com/msk/latest/developerguide/security-iam-awsmanpol-AWSMSKReplicatorExecutionRole.html](https://docs.aws.amazon.com/msk/latest/developerguide/security-iam-awsmanpol-AWSMSKReplicatorExecutionRole.html)托管 IAM 策略。

服务执行角色必须具有允许`kafka.amazonaws.com`服务主体担任该角色的信任策略。以下是信任策略的示例。`<yourAccountID>`用您的实际账户 ID 替换。

```
{
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "kafka.amazonaws.com"
      },
      "Action": "sts:AssumeRole",
      "Condition": {
        "StringEquals": {
          "aws:SourceAccount": "<yourAccountID>"
        }
      }
    }
  ]
}
```

如果想要限制 `kafka-cluster:WriteData` 权限，请参阅 [How IAM access control for Amazon MSK works](https://docs.aws.amazon.com/msk/latest/developerguide/iam-access-control.html#how-to-use-iam-access-control) 中的 *Create authorization policies* 部分。您需要为源集群和目标集群添加`kafka-cluster:WriteDataIdempotently`权限。

如果您在多个 MSK 复制器之间重复使用服务执行角色，则它们都受相同的 Kafka 配额的约束。如果要为每个复制器保留单独的限额，请使用不同的服务执行角色。