IAM 授權政策動作和資源的語意 - Amazon Managed Streaming for Apache Kafka

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

IAM 授權政策動作和資源的語意

本節說明您可以在IAM授權政策中使用的動作和資源元素語義。如需政策範例,請參閱 建立IAM角色的授權政策

授權政策動作

下表列出當您使用 Amazon 的IAM存取控制時,可以包含在授權政策中的動作MSK。當您在授權政策中加入來自表格動作資料欄中的動作時,您還必須加入必要動作資料欄中的對應動作。

動作 描述 必要的動作 必要的資源 適用於無伺服器叢集
kafka-cluster:Connect 准許與叢集連線並進行身分驗證。 叢集
kafka-cluster:DescribeCluster 准許描述叢集的各個方面,相當於 Apache Kafka 的 DESCRIBE CLUSTER ACL。

kafka-cluster:Connect

叢集
kafka-cluster:AlterCluster 准許變更叢集的各個層面,相當於 Apache Kafka 的 ALTER CLUSTER ACL。

kafka-cluster:Connect

kafka-cluster:DescribeCluster

叢集
kafka-cluster:DescribeClusterDynamicConfiguration 准許描述叢集的動態組態,相當於 Apache Kafka 的 DESCRIBE_CONFIGS CLUSTER ACL。

kafka-cluster:Connect

叢集
kafka-cluster:AlterClusterDynamicConfiguration 准許變更叢集的動態組態,相當於 Apache Kafka 的 ALTER_CONFIGSCLUSTERACL。

kafka-cluster:Connect

kafka-cluster:DescribeClusterDynamicConfiguration

叢集
kafka-cluster:WriteDataIdempotently 准許在叢集上以同期方式寫入資料,相當於 Apache Kafka 的 IDEMPOTENT_WRITECLUSTERACL。

kafka-cluster:Connect

kafka-cluster:WriteData

叢集
kafka-cluster:CreateTopic 准許在叢集上建立相當於 Apache Kafka CREATE CLUSTER/TOPIC 的主題ACL。

kafka-cluster:Connect

主題
kafka-cluster:DescribeTopic 准許描述叢集上的主題,相當於 Apache Kafka 的 DESCRIBE TOPIC ACL。

kafka-cluster:Connect

主題
kafka-cluster:AlterTopic 准許變更叢集上的主題,相當於 Apache Kafka 的 ALTER TOPIC ACL。

kafka-cluster:Connect

kafka-cluster:DescribeTopic

主題
kafka-cluster:DeleteTopic 准許刪除叢集上的主題,相當於 Apache Kafka 的 DELETE TOPIC ACL。

kafka-cluster:Connect

kafka-cluster:DescribeTopic

主題
kafka-cluster:DescribeTopicDynamicConfiguration 准許描述叢集上主題的動態組態,相當於 Apache Kafka 的 DESCRIBE_CONFIGSTOPICACL。

kafka-cluster:Connect

主題
kafka-cluster:AlterTopicDynamicConfiguration 准許變更叢集上主題的動態組態,相當於 Apache Kafka 的 ALTER_CONFIGSTOPICACL。

kafka-cluster:Connect

kafka-cluster:DescribeTopicDynamicConfiguration

主題
kafka-cluster:ReadData 准許從叢集上的主題讀取資料,相當於 Apache Kafka 的 READ TOPIC ACL。

kafka-cluster:Connect

kafka-cluster:DescribeTopic

kafka-cluster:AlterGroup

主題
kafka-cluster:WriteData 准許將資料寫入叢集上的主題,相當於 Apache Kafka 的主題 WRITE TOPIC ACL

kafka-cluster:Connect

kafka-cluster:DescribeTopic

主題
kafka-cluster:DescribeGroup 准許描述叢集上的群組,相當於 Apache Kafka 的 DESCRIBE GROUP ACL。

kafka-cluster:Connect

群組
kafka-cluster:AlterGroup 准許加入叢集上的群組,相當於 Apache Kafka 的 READ GROUP ACL。

kafka-cluster:Connect

kafka-cluster:DescribeGroup

群組
kafka-cluster:DeleteGroup 准許刪除叢集上的群組,相當於 Apache Kafka 的 DELETE GROUP ACL。

kafka-cluster:Connect

kafka-cluster:DescribeGroup

群組
kafka-cluster:DescribeTransactionalId 准許描述叢集IDs上的交易,相當於 Apache Kafka 的 DESCRIBE TRANSACTIONAL_IDACL。

kafka-cluster:Connect

transactional-id
kafka-cluster:AlterTransactionalId 准許變更叢集IDs上的交易,相當於 Apache Kafka 的 WRITE TRANSACTIONAL_IDACL。

kafka-cluster:Connect

kafka-cluster:DescribeTransactionalId

kafka-cluster:WriteData

transactional-id

您可以在動作中的冒號後面使用星號 (*) 萬用字元任意次數。範例如下。

  • kafka-cluster:*Topic 代表 kafka-cluster:CreateTopickafka-cluster:DescribeTopickafka-cluster:AlterTopic、和 kafka-cluster:DeleteTopic。它不包括 kafka-cluster:DescribeTopicDynamicConfigurationkafka-cluster:AlterTopicDynamicConfiguration

  • kafka-cluster:* 代表所有許可。

授權政策資源

下表顯示當您使用 Amazon 的IAM存取控制時,可以在授權政策中使用的四種資源類型MSK。您可以使用 AWS Management Console 或 describe-cluster AWS CLI 命令,從 DescribeClusterAPI或 取得叢集 Amazon Resource Name (ARN)。然後,您可以使用叢集ARN來建構主題、群組和交易 ID ARNs。若要在授權政策中指定資源,請使用該資源的 ARN。

資源 ARN 格式
叢集 arn:aws:kafka:region:account-id:叢集/cluster-name/cluster-uuid
主題 arn:aws:kafka:region:account-id:topic/cluster-name/cluster-uuid/topic-name
群組 arn:aws:kafka:region:account-id:group/cluster-name/cluster-uuid/group-name
交易 ID arn:aws:kafka:region:account-id:transactional-id/cluster-name/cluster-uuid/transactional-id

您可以在 、:cluster/:group/和 ARN之後的任何位置使用星號 :topic/(*) 萬用字元任意次數:transactional-id/。以下是使用星號 (*) 萬用字元表示多種資源的範例:

  • arn:aws:kafka:us-east-1:0123456789012:topic/MyTestCluster/*:任何名為 的叢集中的所有主題 MyTestCluster,無論叢集的 為何UUID。

  • arn:aws:kafka:us-east-1:0123456789012:topic/MyTestCluster/abcd1234-0123-abcd-5678-1234abcd-1/*_test:名稱結尾為 "_test" 的所有主題,其名稱為 MyTestCluster ,名稱UUID為 abcd1234-0123-abcd-5678-1234abcd-1。

  • arn:aws:kafka:us-east-1:0123456789012:transactional-id/MyTestCluster/*/5555abcd-1111-abcd-1234-abcd1234-1:交易 ID 為 5555abcd-1111-abcd-1234-abcd1234-1 的所有交易,涵蓋 MyTestCluster 您帳戶中名為 的叢集的所有版本。這表示,如果您建立名為 的叢集 MyTestCluster,然後刪除該叢集,然後使用相同名稱建立另一個叢集,您可以使用此資源ARN在兩個叢集上代表相同的交易 ID。但是,您無法存取已刪除的叢集。