Criar e gerenciar tags para recursos da VPC

As redes VPC usam os seguintes recursos compatíveis com as tags do Resource Manager:

As tags do Resource Manager são diferentes das tags de rede. Neste documento, o termo tags é usado para se referir a tags do Resource Manager.

Para uma lista de todos os serviços compatíveis com tags, consulte Serviços compatíveis com tags.

Para informações sobre como usar tags em regras de política de firewall, consulte Tags para firewalls.

Sobre as tags

Uma tag é um par de chave-valor que pode ser anexado a um recurso no Google Cloud. É possível usar tags para permitir ou negar políticas condicionalmente com base no fato de um recurso ter uma tag específica ou não. Por exemplo, é possível conceder condicionalmente papéis do Identity and Access Management (IAM) com base no fato de um recurso ter uma tag específica ou não. Para mais informações sobre tags, consulte Visão geral de tags.

As tags são anexadas aos recursos criando um recurso de vinculação de tags que vincula o valor ao recurso do Google Cloud.

Para agrupar recursos da VPC na nuvem privada virtual para automação e faturamento, use rótulos. As tags e os identificadores funcionam independentemente uns dos outros, e você pode aplicar os dois aos recursos.

Permissões necessárias

As permissões necessárias dependem da ação que você precisa realizar.

Para receber essas permissões, peça ao administrador para conceder o papel sugerido no nível apropriado da hierarquia de recursos.

Visualizar tags

Para visualizar as definições de tag e tags anexadas aos recursos, você precisa do papel Visualizador de tags (roles/resourcemanager.tagViewer) ou de outro papel que inclua as seguintes permissões:

Permissões necessárias

  • resourcemanager.tagKeys.get
  • resourcemanager.tagKeys.list
  • resourcemanager.tagValues.list
  • resourcemanager.tagValues.get
  • listTagBindings para o tipo de recurso apropriado. Por exemplo, compute.instances.listTagBindings para visualizar as tags anexadas a instâncias do Compute Engine.
  • listEffectiveTags
  • para o tipo de recurso apropriado. Por exemplo, compute.instances.listEffectiveTags para visualizar todas as tags anexadas ou herdadas pelas instâncias do Compute Engine.

Para visualizar as tags no nível da organização, é preciso ter o papel de Visualizador da organização (roles/resourcemanager.organizationViewer) no recurso da organização.

Administrar tags

Para criar, atualizar e excluir definições de tag, você precisa do papel Administrador de tags (roles/resourcemanager.tagAdmin) ou de outro papel que inclua as seguintes permissões:

Permissões necessárias

  • 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

Para administrar tags no nível da organização, você precisa do papel de Visualizador da organização (roles/resourcemanager.organizationViewer) no recurso da organização.

Gerenciar tags em recursos

Para adicionar e remover tags anexadas a recursos, você precisa do papel Usuário da tag (roles/resourcemanager.tagUser) ou de outro papel com permissões equivalentes, nos tag e os recursos que você está anexando ao valor da tag. O papel Tag User inclui as seguintes permissões:

Permissões necessárias

  • As permissões necessárias para o recurso ao qual você está anexando o valor da tag
    • Permissão createTagBinding específica do recurso, como compute.instances.createTagBinding para instâncias do Compute Engine
    • Permissão deleteTagBinding específica do recurso, como compute.instances.deleteTagBinding para instâncias do Compute Engine
  • As permissões necessárias para o valor da tag:
    • resourcemanager.tagValueBindings.create
    • resourcemanager.tagValueBindings.delete
  • Permissões que permitem visualizar projetos e definições de tags:
    • resourcemanager.tagValues.get
    • resourcemanager.tagValues.list
    • resourcemanager.tagKeys.get
    • resourcemanager.tagKeys.list
    • resourcemanager.projects.get

Para anexar tags a recursos VPC, você precisa do papel Administrador de rede do Compute (roles/compute.networkAdmin).

Criar chaves e valores de tags

Antes de anexar uma tag, é preciso criá-la e configurar o valor dela. Para criar chaves e valores de tag, consulte Como criar uma tag e Como adicionar um valor de tag.

Anexar uma tag a um recurso da VPC

Depois que a tag for criada, será preciso anexá-la a um recurso da VPC.

gcloud

Para anexar uma tag a um recurso, é necessário criar um recurso de vinculação de tags usando o comando gcloud resource-manager tags bindings create:

      gcloud resource-manager tags bindings create \
          --tag-value=TAGVALUE_NAME \
          --parent=RESOURCE_ID \
          --location=LOCATION
      

Substitua:

  • TAGVALUE_NAME é o ID permanente ou o nome do namespace do valor da tag anexado; por exemplo: tagValues/567890123456;
  • RESOURCE_ID é o ID completo do recurso, incluindo o nome de domínio da API para identificar o tipo de recurso (//compute.googleapis.com/). Use os códigos numéricos para recursos, não os nomes. Por exemplo, um ID de sub-rede tem um formato semelhante a este: //compute.googleapis.com/projects/123/regions/us-central1/subnetworks/456. Um ID de rede tem um formato semelhante a este: //compute.googleapis.com/projects/123/global/networks/789
  • LOCATION: a localização do recurso. Se você anexar uma tag a um recurso global, como uma pasta ou um projeto, omita essa sinalização. Se você estiver anexando uma tag a um recurso regional ou zonal, especifique o local, por exemplo: us-central1 (região) ou us-central1-a (zona).

Listar tags anexadas a um recurso da VPC

É possível visualizar uma lista de vinculações de tags anexadas diretamente ou herdadas pelo recurso VPC.

gcloud

Para ver uma lista de vinculações de tags anexadas a um recurso, use o comando gcloud resource-manager tags bindings list:

      gcloud resource-manager tags bindings list \
          --parent=RESOURCE_ID \
          --location=LOCATION
      

Substitua:

  • RESOURCE_ID é o ID completo do recurso, incluindo o nome de domínio da API para identificar o tipo de recurso (//compute.googleapis.com/). Use os códigos numéricos para recursos, não os nomes. Por exemplo, um ID de sub-rede tem um formato semelhante a este: //compute.googleapis.com/projects/123/regions/us-central1/subnetworks/456. Um ID de rede tem um formato semelhante a este: //compute.googleapis.com/projects/123/global/networks/789
  • LOCATION: a localização do recurso. Se você estiver visualizando uma tag anexada a um recurso global, como uma pasta ou um projeto, omita essa flag. Se você estiver visualizando uma tag anexada a um recurso regional ou zonal, especifique o local, por exemplo: us-central1 (região) ou us-central1-a (zona).

Você receberá uma resposta semelhante a esta:

name: tagBindings/%2F%2Fcloudresourcemanager.googleapis.com%2Fprojects%2F7890123456/tagValues/567890123456
          tagValue: tagValues/567890123456
          resource: //compute.googleapis.com/projects/7890123456/subnetworks/subnetwork-ID
      

Remover tags de um recurso da VPC

É possível desanexar tags que foram anexadas diretamente a um recurso da VPC. As tags herdadas podem ser substituídas anexando uma tag com a mesma chave e um valor diferente, mas não podem ser removidas. Para excluir uma tag, remova a chave e os valores dela de todos os recursos a que ela está anexada.

gcloud

Para excluir uma vinculação de tag, use o comando gcloud resource-manager tags bindings delete:

      gcloud resource-manager tags bindings delete \
          --tag-value=TAGVALUE_NAME \
          --parent=RESOURCE_ID \
          --location=LOCATION
      

Substitua:

  • TAGVALUE_NAME é o ID permanente ou o nome do namespace do valor da tag anexado; por exemplo: tagValues/567890123456;
  • RESOURCE_ID é o ID completo do recurso, incluindo o nome de domínio da API para identificar o tipo de recurso (//compute.googleapis.com/). Use os códigos numéricos para recursos, não os nomes. Por exemplo, um ID de sub-rede tem um formato semelhante a este: //compute.googleapis.com/projects/123/regions/us-central1/subnetworks/456. Um ID de rede tem um formato semelhante a este: //compute.googleapis.com/projects/123/global/networks/789
  • LOCATION: a localização do recurso. Se você anexar uma tag a um recurso global, como uma pasta ou um projeto, omita essa sinalização. Se você estiver anexando uma tag a um recurso regional ou zonal, especifique o local, por exemplo: us-central1 (região) ou us-central1-a (zona).

Excluir chaves e valores de tags

Ao remover uma chave de tag ou definição de valor, verifique se a tag está separada do recurso da VPC. Você precisa excluir os anexos de tag, chamados de vinculações de tag, antes de excluir a definição da tag. Para excluir chaves e valores de tags, consulte Como excluir tags.

Condições e tags do Identity and Access Management

Você pode usar tags e condições do IAM para conceder vinculações de papéis condicionalmente aos usuários na sua hierarquia. Alterar ou excluir a tag anexada a um recurso removerá o acesso do usuário a esse recurso se uma política do IAM com vinculações de papéis condicionais tiver sido aplicada. Para mais informações, consulte Condições e tags do Identity and Access Management.

A seguir