列出 Managed Kafka ACL

本文档介绍了如何列出为指定 Managed Service for Apache Kafka 集群定义的托管 Kafka ACL 资源。

所需的角色和权限

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

此预定义角色包含列出受管 Kafka ACL 所需的 managedkafka.acls.list 权限。

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

列出 ACL

控制台

  1. 在 Google Cloud 控制台中,前往集群页面。

    转到“集群”

  2. 点击集群的名称。

  3. 点击访问权限控制标签页。

  4. 在 ACL 条目下,系统会列出相应集群的 ACL 条目。

gcloud

运行 gcloud managed-kafka acls list 命令:

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

替换以下内容:

  • CLUSTER_ID Kafka 集群的 ID。
  • LOCATION:Kafka 集群所在的区域。

示例命令

运行以下命令,查看与名为 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 操作类型。示例 - ALL、READ、WRITE。
    • 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 资源类型,例如 TOPIC、CLUSTER、GROUP、TRANSACTIONAL_ID。

后续步骤

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