本文档介绍了如何创建安全标记、将其关联到 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 服务代理服务账号 授予 Managed Service for Apache Spark 服务代理角色 (roles/dataproc.serviceAgent) IAM 角色。
限制
- 安全标记只能在创建集群时关联到集群。
- 不支持更新和删除安全标记。
创建安全标记
如需将安全标记关联到 Managed Service for Apache Spark 集群,您必须先 使用指定的键和一个或多个值创建 Resource Manager 标记 。
将安全标记关联到 Managed Service for Apache Spark 集群
创建 Managed Service for Apache Spark 集群,并指定安全标记
TAG_KEY:TAG_VALUE 对。
Google Cloud CLI
如需创建 Managed Service for Apache Spark 集群并向
集群添加安全标记,请运行带有 --resource-manager-tags 标志的
gcloud Managed Service for Apache Spark clusters create
命令。
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 集群并向
集群添加安全标记,请将
resourceManagerTags
字段作为
clusters.create
请求的一部分,该请求包括将 "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"
- 命名空间格式:
对集群网络使用安全标记
将安全标记关联到集群后,请使用安全标记来配置集群网络:
- 使用安全标记来定义防火墙规则。