Como criar e gerenciar tags

Este guia descreve como criar e gerenciar tags. Uma tag é um par de chave-valor que pode ser anexado a uma organização, pasta ou projeto. É possível usar tags para permitir ou negar políticas condicionalmente com base no fato de um recurso ter uma tag específica.

Antes de começar

Para mais informações sobre o que são tags e como elas funcionam, consulte a Visão geral das tags.

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:

  • 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.

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:

  • resourcemanager.tagKeys.create
  • resourcemanager.tagKeys.update
  • resourcemanager.tagKeys.delete
  • resourcemanager.tagKeys.list
  • resourcemanager.tagKeys.get
  • resourcemanager.tagValues.create
  • resourcemanager.tagValues.update
  • resourcemanager.tagValues.delete
  • resourcemanager.tagValues.list
  • resourcemanager.tagValues.get

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:

  • 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

Como criar e definir uma nova tag

As tags são compostas por um par de chave-valor e são anexadas a um recurso de organização, pasta ou projeto na hierarquia do Google Cloud. Para isso, primeiro crie uma chave de tag que descreva a tag que você está criando. Por exemplo, talvez você queira especificar ambientes de produção, teste e desenvolvimento para recursos em sua hierarquia de recursos criando uma chave com o nome env.

Em seguida, crie os diferentes valores da chave. Se você criou uma chave de tag chamada env, especifique que há três ambientes em potencial e crie um valor para cada um: prod,dev e test.

É possível criar no máximo 300 chaves criadas em uma determinada organização e pode haver um total de 300 valores criados para cada chave.

Por fim, você pode anexar esses valores a recursos na sua hierarquia, que têm a associação do par de chave-valor. Por exemplo, é possível anexar test a várias pastas de ambiente de teste em toda a organização, e cada uma precisaria conter o par de chave-valor env: test.

Como criar uma tag

Para começar, você precisa criar uma chave de tag.

O shortName da chave de tag pode ter um tamanho máximo de 63 caracteres. O conjunto de caracteres permitidos para shortName inclui caracteres alfanuméricos maiúsculos e minúsculos (sem internacionalização), hifens, sublinhados e pontos. O shortName precisa começar e terminar com um caractere alfanumérico. Depois que o shortName é criado, não é possível alterá-lo e precisa ser exclusivo no mesmo namespace.

Console

Para criar uma nova chave de tag, faça o seguinte:

  1. Abra a página Tags no Console do Cloud.

    Abrir a página "Tags"

  2. Selecione o Seletor de projetos na parte superior da página.

  3. No seletor de organização, selecione sua organização.

  4. Clique em Criar tag.

  5. Na caixa Nome da tag, insira o nome de exibição da sua chave de tag. Isso se torna parte do nome de namespace da tag.

  6. Na caixa Descrição da tag, insira uma descrição da chave de tag.

  7. Se você quiser adicionar valores da tag a essa chave, clique em Adicionar valor para cada valor de tag que quiser criar.

  8. Na caixa Valor da tag, insira o nome de exibição do valor da sua tag. Isso se torna parte do nome de namespace da tag.

  9. Na caixa Descrição do valor da tag, insira uma descrição.

  10. Quando terminar de adicionar valores de tag, clique em Criar tag.

gcloud

Para criar uma nova chave de tag, use o comando gcloud alpha resource-manager tags keys create:

gcloud alpha resource-manager tags keys create SHORT_NAME \
    --parent=organizations/ORGANIZATION_ID

Em que:

  • SHORT_NAME é o nome de exibição da sua chave de tag. Por exemplo: env.

  • ORGANIZATION_ID é o ID da organização que será o recurso pai dessa chave de tag; por exemplo: 12345678901. Para saber como conseguir o ID da sua organização, consulte Como criar e gerenciar organizações.

Você receberá uma resposta semelhante a esta:

Creating tag key env in organization 1234567890...
<blocking wait until creation completes>
name: tagKeys/123456789012
short_name: env
namespaced_name: 12345678901/env
parent: organizations/12345678901

API

Para gerar uma nova chave de tag, crie uma representação JSON dela. Para mais informações sobre o formato de uma chave de tag, consulte a referência da TagKey.

Em seguida, use o método tagKeys.create:

POST https://cloudresourcemanager.googleapis.com/v3/tagKeys/ -d

Solicitar corpo JSON:

{
    "parent": ORGANIZATION_ID,
    "shortName": SHORT_NAME,
    "description": DESCRIPTION,
}

Em que:

  • SHORT_NAME é o nome de exibição da sua chave de tag. Por exemplo: env.

  • ORGANIZATION_ID é o ID da organização que será o recurso pai dessa chave de tag; por exemplo: organizations/12345678901. Para saber como conseguir o ID da sua organização, consulte Como criar e gerenciar organizações.

  • DESCRIPTION é uma descrição da chave e não pode ter mais de 256 caracteres;

Depois de criar a chave, é possível encontrar o nome de exibição legível exclusivo chamado namespacedName, que tem namespace na organização pai e um ID permanente globalmente exclusivo chamado name.

Como visualizar uma chave de tag

É possível encontrar informações sobre uma determinada chave de tag usando o ID permanente ou o nome do namespace que é exibido ao criá-la.

Console

Para visualizar uma tag criada, faça o seguinte:

  1. Abra a página Tags no Console do Cloud.

    Abrir a página "Tags"

  2. Selecione o Seletor de projetos na parte superior da página.

  3. No seletor de organização, selecione sua organização.

  4. Todas as tags desta organização aparecem na lista. Clique na tag com a chave de tag que você quer ver.

gcloud

Para exibir as informações relacionadas a uma determinada chave de tag, use o comando gcloud alpha resource-manager tags keys describe:

gcloud alpha resource-manager tags keys describe TAGKEY_NAME

Em que TAGKEY_NAME é o ID permanente ou o nome do namespace da chave de tag de que você quer exibir informações. por exemplo: tagKeys/123456789012.

Você receberá uma resposta semelhante a esta:

name: tagKeys/123456789012
short_name: env
namespaced_name: 12345678901/env
parent: organizations/12345678901

API

Para exibir as informações relacionadas a uma determinada chave de tag, use o método tagKeys.get:

GET https://cloudresourcemanager.googleapis.com/v3/{name=TAGKEY_NAME}

em que TAGKEY_NAME é o ID permanente da chave de tag com as informações que você quer exibir. por exemplo: tagKeys/123456789012.

Como adicionar valores de tag

Depois de criar uma chave de tag, adicione valores aceitos para ela.

O shortName do valor da tag pode ter no máximo 63 caracteres. O conjunto de caracteres permitidos para shortName inclui caracteres alfanuméricos maiúsculos e minúsculos (sem internacionalização), hifens, sublinhados e pontos. O shortName precisa começar e terminar com um caractere alfanumérico. Depois que o shortName é criado, não é possível alterá-lo e precisa ser exclusivo no mesmo namespace.

Console

Para criar um novo valor de tag, faça o seguinte:

  1. Abra a página Tags no Console do Cloud.

    Abrir a página "Tags"

  2. Selecione o Seletor de projetos na parte superior da página.

  3. No seletor de organização, selecione sua organização.

  4. Na lista de tags, clique na tag à qual você quer adicionar um novo valor.

  5. Clique em Adicionar valor.

  6. Na caixa Valor da tag, insira o nome de exibição do valor da sua tag. Isso se torna parte do nome de namespace da tag.

  7. Na caixa Descrição do valor da tag, insira uma descrição.

  8. Clique em Save.

gcloud

Para criar um novo valor de tag, use o comando gcloud alpha resource-manager tags keys create. Especifique a chave com que esse valor é criado:

gcloud alpha resource-manager tags values create TAGVALUE_SHORTNAME \
    --parent=TAGKEY_NAME

Em que:

  • TAGVALUE_SHORTNAME é o nome curto do novo valor da tag; por exemplo: prod.

  • TAGKEY_NAME é o ID permanente ou o nome do namespace da chave de tag pai. por exemplo: tagKeys/4567890123.

Você receberá uma resposta semelhante a esta:

Creating tag value prod in tag key 12345678901/env...
<blocking wait until creation completes>
name: tagValues/7890123456
short_name: prod
namespaced_name: 12345678901/env/prod
parent: tagKeys/123456789012

API

Para gerar um novo valor de tag, crie uma representação JSON do valor. Para mais informações sobre o formato de um valor de tag, consulte a referência de TagValue.

Em seguida, use o método tagValues.create:

POST https://cloudresourcemanager.googleapis.com/v3/tagValues/ -d

Solicitar corpo JSON:

{
    "parent": TAGKEY_NAME,
    "shortName": SHORT_NAME,
    "description": DESCRIPTION,
}

Em que:

  • TAGKEY_NAME é o ID permanente da chave de tag pai. por exemplo:tagKeys/4567890123.

  • SHORT_NAME é o nome de exibição do valor da tag. Por exemplo: env.

  • DESCRIPTION é uma descrição do valor e não pode ter mais do que 256 caracteres.

Depois de criar o valor, é possível encontrar o nome de exibição legível exclusivo chamado namespacedName, que tem namespace na organização pai e um ID permanente globalmente exclusivo chamado name.

Como recuperar valores de tag

É possível encontrar informações sobre um valor de tag específico usando o ID permanente ou o nome do namespace que foi exibido ao criá-lo.

Console

Para visualizar uma tag criada, faça o seguinte:

  1. Abra a página Tags no Console do Cloud.

    Abrir a página "Tags"

  2. Selecione o Seletor de projetos na parte superior da página.

  3. No seletor de organização, selecione sua organização.

  4. Todas as tags que você criou nessa organização aparecem na lista. Clique na tag com os valores da tag.

gcloud

Para exibir as informações relacionadas a um determinado valor de tag, use o comando gcloud alpha resource-manager tags values describe:

gcloud alpha resource-manager tags values describe TAGVALUE_NAME

Em que TAGVALUE_NAME é o nome de namespace do valor da tag. por exemplo: 1234567890/env/prod.

Você receberá uma resposta semelhante a esta:

short_name: prod
namespaced_name: 1234567890/env/prod
parent: tagKeys/123456789012

API

Para exibir as informações relacionadas a um determinado valor de tag, use o método tagValues.get:

GET https://cloudresourcemanager.googleapis.com/v3/{name=TAGVALUE_NAME}

Em que TAGVALUE_NAME é o ID permanente do valor da tag. por exemplo: tagValues/4567890123.

Ao fazer referência a tags usando a ferramenta de linha de comando gcloud, é possível usar o nome do namespace ou o ID permanente para chaves e valores de tags. As chamadas para a API só devem usar o ID permanente. Consulte Definições e identificadores de tag para mais informações sobre os tipos de identificadores usados por uma tag.

Como atualizar tags existentes

É possível modificar uma tag existente atualizando a chave ou os valores associados a ela. Você pode atualizar a descrição de uma tag, mas não o nome curto.

Console

Para atualizar a descrição da chave de tag, faça o seguinte:

  1. Abra a página Tags no Console do Cloud.

    Abrir a página "Tags"

  2. Selecione o Seletor de projetos na parte superior da página.

  3. No seletor de organização, selecione sua organização.

  4. Clique em Ações ao lado da chave de tag que você quer atualizar e clique em Visualizar detalhes.

  5. Clique em Editar ao lado de Descrição, na parte superior da tela.

  6. Atualize a descrição da chave de tag.

  7. Clique em Save.

gcloud

Para modificar uma descrição da chave de tag, use o comando gcloud alpha resource-manager tags keys update:

gcloud alpha resource-manager tags keys update TAGKEY_NAME \
    --description=NEW_DESCRIPTION

Em que:

  • TAGKEY_NAME é o ID permanente ou o nome do namespace da chave a ser atualizada. por exemplo: tagKeys/123456789012.

  • NEW_DESCRIPTION é uma string de no máximo 256 caracteres a ser usada como a nova descrição.

Você receberá uma resposta semelhante a esta:

name: tagKeys/123456789012
short_name: env
namespaced_name: 12345678901/env
description: "new description"
parent: organizations/12345678901

API

Para modificar uma descrição da chave de tag, use o método tagKeys.patch:

PATCH https://cloudresourcemanager.googleapis.com/v3/{tagKey.name=TAGKEY_NAME} -d

Solicitar corpo JSON:

{
    "description": DESCRIPTION,
}

Em que:

  • TAGKEY_NAME é o ID permanente da chave de tag. Por exemplo: tagKeys/123456789012.

  • DESCRIPTION é uma descrição da chave e não pode ter mais de 256 caracteres;

Também é possível alterar a descrição dos valores da tag.

Console

Para atualizar a descrição de um valor de tag, faça o seguinte:

  1. Abra a página Tags no Console do Cloud.

    Abrir a página "Tags"

  2. Selecione o Seletor de projetos na parte superior da página.

  3. No seletor de organização, selecione sua organização.

  4. Clique em Ações ao lado da chave de tag do valor que você quer atualizar e, em seguida, clique em Visualizar detalhes.

  5. Clique em Ações ao lado do valor da tag que você quer atualizar e, em seguida, clique em Visualizar detalhes.

  6. Clique em Editar ao lado de Descrição, na parte superior da tela.

  7. Atualize a descrição do valor da tag.

  8. Clique em Save.

gcloud

Para modificar uma descrição do valor da tag, use o comando gcloud alpha resource-manager tags values update:

gcloud alpha resource-manager tags values update TAGVALUE_NAME \
    --description="NEW_DESCRIPTION"

Em que:

  • TAGVALUE_NAME é o ID permanente ou o nome do namespace do valor da tag a ser atualizado; por exemplo: tagValues/4567890123.

  • NEW_DESCRIPTION é uma string de no máximo 256 caracteres a ser usada como a nova descrição.

Você receberá uma resposta semelhante a esta:

short_name: prod
namespaced_name: 12345678901/env/prod
parent: tagKeys/123456789012
description: "new description"

API

Para modificar a descrição da chave de uma tag, use o comando tagValues.patch:

PATCH https://cloudresourcemanager.googleapis.com/v3/{tagKey.name=TAGVALUE_NAME} -d

Solicitar corpo JSON:

{
    "description": DESCRIPTION,
}

Em que:

  • TAGVALUE_NAME é o nome do ID permanente do valor da tag; por exemplo: tagValues/4567890123.

  • DESCRIPTION é uma descrição da chave e não pode ter mais de 256 caracteres;

Como listar chaves de tags

É possível listar todas as chaves de tag associadas a uma organização específica usando o Console do Cloud, a ferramenta gcloud ou uma chamada para a API.

Console

Para visualizar todas as tags:

  1. Abra a página Tags no Console do Cloud.

    Abrir a página "Tags"

  2. Selecione o Seletor de projetos na parte superior da página.

  3. No seletor de organização, selecione sua organização.

  4. Todas as tags que você criou nessa organização aparecem na lista.

gcloud

Para retornar uma lista de todas as chaves de tag anexadas a um recurso organização, use o comando gcloud alpha resource-manager tags keys list:

gcloud alpha resource-manager tags keys list --parent=ORGANIZATION_ID

em que ORGANIZATION_ID é o ID da organização para a qual você quer encontrar as chaves de tag anexadas.

  • Um ID da organização precisa ser fornecido no formato organizations/ORGANIZATION_ID. Por exemplo: organizations/12345678901. Para saber como conseguir o ID da sua organização, consulte Como criar e gerenciar organizações.

Você receberá uma resposta semelhante a esta:

NAME                     SHORT_NAME      DESCRIPTION
tagKeys/123456789012          env         description of tag key

API

Para retornar uma lista de todas as chaves de tag de um determinado recurso, use o método tagKeys.list com o recurso pai especificado na consulta:

GET https://cloudresourcemanager.googleapis.com/v3/tagKeys

{
    "parent": "RESOURCE_ID"
}

em que RESOURCE_ID é o código do recurso para o qual você quer encontrar as chaves de tag anexadas. por exemplo: organizations/12345678901.

Listar valores de tag

É possível listar todos os valores de tag associados a uma chave de tag específica usando o Console do Cloud, a ferramenta gcloud ou com uma chamada para a API.

Console

Para visualizar todos os valores de tag anexados a uma chave de tag, faça o seguinte:

  1. Abra a página Tags no Console do Cloud.

    Abrir a página "Tags"

  2. Selecione o Seletor de projetos na parte superior da página.

  3. No seletor de organização, selecione sua organização.

  4. Clique em Ações ao lado da chave de tag que contém os valores da tag que você quer encontrar e clique em Visualizar detalhes.

  5. Todos os valores da tag que você criou nessa chave de tag aparecerão na lista.

gcloud

Para retornar uma lista de todos os valores de tag anexados a uma chave, use o comando gcloud alpha resource-manager tags values list:

gcloud alpha resource-manager tags values list --parent=TAGKEY_NAME

Em que TAGKEY_NAME é o ID permanente ou o nome do namespace da chave de tag em que você quer encontrar os valores anexados. por exemplo: tagKeys/123456789012.

Você receberá uma resposta semelhante a esta:

NAME                     SHORT_NAME
tagValues/123456789012   prod

API

Para retornar uma lista de todos os valores da tag anexados a uma chave, use o método tagValues.list com a chave de tag pai especificada na consulta:

GET https://cloudresourcemanager.googleapis.com/v3/tagValues

{
    "parent": "TAGKEY_NAME"
}

em que TAGKEY_NAME é o nome do ID permanente da chave de tag. por exemplo: tagKeys/123456789012.

Como gerenciar o acesso a tags

É possível conceder aos usuários acesso específico para gerenciar tags e anexar valores de tag aos recursos usando o Console do Cloud. Consulte Permissões necessárias para ver a lista de papéis relacionados às tags e as permissões contidas neles.

Chaves de tag

Para gerenciar o acesso de usuários em uma chave de tag, faça o seguinte:

  1. Abra a página Tags no Console do Cloud.

    Abrir a página "Tags"

  2. Selecione o Seletor de projetos na parte superior da página.

  3. No seletor de organização, selecione sua organização.

  4. Clique na caixa de seleção ao lado da tag com o acesso que você quer gerenciar.

  5. Clique em Gerenciar acesso.

  6. Para adicionar um papel a um principal, clique em Adicionar principal.

    1. Na caixa de texto Novos principais, insira o endereço de e-mail do principal que você quer conceder um novo papel.

    2. Escolha um papel no menu suspenso Selecionar um papel. Se quiser adicionar mais de um papel, clique em Adicionar outro papel.

    3. Se quiser enviar uma notificação, clique na caixa de seleção ao lado de Enviar e-mail de notificação.

    4. Clique em Save.

  7. Para editar o papel de um principal, clique em Editar ao lado do principal que você quer editar.

    1. Para alterar os papéis atribuídos aos principais dessa tag, clique no menu suspenso Papel e escolha um novo papel.

    2. Se quiser adicionar mais papéis, clique em Adicionar outro papel.

    3. Para excluir um papel desse principal na tag, clique em Excluir papel ao lado do papel que você quer excluir.

    4. Clique em Save.

  8. Para excluir o papel de um principal, clique em Excluir papel ao lado do papel que você quer excluir.

    1. Clique em Remover.

Valores da tag

Para gerenciar o acesso de usuários em um valor de tag, faça o seguinte:

  1. Abra a página Tags no Console do Cloud.

    Abrir a página "Tags"

  2. Selecione o Seletor de projetos na parte superior da página.

  3. No seletor de organização, selecione sua organização.

  4. Clique em Ações ao lado da chave de tag do valor cujo acesso você quer gerenciar e, em seguida, clique em Visualizar detalhes.

  5. Clique em Gerenciar acesso.

  6. Para adicionar um papel a um principal, clique em Adicionar principal.

    1. Na caixa de texto Novos principais, insira o endereço de e-mail do principal que você quer conceder um novo papel.

    2. Escolha um papel no menu suspenso Selecionar um papel. Se quiser adicionar mais de um papel, clique em Adicionar outro papel.

    3. Se quiser enviar uma notificação, clique na caixa de seleção ao lado de Enviar e-mail de notificação.

    4. Clique em Save.

  7. Para editar o papel de um principal, clique em Editar ao lado do principal que você quer editar.

    1. Para alterar os papéis atribuídos aos principais dessa tag, clique no menu suspenso Papel e escolha um novo papel.

    2. Se quiser adicionar mais papéis, clique em Adicionar outro papel.

    3. Para excluir um papel desse principal na tag, clique em Excluir papel ao lado do papel que você quer excluir.

    4. Clique em Save.

  8. Para excluir o papel de um principal, clique em Excluir papel ao lado do papel que você quer excluir.

    1. Clique em Remover.

Como anexar tags aos recursos

Depois que uma tag é criada e o acesso apropriado é concedido à tag e ao recurso, a tag pode ser anexada a um recurso do Google Cloud como um par de chave-valor. Exatamente um valor pode ser anexado a um recurso para uma determinada chave. Por exemplo, se env: dev estiver anexado, env: prod ou env: test não poderá ser anexado. Cada recurso pode ter no máximo 300 pares de chave-valor anexados.

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

Console

Para anexar uma tag a um recurso, faça o seguinte:

  1. Abra a página Gerenciar recursos no Console do Cloud.

    Abrir a página "Gerenciar recursos"

  2. Clique na organização, na pasta ou no projeto a que você quer anexar uma tag.

  3. No painel de informações exibido, clique na guia Tags.

  4. Clique no botão de opção Adicionar vinculações de tag.

  5. Na caixa Valor da tag, insira o nome do namespace do valor da tag que você quer anexar. por exemplo, 4567890123/Environment/Test.

  6. Se você quiser anexar mais valores de tag, clique em Adicionar valor e insira o nome do namespace de cada valor de tag.

  7. Clique em Salvar vinculações.

  8. A nova tag é exibida na coluna Tags da página Gerenciar recursos.

gcloud

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

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

Em que:

  • TAGVALUE_NAME é o ID permanente ou o nome do namespace do valor da tag a ser anexado; por exemplo: tagValues/4567890123.

  • RESOURCE_ID é o ID completo do recurso, incluindo o nome de domínio da API, para identificar o tipo de recurso (//cloudresourcemanager.googleapis.com/). Por exemplo, para anexar uma tag a projects/7890123456, o ID completo seria: //cloudresourcemanager.googleapis.com/projects/7890123456

  • LOCATION é o local 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, como uma instância do Compute Engine, precisará especificar o local; por exemplo: us-central1.

API

Para anexar uma tag a um recurso, primeiro crie uma representação JSON de uma vinculação de tag que inclua os códigos permanentes do valor da tag e do recurso. Para mais informações sobre o formato de uma vinculação de tags, consulte a referência de TagBinding.

Se você estiver anexando a tag a um recurso global, como uma organização, use o método tagBindings.create com o nome do host do endpoint global:

POST https://cloudresourcemanager.googleapis.com/v3/tagBindings

Se você estiver anexando a tag a um recurso regional, como uma instância do Compute Engine, use o método tagBindings.create com o endpoint regional onde o recurso está localizado.

POST https://LOCATION-cloudresourcemanager.googleapis.com/v3/tagBindings

Solicitar corpo JSON:

{
    "parent": RESOURCE_ID,
    "tagValue": TAGVALUE_NAME,
}

Em que:

  • RESOURCE_ID é o ID completo do recurso, incluindo o nome de domínio da API, para identificar o tipo de recurso (//cloudresourcemanager.googleapis.com/). Por exemplo, para anexar uma tag a projects/7890123456, o ID completo seria: //cloudresourcemanager.googleapis.com/projects/7890123456

  • TAGVALUE_NAME é o ID permanente do valor da tag anexado; por exemplo: tagValues/4567890123.

Como listar todas as tags anexadas a um recurso

É possível ver uma lista de todas as tags anexadas a um recurso. Os exemplos a seguir fornecem uma lista de vinculações de tags anexadas diretamente ao recurso, mas não retornarão nenhuma tag herdada dos recursos pai.

Console

Para ver todas as tags anexadas a um recurso, faça o seguinte:

  1. Abra a página Gerenciar recursos no Console do Cloud.

    Abrir a página "Gerenciar recursos"

  2. Encontre sua organização, pasta ou projeto na lista de recursos.

  3. As tags anexadas ao recurso aparecem na coluna Tags.

gcloud

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

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

Em que:

  • RESOURCE_ID é o ID completo do recurso. por exemplo: //cloudresourcemanager.googleapis.com/projects/7890123456

  • LOCATION é o local do recurso; Se você estiver listando as tags anexadas a um recurso global, como uma pasta ou um projeto, omita essa sinalização. Se você estiver anexando uma tag a um recurso regional, como uma instância do Compute Engine, precisará especificar o local; por exemplo: us-central1.

Você receberá uma resposta semelhante a esta:

name: tagBindings/%2F%2Fcloudresourcemanager.googleapis.com%2Fprojects%2F7890123456/tagValues/567890123456
tagValue: tagValues/567890123456
resource: //cloudresourcemanager.googleapis.com/projects/7890123456

API

Para ver uma lista de vinculações de tag anexadas a um recurso global, como uma organização, use o método tagBindings.list, especificando o recurso pai na consulta:

GET https://cloudresourcemanager.googleapis.com/v3/tagBindings

{
    "parent": "RESOURCE_ID"
}

Se você quiser listar as vinculações de tags anexadas a um recurso regional, como instâncias do Compute Engine, use o método tagBindings.list com o endpoint regional onde seu recurso está localizado.

GET https://LOCATION-cloudresourcemanager.googleapis.com/v3/tagBindings

{
    "parent": "RESOURCE_ID"
}

Em que:

  • RESOURCE_ID é o ID completo do recurso. por exemplo: //cloudresourcemanager.googleapis.com/projects/7890123456.

  • LOCATION é o endpoint regional do recurso; por exemplo: us-central1.

Se a solicitação for bem-sucedida, o corpo da resposta incluirá uma lista de objetos TagBinding. Exemplo:

name: tagBindings/cloudresourcemanager.googleapis.com/projects/7890123456/567890123456
tagValue: tagValues/567890123456
resource: //cloudresourcemanager.googleapis.com/projects/7890123456

Como remover uma tag de um recurso

É possível desanexar uma tag de um recurso excluindo o recurso de vinculação de tags.

Console

Para remover uma tag de um recurso, faça o seguinte:

  1. Abra a página Gerenciar recursos no Console do Cloud.

    Abrir a página "Gerenciar recursos"

  2. Clique na organização, na pasta ou no projeto de que você quer remover uma tag.

  3. No painel de informações exibido, clique na guia Tags.

  4. Clique no botão de opção Remover vinculações de tag.

  5. Na caixa Valor da tag, insira o nome do namespace do valor da tag que você quer remover. por exemplo, 4567890123/Environment/Test.

  6. Clique em Salvar vinculações.

  7. Você encontra a lista atualizada de tags anexadas na coluna Tags da página Gerenciar recursos.

gcloud

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

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

Em que:

  • 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. Exemplo: //cloudresourcemanager.googleapis.com/projects/7890123456

  • LOCATION é o local do recurso; Se você estiver excluindo uma vinculação de tag anexada a um recurso global, como uma pasta ou um projeto, omita essa sinalização. Para excluir uma vinculação de tag anexada a um recurso regional, como uma instância do Compute Engine, especifique o local. por exemplo: us-central1.

API

Para excluir uma vinculação de tag anexada a um recurso global, como uma organização, use o método tagBindings.delete:

DELETE https://cloudresourcemanager.googleapis.com/v3/{name=TAGBINDINGS_NAME}

Se você quiser excluir uma vinculação de tag anexada a um recurso regional, como uma instância do Compute Engine, use o método tagBindings.delete com o endpoint regional onde o recurso está localizado.

DELETE https://LOCATION-cloudresourcemanager.googleapis.com/v3/{name=TAGBINDINGS_NAME}

Em que:

  • TAGBINDINGS_NAME é o ID permanente da TagBinding; por exemplo: tagBindings/%2F%2Fcloudresourcemanager.googleapis.com%2Fprojects%2F1234567890/tagValues/567890123456.

  • LOCATION é o endpoint regional do recurso; por exemplo: us-central1.

Excluindo tags

Para excluir uma tag, é necessário excluir cada um dos componentes que a definem. Primeiro, exclua todas as vinculações de tag que anexam essa tag aos recursos na sua hierarquia. Para instruções sobre como excluir vinculações de tags, consulte Como remover uma tag de um recurso.

Quando não houver mais vinculações de tag para os valores de tag que você quer excluir, é possível excluir os valores.

Console

Para excluir um valor de tag, faça o seguinte:

  1. Abra a página Tags no Console do Cloud.

    Abrir a página "Tags"

  2. Selecione o Seletor de projetos na parte superior da página.

  3. No seletor de organização, selecione sua organização.

  4. Clique em Ações ao lado da chave de tag que contém o valor da tag que você quer excluir e clique em Ver detalhes.

  5. Na lista de valores da tag associados a essa chave, clique no valor que você quer excluir.

  6. Clique na caixa de seleção ao lado do valor da tag que você quer excluir e clique em Excluir valores.

  7. Clique em Confirm.

gcloud

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

gcloud alpha resource-manager tags values delete TAGVALUE_NAME

Em que TAGVALUE_NAME é o ID permanente ou o nome do namespace do valor da tag que você quer excluir. por exemplo: tagValues/567890123456.

API

Para excluir um valor de tag, use o método tagValues.delete:

DELETE https://cloudresourcemanager.googleapis.com/v3/{name=TAGVALUE_NAME}

em que TAGVALUE_NAME é o ID permanente do valor da tag que você quer excluir. por exemplo: tagValues/567890123456.

Depois que todos os valores de tag associados a uma chave forem excluídos, você poderá excluí-la.

Console

Para excluir uma chave de tag, faça o seguinte:

  1. Abra a página Tags no Console do Cloud.

    Abrir a página "Tags"

  2. Selecione o Seletor de projetos na parte superior da página.

  3. No seletor de organização, selecione sua organização.

  4. Clique na caixa de seleção ao lado da chave de tag que você quer excluir.

  5. Clique em Excluir tags.

  6. Clique em Confirm.

gcloud

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

gcloud alpha resource-manager tags keys delete TAGKEYS_NAME

Em que TAGKEYS_NAME é o ID permanente ou o nome do namespace da chave de tag que você quer excluir. por exemplo: tagKeys/123456789012.

API

Para excluir uma chave de tag, use o método tagKeys.delete:

DELETE https://cloudresourcemanager.googleapis.com/v3/{name=TAGKEYS_NAME}

em que TAGKEYS_NAME é o ID permanente da chave de tag que você quer excluir; por exemplo: tagKeys/123456789012.

Políticas e Tags

Use tags com políticas compatíveis para aplicá-las condicionalmente. Torne a presença ou ausência de um valor de tag uma condição para essa política.

Por exemplo, é possível conceder condicionalmente papéis de gerenciamento de identidade e acesso (IAM, na sigla em inglês) com base no fato de um recurso ter uma tag específica.

Para mais informações sobre o uso de tags com o IAM para ajudar a controlar o acesso aos recursos do Google Cloud, consulte Tags e controle de acesso.

Também é possível usar políticas da organização com tags para controlar como as restrições da política da organização são aplicadas. Para mais informações, consulte Como configurar uma política da organização com tags.

Como exigir tags de recursos

Você pode usar tags e condições de gerenciamento de identidade e acesso para tornar a inclusão de tags obrigatória para recursos na sua hierarquia. Esse processo tornará os recursos inutilizáveis até que você anexe uma determinada tag a ela. Por exemplo, talvez você queira exigir que os desenvolvedores atribuam um centro de custo a um recurso antes de usá-lo.

  1. Crie uma tag que possa ser usada para associar recursos a algo que identificará se os recursos tiveram a governança adequada aplicada. Por exemplo, você pode criar uma tag com a chave costCenter e os valores 0001, 0002 e assim por diante, para associar os recursos aos vários centros de custo em sua empresa.

  2. Crie um papel personalizado no nível da organização que permita aos usuários adicionar tags aos recursos que exigem tags. Isso concederá essas permissões aos principais especificados em qualquer lugar da organização.

    Por exemplo, um papel personalizado que permite aos usuários adicionar tags a projetos inclui as seguintes permissões:

    • resourcemanager.projects.get
    • resourcemanager.hierarchyNodes.create
    • resourcemanager.hierarchyNodes.delete
    • resourcemanager.hierarchyNodes.list
  3. Ao criar projetos para os desenvolvedores, atribua a eles esse papel personalizado no projeto.

  4. Atribua quaisquer outros papéis aos desenvolvedores que incluam as permissões para eles executarem as ações desejadas dentro desse projeto. Ao conceder papéis aos usuários no projeto, eles precisam ser sempre concedidos condicionalmente para exigir o anexo da tag costCenter.

    resource.hasTagKey('12345678901/costCenter')
    

Agora, sempre que um projeto for criado, seus desenvolvedores precisarão anexar a tag costCenter a ele antes de executar as ações concedidas pela política do IAM.

Solução de problemas conhecidos

A expressão de condição falha

Se você executar um dos comandos add-iam-policy-binding usando a ferramenta de linha de comando gcloud e a política do IAM nesse recurso contiver vinculações de papéis condicionais para esse papel, a ferramenta da ferramenta gcloud solicitará que: Escolher uma das expressões de condição que existe na política. Se você escolher uma expressão condicional que contenha uma vírgula, o comando falhará. Para solucionar esse problema, use a sinalização --condition para especificar uma expressão de condição na linha de comando.