このドキュメントでは、セキュアタグを作成して Managed Service for Apache Spark クラスタに接続し、タグを使用してクラスタ ネットワーキングを保護する方法について説明します。
セキュアタグを使用するメリット
セキュアタグには、Identity and Access Management アクセス制御、タグの継承、単一の VPC ネットワーク バインディングなど、ネットワーク タグとは主な違いがあります。これにより、次の主なメリットがもたらされます。
IAM ポリシーでセキュアタグを使用すると、条件付きアクセス制御が有効になり、タグの有無に基づいてロールを付与または拒否することでセキュリティが強化されます。
VPC ファイアウォール ルールとは異なり、セキュアタグによって強化されたネットワーク ファイアウォール ポリシーでは、複数のルールを効率的にグループ化して同時に更新できます。これらのルールはすべて IAM アクセス制御によって管理されます。ネットワーク タグを使用する VPC ファイアウォール ルールと比較して、セキュアタグはネットワーク ファイアウォール ポリシー内のセキュリティと管理機能を強化します。
Resource Manager タグとネットワーク タグの違いについては、タグとネットワーク タグの比較をご覧ください。
Resource Manager タグとラベルの違いについては、 タグとラベル をご覧ください。
始める前に
このページの例を実行するには、特定の IAM ロールが必要です。組織のポリシーによっては、これらのロールがすでに付与されている場合があります。ロールの付与を確認するには、 ロールを付与する必要がありますか?をご覧ください。
ロールの付与については、 プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。
ユーザー ロール
タグの作成に必要な権限を取得するには、Resource Manager タグに対するTag Administrator(roles/resourcemanager.tagAdmin)IAM ロールを付与するよう管理者に依頼してください。ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。
必要な権限は、カスタム ロールや他の事前定義 ロールから取得することもできます。
サービス アカウント ロール
Managed Service for Apache Spark サービス エージェント サービス アカウント が Managed Service for Apache Spark クラスタにセキュアタグを適用するために必要な
権限を持っていることを確認するには、
プロジェクトで
Managed Service for Apache Spark サービス エージェント ロール (roles/dataproc.serviceAgent)IAM ロールを Managed Service for Apache Spark サービス エージェント サービス アカウント に付与するよう管理者に依頼してください。
制限事項
- セキュアタグをクラスタに適用できるのは、クラスタの作成時のみです。
- セキュアタグの更新と削除はサポートされていません。
セキュアタグを作成する
セキュアタグを Managed Service for Apache Spark クラスタに適用するには、まず 指定されたキーと 1 つ以上の値を使用して Resource Manager タグ を作成する必要があります。
Managed Service for Apache Spark クラスタにセキュアタグを適用する
セキュアタグ
TAG_KEY:TAG_VALUE ペアを指定して、Managed Service for Apache Spark クラスタを作成します。
Google Cloud CLI
Managed Service for Apache Spark クラスタを作成して
クラスタにセキュアタグを追加するには、
gcloud Managed Service for Apache Spark clusters create
コマンドを --resource-manager-tags フラグを指定して実行します。
gcloud dataproc clusters create CLUSTER_NAME \
--region REGION \
--resource-manager-tags=TAG_KEY=TAG_VALUE
次のように置き換えます。
- CLUSTER_NAME: 新しいクラスタの名前。
- REGION: クラスタを配置する Compute Engine のリージョン。
- TAG_KEY と TAG_VALUE: 作成した Resource Manager タグのキーと値。タグキーは、次のように名前空間形式または名前空間なし形式で指定できます。
- 名前空間形式:
PROJECT-ID/KEY_NAME=PROJECT-ID/KEY_NAME/KEY_VALUE。例:
--resource-manager-tags="test-project/testkey"=test-project/testkey/testvalue
- 名前空間なし形式:
tagKeys/TAG_KEY_ID=tagValues/TAG_VALUE_ID例:
--resource-manager-tags=tagKeys/123456789012=tagValues/987654321098
- 名前空間形式:
REST
Managed Service for Apache Spark クラスタを作成してクラスタにセキュアタグを追加するには、クラスタにセキュアタグを適用する
clusters.create
リクエストの一部として
resourceManagerTags
フィールドを含めます。"TAG_KEY":"TAG_VALUE"
{
"clusterName": "CLUSTER_NAME",
"config": {
"gceClusterConfig": {
"resourceManagerTags": {
"TAG_KEY":"TAG_VALUE"
}
}
}
}
次のように置き換えます。
- CLUSTER_NAME: 新しいクラスタの名前。
- TAG_KEY と TAG_VALUE: 作成した Resource Manager タグのキーと値。タグキーは、次のように名前空間形式または名前空間なし形式で指定できます。
- 名前空間形式:
PROJECT-ID/KEY_NAME:PROJECT-ID/KEY_NAME/KEY_VALUE。例:
"test-project/testkey":"test-project/testkey/testvalue"
- 名前空間なし形式:
tagKeys/TAG_KEY_ID:tagValues/TAG_VALUE_ID例:
"tagKeys/123456789012":"tagValues/987654321098"
- 名前空間形式:
クラスタ ネットワーキングにセキュアタグを使用する
セキュアタグをクラスタに接続したら、セキュアタグを使用してクラスタ ネットワーキングを構成します。
- セキュアタグを使用してファイアウォール ルールを定義します。