このセクションでは、ストリーム、接続プロファイル、プライベート接続などの Datastream リソースにタグを付加、解除、一覧表示する方法について説明します。Datastream のタグの概要については、タグを使用したアクセス制御をご覧ください。
タグについて
タグは、Google Cloud 内のリソースに添付できる Key-Value ペアです。タグを使用すると、リソースに特定のタグが付加されているかどうかに基づいて、条件付きでポリシーの許可や拒否を行うことができます。たとえば、リソースに特定のタグがあるかどうかに基づいて、Identity and Access Management(IAM)のロールを条件付きで付与できます。タグの詳細については、タグの概要をご覧ください。
タグは、タグと Google Cloud リソースを結びつけるタグ バインディング リソースを作成することによって、リソースに適用されます。
自動化と課金のために Datastream 内でストリーム、接続プロファイル、プライベート接続をグループ化するには、ラベルを使用します。タグとラベルは互いに独立して機能するため、両方をリソースに適用できます。必要な権限
必要な権限は、実行する必要があるアクションによって異なります。
これらの権限を取得するには、リソース階層の適切なレベルで推奨されているロールの付与を管理者に依頼してください。
タグを表示する
タグの定義とリソースに適用されているタグを確認するには、タグ閲覧者のロール(roles/resourcemanager.tagViewer
)、または次の権限を含む別のロールが必要です。
必要な権限
resourcemanager.tagKeys.get
resourcemanager.tagKeys.list
resourcemanager.tagValues.list
resourcemanager.tagValues.get
- 該当するリソースタイプに対する
listTagBindings
。たとえば、Compute Engine インスタンスに適用されているタグを表示する場合はcompute.instances.listTagBindings
。 listEffectiveTags
(該当するリソースタイプに対する)。たとえば、
compute.instances.listEffectiveTags
は、Compute Engine インスタンスに付加されたすべてのタグを表示するか、そのインスタンスに継承されたすべてのタグを表示します。組織レベルでタグを表示するには、組織リソースに対する組織閲覧者のロール(roles/resourcemanager.organizationViewer
)が必要です。
タグを管理する
タグの定義を作成、更新、削除するには、タグ管理者ロール(roles/resourcemanager.tagAdmin
)か、次の権限を持つ別のロールが必要です。
必要な権限
resourcemanager.tagKeys.create
resourcemanager.tagKeys.update
resourcemanager.tagKeys.delete
resourcemanager.tagKeys.list
resourcemanager.tagKeys.get
resourcemanager.tagKeys.getIamPolicy
resourcemanager.tagKeys.setIamPolicy
resourcemanager.tagValues.create
resourcemanager.tagValues.update
resourcemanager.tagValues.delete
resourcemanager.tagValues.list
resourcemanager.tagValues.get
resourcemanager.tagValues.getIamPolicy
resourcemanager.tagValues.setIamPolicy
組織レベルでタグを管理するには、組織リソースに対する組織閲覧者のロール(roles/resourcemanager.organizationViewer
)が必要です。
リソースのタグを管理する
リソースに付加されたタグを追加または削除するには、タグユーザー ロール(roles/resourcemanager.tagUser
)、またはタグ値と、タグ値を付加するリソースに対して同等の権限を持つ別のロールが必要です。タグユーザー ロールには次の権限が含まれます。
必要な権限
- タグ値を付加するリソースに対して必要な権限:
- リソース固有の
createTagBinding
権限(Compute Engine インスタンスのcompute.instances.createTagBinding
など) - リソース固有の
deleteTagBinding
権限(Compute Engine インスタンスのcompute.instances.deleteTagBinding
など) - タグ値に対して必要な権限:
resourcemanager.tagValueBindings.create
resourcemanager.tagValueBindings.delete
- プロジェクトとタグの定義を閲覧できる権限:
resourcemanager.tagValues.get
resourcemanager.tagValues.list
resourcemanager.tagKeys.get
resourcemanager.tagKeys.list
resourcemanager.projects.get
タグを Datastream リソースに付加するには、Datastream 管理者ロール(roles/datastream.admin
)か、次の権限を含む別のロールが必要です。
必要な権限
datastream.connectionProfiles.createTagBinding
datastream.connectionProfiles.deleteTagBinding
datastream.connectionProfiles.listTagBindings
datastream.connectionProfiles.listEffectiveTags
datastream.streams.createTagBinding
datastream.streams.deleteTagBinding
datastream.streams.listTagBindings
datastream.streams.listEffectiveTags
datastream.privateConnections.createTagBinding
datastream.privateConnections.deleteTagBinding
datastream.privateConnections.listTagBindings
datastream.privateConnections.listEffectiveTags
タグキーとタグ値を作成する
タグを適用する前に、タグを作成してその値を構成する必要があります。タグキーとタグ値を作成する方法については、タグの作成とタグ値の追加をご覧ください。
ストリーム、接続プロファイル、またはプライベート接続にタグを付加する
タグを作成したら、ストリーム、接続プロファイル、またはプライベート接続にタグを付加する必要があります。
Console
- Google Cloud コンソールで、[Datastream] ページに移動します。
- タグを付加するリソースのページを選択します。 たとえば、接続プロファイルにタグを付加するには、[接続プロファイル] ページに移動します。
- [タグ] をクリックします。
- 組織が [タグ] パネルに表示されない場合は、[スコープの選択] をクリックします。組織を選択して [開く] をクリックします。
- [タグを追加] をクリックします。
- リストから適用するタグのキーを選択します。リストは、キーワードを入力してフィルタできます。
- リストから適用するタグの値を選択します。リストは、キーワードを入力してフィルタできます。
- [保存] をクリックします。
- [確認] ダイアログで、[確認] をクリックしてタグを適用します。
タグが更新されたことは、通知によって確認します。
gcloud
ストリーム、接続プロファイル、またはプライベート接続にタグを付加するには、gcloud resource-manager tags bindings create
コマンドを使用してタグ バインディング リソースを作成する必要があります。
gcloud resource-manager tags bindings create \ --tag-value=TAGVALUE_NAME \ --parent=RESOURCE_ID \ --location=LOCATION
以下を置き換えます。
TAGVALUE_NAME
: 適用されるタグ値の永続 ID または名前空間名(例:tagValues/567890123456
)。-
RESOURCE_ID
はリソースの完全な ID で、リソースのタイプ(//datastream.googleapis.com/
)を識別するために API ドメイン名が含まれています。たとえば、projects/PROJECT_NAME/streams/STREAM_NAME
のインスタンスにタグを付加する場合、完全な ID は//datastream.googleapis.com/projects/PROJECT_NAME/streams/STREAM_NAME
です。 LOCATION
: リソースのロケーション。フォルダやプロジェクトなどのグローバル リソースにタグを適用する場合は、このフラグを省略します。リージョン リソースまたはゾーンリソースにタグを適用する場合は、us-central1
(リージョン)やus-central1-a
(ゾーン)などのロケーションを指定する必要があります。
ストリーム、接続プロファイル、プライベート接続に付加されたタグを一覧表示する
ストリーム、接続プロファイル、またはプライベート接続に直接付加された、またはこれらによって継承されたタグ バインディングのリストを表示できます。
Console
- Google Cloud コンソールで、[Datastream] ページに移動します。
タグを表示するリソースのページを選択します。 たとえば、接続プロファイルのタグを表示するには、[接続プロファイル] ページに移動します。
タグは、ストリーム、接続プロファイル、プライベート接続の [タグ] 列に表示されます。
gcloud
リソースに適用されたタグ バインディングのリストを取得するには、gcloud resource-manager tags bindings list
コマンドを使用します。
gcloud resource-manager tags bindings list \ --parent=RESOURCE_ID \ --location=LOCATION
以下を置き換えます。
-
RESOURCE_ID
はリソースの完全な ID で、リソースのタイプ(//datastream.googleapis.com/
)を識別するために API ドメイン名が含まれています。たとえば、projects/PROJECT_NAME/streams/STREAM_NAME
のインスタンスにタグを付加する場合、完全な ID は//datastream.googleapis.com/projects/PROJECT_NAME/streams/STREAM_NAME
です。 LOCATION
: リソースのロケーション。フォルダやプロジェクトなどのグローバル リソースに適用されているタグを表示する場合は、このフラグを省略します。リージョン リソースまたはゾーンリソースに適用されているタグを表示する場合は、us-central1
(リージョン)やus-central1-a
(ゾーン)などのロケーションを指定する必要があります。
次のようなレスポンスが返されます。
name: tagBindings/%2F%2Fcloudresourcemanager.googleapis.com%2Fprojects%2F7890123456/tagValues/567890123456 tagValue: tagValues/567890123456 resource: //datastream.googleapis.com/projects/project-abc/streams/stream-xyz<
ストリーム、接続プロファイル、またはプライベート接続からタグを解除する
ストリーム、接続プロファイル、プライベート接続に直接付加されたタグを解除できます。継承されたタグは、同じキーと別の値を持つタグを適用することでオーバーライドできますが、解除することはできません。タグを削除する前に、タグが属するすべてのリソースからキーと値を切断する必要があります。
Console
- Google Cloud コンソールで、[Datastream] ページに移動します。
- タグを削除するリソースのページを選択します。 たとえば、接続プロファイルからタグを削除するには、[接続プロファイル] ページに移動します。
- [タグ] をクリックします。
- [タグ] パネルで、切断するタグの横にある [項目を削除します] をクリックします。
- [保存] をクリックします。
- [確認] ダイアログで、[確認] をクリックしてタグを切断します。
タグが更新されたことは、通知によって確認します。
gcloud
タグ バインディングを削除するには、gcloud resource-manager tags bindings delete
コマンドを使用します。
gcloud resource-manager tags bindings delete \ --tag-value=TAGVALUE_NAME \ --parent=RESOURCE_ID \ --location=LOCATION
以下のように置き換えます。
TAGVALUE_NAME
: 適用されるタグ値の永続 ID または名前空間名(例:tagValues/567890123456
)。-
RESOURCE_ID
はリソースの完全な ID で、リソースのタイプ(//datastream.googleapis.com/
)を識別するために API ドメイン名が含まれています。たとえば、projects/PROJECT_NAME/streams/STREAM_NAME
のインスタンスにタグを付加する場合、完全な ID は//datastream.googleapis.com/projects/PROJECT_NAME/streams/STREAM_NAME
です。 LOCATION
: リソースのロケーション。フォルダやプロジェクトなどのグローバル リソースにタグを適用する場合は、このフラグを省略します。リージョン リソースまたはゾーンリソースにタグを適用する場合は、us-central1
(リージョン)やus-central1-a
(ゾーン)などのロケーションを指定する必要があります。
タグキーとタグ値を削除する
タグキーまたは値の定義を削除する場合は、ストリーム、接続プロファイル、プライベート接続からタグが解除されていることを確認してください。タグ定義自体を削除する前に、既存のタグの適用(タグ バインディング)を削除する必要があります。タグキーとタグ値を削除するには、タグの削除をご覧ください。
Identity and Access Management の条件とタグ
タグと IAM Conditions を使用すると、階層内のユーザーに条件付きでロール バインディングを付与できます。条件付きロール バインディングを含む IAM ポリシーが適用されている場合、リソースに適用されたタグを変更または削除すると、そのリソースへのユーザー アクセス権を削除できます。詳細については、Identity and Access Management の条件とタグをご覧ください。
次のステップ
- タグをサポートするその他のサービス確認する。
- タグとアクセス制御で、IAM でタグを使用する方法を確認する。