プロジェクト内の特定のスキーマ レジストリ内のサブジェクトのバージョンを一覧表示できます。
このドキュメントでは、Google Cloud コンソールまたは Managed Kafka API を使用してサブジェクト バージョンを一覧表示する方法について説明します。
必要なロールと権限
サブジェクト バージョンを一覧表示するために必要な権限を取得するには、スキーマ レジストリに対する Managed Kafka Schema Registry 閲覧者 (roles/managedkafka.schemaRegistryViewer)IAM ロールを付与するよう管理者に依頼してください。ロールの付与については、プロジェクト、フォルダ、組織に対するアクセス権の管理をご覧ください。
この事前定義ロールには、サブジェクト バージョンのリストに必要な権限が含まれています。必要とされる正確な権限については、「必要な権限」セクションを開いてご確認ください。
必要な権限
サブジェクト バージョンを一覧表示するには、次の権限が必要です。
-
親サブジェクトに次の権限を付与します。
managedkafka.versions.list
カスタムロールや他の事前定義ロールを使用して、これらの権限を取得することもできます。
事前定義ロールの詳細については、Managed Service for Apache Kafka の事前定義ロールをご覧ください。
サブジェクトのスキーマ バージョンを一覧表示する
プロジェクト内の特定のスキーマ レジストリにあるサブジェクトのすべてのバージョンを一覧表示するには、次の操作を行います。
コンソール
Google Cloud コンソールで、[スキーマ レジストリ] ページに移動します。
サブジェクトが配置されているスキーマ レジストリの名前をクリックします。
[このスキーマ レジストリのサブジェクト] で、サブジェクトの名前をクリックします。
[Subject details] ページで、スキーマ バージョンが [All Versions] に表示されます。
省略可: バージョンのスキーマ定義を表示するには、バージョン ID のチェックボックスをオンにします。スキーマ定義は [定義] に表示されます。
省略可: このサブジェクトの 2 つのスキーマ バージョンの違いを表示するには、次の操作を行います。
- [すべてのバージョン] で、比較するバージョンを選択します。
- [定義] 領域で、 [差分を表示] をクリックします。
2 つのスキーマ定義が並べて表示され、追加、削除、変更がハイライト表示されます。
REST
リクエストは、Authorization ヘッダー内のアクセス トークンにより認証を受ける必要があります。現在のアプリケーションのデフォルト認証情報のアクセス トークンを取得する場合は、gcloud auth application-default print-access-token を使用します。
サブジェクト バージョンを一覧表示するには、projects.locations.schemaRegistries.subjects.versions.list メソッドに GET リクエストを送信します。
GET https://managedkafka.googleapis.com/v1main/projects/PROJECT_ID/locations/LOCATION/schemaRegistries/REGISTRY_ID/subjects/SUBJECT_ID/versions
Authorization: Bearer $(gcloud auth application-default print-access-token)
次のように置き換えます。
- PROJECT_ID: 実際の Google Cloud プロジェクト ID。
- LOCATION: スキーマ レジストリが配置されている Google Cloud リージョン。
- REGISTRY_ID: スキーマ レジストリの ID。
- SUBJECT_ID: サブジェクトの ID。
例:
GET https://managedkafka.googleapis.com/v1main/projects/test-project/locations/us-central1/schemaRegistries/test_registry/subjects/test_subject/versions
Authorization: Bearer $(gcloud auth application-default print-access-token)
または、コンテキストを使用します。
GET https://managedkafka.googleapis.com/v1main/projects/test-project/locations/us-central1/schemaRegistries/test_registry/contexts/test_context/subjects/test_subject/versions
Authorization: Bearer $(gcloud auth application-default print-access-token)
ここで
test-projectは Google Cloud プロジェクト ID です。us-central1は、スキーマ レジストリが配置されている Google Cloud リージョンです。test_registryは、スキーマ レジストリの ID です。test_contextは、コンテキストの ID です。test_subjectはサブジェクトの ID です。
リクエストが成功すると、API は 200 OK ステータス コードを返します。レスポンスの本文には、サブジェクト バージョンの JSON 配列が含まれます。
成功したレスポンスの例を次に示します。
{
"versions": [
{
"name": "projects/test-project/locations/us-central1/schemaRegistries/test_registry/subjects/test_subject/versions/1",
"revisionId": "1a2b3c4d",
"schemaId": "S12345",
"createTime": "2024-07-15T12:00:00Z",
"revisionCreateTime": "2024-07-15T12:00:00Z"
},
{
"name": "projects/test-project/locations/us-central1/schemaRegistries/test_registry/subjects/test_subject/versions/2",
"revisionId": "5e6f7g8h",
"schemaId": "S67890",
"createTime": "2024-07-16T14:30:00Z",
"revisionCreateTime": "2024-07-16T14:30:00Z"
}
]
}
詳細については、projects.locations.schemaRegistries.subjects.versions.list メソッドのドキュメントをご覧ください。