本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
多VPC私有连接权限
本节总结了使用多VPC私有连接功能的客户端和集群所需的权限。多VPC私有连接要求客户端管理员在将与MSK集群建立托管VPC连接的每台客户端上创建权限。它还要求MSK集群管理员在集MSK群上启用 PrivateLink 连接,并选择身份验证方案来控制对集群的访问。
集群身份验证类型和主题访问权限
为MSK集群启用的身份验证方案开启多VPC私有连接功能。请参阅 多VPC私有连接的要求和限制。如果您要将MSK集群配置为使用SASL/SCRAM身份验证方案,那么 Apache Kafka ACLs 属性allow.everyone.if.no.acl.found=false
是必需的。为集群设置 阿帕奇 Kafka ACLs 后,请更新集群的配置,将该集群的属性 allow.everyone.if.no.acl.found
设置为 false。有关如何更新集群配置的信息,请参阅 亚马逊MSK配置操作。
跨账户集群策略权限
如果 Kafka 客户端的 Amazon 账户与集群不同,请将基于MSK集群的策略附加到MSK集群,授权客户端 root 用户进行跨账户连接。您可以使用MSK控制台中的策略编辑器(VPC集群安全设置 > 编辑集群策略)编辑多集群策略,也可以使用以下方法APIs来管理集群策略:IAM
- PutClusterPolicy
-
将集群策略附加到集群。您可以使用它API来创建或更新指定的MSK集群策略。如果您要更新政策,则请求负载中的 currentVersion 字段为必填字段。
- GetClusterPolicy
-
检索附加到集群的集群策略文档的JSON文本。
- DeleteClusterPolicy
-
删除集群策略。
以下是基本群集策略JSON的示例,类似于MSK控制台策略编辑器中显示的IAM策略。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": [ "123456789012" ] }, "Action": [ "kafka:CreateVpcConnection", "kafka:GetBootstrapBrokers", "kafka:DescribeCluster", "kafka:DescribeClusterV2" ], "Resource": "arn:aws:kafka:us-east-1:123456789012:cluster/testing/de8982fa-8222-4e87-8b20-9bf3cdfa1521-2" } ] }
与MSK集群建立多VPC私有连接的客户端权限
要在 Kafka 客户端和MSK集群之间设置多VPC私有连接,客户端需要一个附加的身份策略,该策略为kafka:CreateVpcConnection
客户端授予权限ec2:CreateTags
和ec2:CreateVPCEndpoint
操作。以下是基本客户端身份策略的示例,JSON以供参考。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "kafka:CreateVpcConnection", "ec2:CreateTags", "ec2:CreateVPCEndpoint" ], "Resource": "*" } ] }