关于标记
标记是一种可附加到Google Cloud中的资源的键值对。您可以使用标记,根据资源是否有特定标记,有条件地允许或拒绝政策。例如,您可以根据资源是否具有特定标记,有条件地授予 Identity and Access Management (IAM) 角色。如需详细了解标记,请参阅标记概览。
通过创建可将值关联到 Google Cloud 资源的标记绑定资源,系统会将标记附加到资源。
如需对 Cloud Deploy 中的交付流水线或目标进行分组以自动执行操作和结算,请使用标签。标记和标签彼此独立工作,您可以同时将它们应用于资源。所需权限
如需获得管理标记所需的权限,请让您的管理员为您授予以下 IAM 角色:
-
Tag Viewer (
roles/resourcemanager.tagViewer) 附加了标记的资源 -
查看和管理组织级层的标记:针对组织的 Organization Viewer (
roles/resourcemanager.organizationViewer) -
创建、更新和删除标记定义:
Tag Administrator (
roles/resourcemanager.tagAdmin) 在您要创建、更新或删除标记的资源上 -
在资源中附加和移除标记:
Tag User (
roles/resourcemanager.tagUser) 对标记值以及您要附加或移除标记值的资源具有此角色
如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限。
如需将标记附加到 Cloud Deploy 交付流水线或目标,您需要 Cloud Deploy Operator 角色 (roles/clouddeploy.operator)。
创建标记键和标记值
在附加标记之前,您需要创建标记并配置其值。如需创建标记键和标记值,请参阅创建标记和添加标记值。
为现有资源添加标记
如需为现有交付流水线或目标添加标记,请按照以下步骤操作:
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,包括用于标识资源类型的 API 域名 (//clouddeploy.googleapis.com/)。例如,如需将标记关联到projects/7890123456中区域us-central1内的交付流水线myPipeline,则完整 ID 为://clouddeploy.googleapis.com/projects/7890123456/locations/us-central1/deliveryPipelines/myPipeline。 LOCATION:资源的位置。如果您要将标记附加到全球性资源(例如文件夹或项目),请省略此标志。如果您要将标记附加到区域级或可用区级资源,则必须指定位置,例如us-central1(区域)或us-central1-a(可用区)。
列出附加到资源的标记
您可以查看直接附加到交付流水线或目标或由交付流水线或目标继承的标记绑定列表。
gcloud
如需获取附加到资源的标记绑定列表,请使用 gcloud resource-manager tags bindings list 命令:
gcloud resource-manager tags bindings list \
--parent=RESOURCE_ID \
--location=LOCATION
替换以下内容:
-
RESOURCE_ID是资源的完整 ID,包括用于标识资源类型的 API 域名 (//clouddeploy.googleapis.com/)。例如,如需将标记关联到projects/7890123456中区域us-central1内的交付流水线myPipeline,则完整 ID 为://clouddeploy.googleapis.com/projects/7890123456/locations/us-central1/deliveryPipelines/myPipeline。 LOCATION:资源的位置。如果您要查看附加到全球性资源(例如文件夹或项目)的标记,请省略此标志。如果您要查看附加到区域级或可用区级资源的标记,则必须指定位置,例如us-central1(区域)或us-central1-a(可用区)。
您应该会看到如下所示的响应:
name: tagBindings/%2F%2Fcloudresourcemanager.googleapis.com%2Fprojects%2F7890123456/tagValues/567890123456
tagValue: tagValues/567890123456
resource: //clouddeploy.googleapis.com/projects/PROJECT_ID/locations/REGION/DELIVERY_PIPELINE_ID
将标记与资源分离
您可以分离直接附加到交付流水线或目标的标记。可以通过附加具有相同键和不同值的标记来替换继承的标记,但不能分离这些标记。
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,包括用于标识资源类型的 API 域名 (//clouddeploy.googleapis.com/)。例如,如需将标记关联到projects/7890123456中区域us-central1内的交付流水线myPipeline,则完整 ID 为://clouddeploy.googleapis.com/projects/7890123456/locations/us-central1/deliveryPipelines/myPipeline。 LOCATION:资源的位置。如果您要将标记附加到全球性资源(例如文件夹或项目),请省略此标志。如果您要将标记附加到区域级或可用区级资源,则必须指定位置,例如us-central1(区域)或us-central1-a(可用区)。
删除标记键和标记值
移除标记键或值定义时,请确保标记已与交付流水线或目标分离。在删除标记定义本身之前,您必须先删除现有的标记连接(称为标记绑定)。如需删除标记键和标记值,请参阅删除标记。
Identity and Access Management 条件和标记
您可以使用标记和 IAM 条件来有条件地向层次结构中的用户授予角色绑定。如果应用了具有条件角色绑定的 IAM 政策,则更改或删除附加到资源的标记可能会移除用户对该资源的访问权限。如需了解详情,请参阅 Identity and Access Management 条件和标记。