列出主題

您可以列出專案中特定結構定義登錄或環境中的主體。

本文說明如何使用Google Cloud 控制台或 Managed Kafka API 列出主體。

必要角色和權限

如要取得列出主體所需的權限,請要求管理員在您的結構定義登錄或環境中,授予您「Managed Kafka Schema Registry Viewer」(代管 Kafka 結構定義登錄檢視者) (roles/managedkafka.schemaRegistryViewer) IAM 角色。 如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。

這個預先定義的角色具備列出主體所需的權限。如要查看確切的必要權限,請展開「Required permissions」(必要權限) 部分:

所需權限

如要列出主體,必須具備下列權限:

  • 在父項結構定義登錄或環境中授予下列權限: managedkafka.googleapis.com/subjects.list

您或許還可透過自訂角色或其他預先定義的角色取得這些權限。

如要進一步瞭解預先定義的角色,請參閱「Managed Service for Apache Kafka 預先定義的角色」。

列出結構定義登錄中的主體

如要列出專案中特定結構定義登錄或環境的所有主體,請按照下列步驟操作。

控制台

  1. 前往 Google Cloud 控制台的「Schema registries」頁面。

    前往「結構定義登錄」頁面

  2. 按一下要查看詳細資料的結構定義登錄名稱。

  3. 在「結構定義登錄詳細資料」頁面中,主體會列在「這個結構定義登錄中的主體」下方。

  4. 選用:如要篩選顯示的主題,請按一下「篩選器」。您可以依下列屬性篩選:

    • 名稱
    • 背景資訊
    • 是否虛刪除 (是/否)
  5. 選用:如要顯示或隱藏資料欄,請按一下「資料欄顯示選項」,然後選取要顯示或隱藏的資料欄。

REST

要求必須使用 Authorization 標頭中的存取權杖進行驗證。如要取得目前應用程式預設憑證的存取權杖,請執行:gcloud auth application-default print-access-token

如要列出架構登錄檔直接管理的受試者,請使用預設環境的 projects.locations.schemaRegistries.schemas.subjects.list 方法,對特定 URI 發出 GET 要求。

GET https://managedkafka.googleapis.com/v1main/projects/PROJECT_ID/locations/LOCATION/schemaRegistries/REGISTRY_ID/subjects
Authorization: Bearer $(gcloud auth application-default print-access-token)

如要列出結構定義登錄中某個背景資訊下的主體,請使用 projects.locations.schemaRegistries.contexts.schemas.subjects.list 方法,對特定 URI 提出 GET 要求:

GET https://managedkafka.googleapis.com/v1main/projects/PROJECT_ID/locations/LOCATION/schemaRegistries/REGISTRY_ID/contexts/CONTEXT_ID/subjects?subjectPrefix=SUBJECT_PREFIX
Authorization: Bearer $(gcloud auth application-default print-access-token)

更改下列內容:

  • PROJECT_ID (必填):您的 Google Cloud專案 ID。

  • LOCATION (必要):結構定義登錄所在的 Google Cloud 區域。

  • REGISTRY_ID (必填):架構登錄檔的 ID。

  • CONTEXT_ID (選用):情境的 ID (如要列出情境中的主題)。

  • SUBJECT_PREFIX (選用):用來篩選主體的環境,格式為 :.{context}:。如未設定,系統會傳回登錄中的所有主體。如果設為空字串,則會列出預設環境中的主體。

如果要求成功,API 會傳回 200 OK 狀態碼。回應主體包含主體名稱的 JSON 陣列。

以下是預設環境中,JSON 陣列內主體的成功回應範例:

[
  "orders-topic-key",
  "orders-topic-value",
  "user-profile-event"
]

非預設環境中的主體會以 :.context:subject 格式傳回。

詳情請參閱 projects.locations.schemaRegistries.contexts.schemas.subjects/list 方法的說明文件。

後續步驟

Apache Kafka® 是 The Apache Software Foundation 或其關聯企業在美國與/或其他國家/地區的註冊商標。