本文說明如何從代管 Kafka ACL 資源中移除 ACL 項目。
移除 ACL 項目等同於刪除單一 Apache Kafka ACL 繫結。與更新作業不同,這項作業不需要 ETag 進行並行控制。
所需角色和權限
如要取得移除 ACL 項目所需的權限,請要求管理員授予您專案的「代管 Kafka ACL 編輯者 」(roles/managedkafka.aclEditor) IAM 角色。如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。
這個預先定義的角色具備 managedkafka.acls.updateEntries 權限,可移除 ACL 項目。
移除 ACL 項目
控制台
前往 Google Cloud 控制台的「Clusters」(叢集) 頁面。
按一下含有 ACL 項目之叢集的名稱。
按一下「存取控管」分頁標籤。
在「ACL entries」(ACL 項目) 清單中,選取要刪除的一或多個 ACL 項目。
點選「刪除」。
gcloud
請執行 gcloud managed-kafka acls remove-acl-entry 指令。
gcloud managed-kafka acls remove-acl-entry ACL_ID \
--cluster=CLUSTER_ID \
--location=LOCATION \
--principal=PRINCIPAL \
--operation=OPERATION \
--permission-type=PERMISSION-TYPE \
--host=*
更改下列內容:
ACL_ID。要更新的代管 Kafka ACL 資源 ID。詳情請參閱「ACL ID」。CLUSTER_IDKafka 叢集的 ID。LOCATIONKafka 叢集的區域。PRINCIPAL:要移除的 ACL 項目主體。OPERATION:要移除的 ACL 項目作業類型,例如READ或CREATE。PERMISSION_TYPE:要移除的 ACL 項目權限類型 (ALLOW或DENY)。
--principal、--operation 和 --permission-type 旗標會共同指定要移除的 ACL 項目。
指令範例
執行下列指令,移除允許特定服務帳戶從 us-central1 區域的 test-cluster 叢集中,讀取名為 test-topic 的主題的 ACL 項目。如果這是唯一的 ACL 項目,系統會刪除 ACL,且回應會包含 deleted: True。否則會傳回更新後的 ACL 項目。
gcloud managed-kafka acls remove-acl-entry topic/test-topic \
--cluster=test-cluster \
--location=us-central1 \
--principal='User:service-account@test-project.iam.gserviceaccount.com' \
--operation=READ \
--permission-type=ALLOW \
--host='*' \