列出 Managed Kafka ACL

您可以列出特定 Managed Service for Apache Kafka 集群中定义的所有 Managed Kafka ACL 资源。每个托管 Kafka ACL 资源都表示相应集群中单个资源模式的权限规则或 ACL 条目的集合。

所需的角色和权限

如需获得列出 Managed Kafka ACL 所需的权限,请让您的管理员为您授予父级集群或项目的 Managed Kafka ACL Viewer (roles/managedkafka.aclViewer) 或 Managed Kafka Viewer (roles/managedkafka.viewer) IAM 角色。 如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限

此预定义角色包含列出受管 Kafka ACL 所需的权限。如需查看所需的确切权限,请展开所需权限部分:

所需权限

如需列出托管 Kafka ACL,需要具备以下权限:

  • 在父集群上授予此权限: managedkafka.acls.list

您也可以使用自定义角色或其他预定义角色来获取这些权限。

如需详细了解 Managed Service for Apache Kafka 的预定义角色,请参阅 Managed Service for Apache Kafka 预定义角色

列出 ACL

  1. Install the Google Cloud CLI.

  2. If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

  3. To initialize the gcloud CLI, run the following command:

    gcloud init
  4. 运行 gcloud managed-kafka acls list 命令:

    gcloud managed-kafka acls list CLUSTER_ID \
      --location=LOCATION \

    替换以下内容:

    • CLUSTER_ID(必需):您要列出其 ACL 资源的集群的 ID。
    • LOCATION(必需):集群所在的区域。请参阅支持的地区

示例命令

运行以下命令,查看与名为 kafka-cluster 的集群关联的 ACL 的详细信息

gcloud managed-kafka acls list kafka-cluster \
  --location=us central1 \

输出类似于以下内容:

---
aclEntries:
- host: '*'
  operation: ALL
  permissionType: ALLOW
  principal: User:admin@project.iam.gserviceaccount.com
etag: W/da909178
name: projects/gmk-consumer-smjo/locations/us-central1/clusters/default-cluster/acls/allTopics
patternType: LITERAL
resourceName: '*'
resourceType: TOPIC
---
aclEntries:
- host: '*'
  operation: ALL
  permissionType: ALLOW
  principal: User:admin@project.iam.gserviceaccount.com
etag: W/da909178
name: projects/test-project/locations/us-central1/clusters/default-cluster/acls/cluster
patternType: LITERAL
resourceName: kafka-cluster
resourceType: CLUSTER

输出内容包含每个受管理的 Kafka ACL 资源的以下信息:

  • aclEntries:相应 ACL 资源的访问权限控制条目列表。每个条目都定义了一条权限规则:
    • host:主账号可以访问资源的宿主。'*' 表示任何主机。
    • operation:已授予或拒绝的 Kafka 操作类型。 示例 - ALLREADWRITE
    • permissionType:相应操作是 ALLOW 还是 DENY
    • principal:ACL 条目所适用的用户或服务账号。格式通常为 User:{google_service_account_email} 或通配符 User:*
  • etag:用于在更新期间进行并发控制。
  • name:Managed Kafka ACL 资源的唯一标识符,包括项目、位置、集群和 ACL ID。
  • patternType:由 ACL ID 定义的资源模式类型(LITERAL 表示特定资源,PREFIXED 表示具有共同前缀的资源)。
  • resourceName:应用 ACL 的 Kafka 资源的名称。可以是特定名称(如主题名称)、前缀或通配符 (*)。对于集群级 ACL,它是 kafka-cluster
  • resourceType:ACL 所适用的 Kafka 资源类型,例如 TOPICCLUSTERGROUPTRANSACTIONAL_ID

后续步骤

Apache Kafka® 是 Apache Software Foundation 或其关联公司在美国和/或其他国家/地区的注册商标。