Este guia descreve como criar e gerenciar tags em secrets do Secret Manager. É possível usar tags para agrupar secrets relacionados do Secret Manager e armazenar metadados sobre esses recursos com base nas tags deles.
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, consulte Visão geral das 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 .
Permissões necessárias
Para receber as permissões necessárias para gerenciar tags, peça ao administrador que conceda a você os seguintes papéis do IAM:
-
Leitor de tags (
roles/resourcemanager.tagViewer) nos recursos a que as tags estão anexadas -
Visualizar e gerenciar tags no nível da organização:
Leitor da organização (
roles/resourcemanager.organizationViewer) na organização -
Criar, atualizar e excluir definições de tags:
Administrador de tags (
roles/resourcemanager.tagAdmin) no recurso em que você está criando, atualizando ou excluindo tags -
Anexar e remover tags de recursos:
Usuário de tag (
roles/resourcemanager.tagUser) no valor da tag e nos recursos a que você está anexando ou removendo o valor da tag
Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.
Também é possível conseguir as permissões necessárias usando papéis personalizados ou outros papéis predefinidos.
Para anexar tags a secrets do Secret Manager, você precisa do papel Administrador do Secret Manager (roles/secretmanager.admin).
Criar chaves e valores de tags
Antes de anexar uma tag, é preciso criá-la e configurar o valor dela. Para mais informações, consulte Como criar uma tag e Como adicionar um valor de tag.
Adicionar tags durante a criação de recursos
É possível adicionar tags ao criar secrets. Assim, você fornece metadados essenciais para seus recursos e permite uma melhor organização, rastreamento de custos e aplicação automatizada de políticas.
Console
- Acesse a página Secret Manager no console Google Cloud .
- Selecione a opção para criar um novo secret.
- Clique em Gerenciar tags.
- Se a organização não aparecer no painel Gerenciar tags, clique em Selecionar escopo para tags e escolha sua organização ou projeto.
- Clique em Adicionar tag.
- Selecione a chave e o valor da tag na lista. É possível filtrar a lista usando palavras-chave.
- Clique em Salvar. A seção Tags é atualizada com as informações das tags.
- Crie seu secret. O novo Secret é criado com as tags fornecidas.
gcloud
Antes de usar os dados do comando abaixo, faça estas substituições:
- SECRET_ID: o identificador exclusivo do secret.
- TAG_KEY: o ID permanente ou o nome do namespace da chave de tag anexada. Por exemplo,
tagKeys/567890123456. - TAG_VALUE: o ID permanente ou o nome do namespace do valor da tag anexado; por exemplo,
tagValues/567890123456.
Especifique várias tags separando-as por vírgula, por exemplo, TAGKEY1=TAGVALUE1,TAGKEY2=TAGVALUE2.
Execute o seguinte comando:
Linux, macOS ou Cloud Shell
gcloud secrets create SECRET_ID --tags=TAG_KEY=TAG_VALUE
Windows (PowerShell)
gcloud secrets create SECRET_ID --tags=TAG_KEY=TAG_VALUE
Windows (cmd.exe)
gcloud secrets create SECRET_ID --tags=TAG_KEY=TAG_VALUE
REST
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- PROJECT_ID: o ID do projeto
- SECRET_ID: o identificador exclusivo do secret
- TAGKEY_NAME: o ID permanente ou o nome do namespace da chave de tag anexada. Por exemplo,
tagKeys/567890123456. - TAGVALUE_NAME: o ID permanente ou o nome do namespace do valor da tag anexado; por exemplo,
tagValues/567890123456.
Método HTTP e URL:
POST https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets?secretId=SECRET_ID
Corpo JSON da solicitação:
{
"replication": {
"automatic": {}
},
"tags": {
"TAGKEY_NAME": "TAGVALUE_NAME"
}
}
Para enviar a solicitação, escolha uma destas opções:
curl
Salve o corpo da solicitação em um arquivo com o nome request.json e execute o comando abaixo:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets?secretId=SECRET_ID"
PowerShell
Salve o corpo da solicitação em um arquivo com o nome request.json e execute o comando a seguir:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets?secretId=SECRET_ID" | Select-Object -Expand Content
Você receberá um código de status bem-sucedido (2xx) e uma resposta vazia.
C#
Para executar esse código, primeiro configure um ambiente de desenvolvimento em C# e instale o SDK do C# do Secret Manager. No Compute Engine ou no GKE, você precisa fazer a autenticação com o escopo do cloud-platform.
Go
Para executar esse código, primeiro configure um ambiente de desenvolvimento do Go e instale o SDK do Go do Secret Manager. No Compute Engine ou no GKE, você precisa fazer a autenticação com o escopo do cloud-platform.
Java
Para executar esse código, primeiro configure um ambiente de desenvolvimento do Java e instale o SDK do Java do Secret Manager. No Compute Engine ou no GKE, você precisa fazer a autenticação com o escopo do cloud-platform.
Node.js
Para executar esse código, primeiro configure um ambiente de desenvolvimento do Node.js e instale o SDK do Node.js do Secret Manager. No Compute Engine ou no GKE, você precisa fazer a autenticação com o escopo do cloud-platform.
PHP
Para executar este código, veja primeiro como usar o PHP no Google Cloud e instalar o SDK do PHP do Secret Manager. No Compute Engine ou no GKE, você precisa fazer a autenticação com o escopo do cloud-platform.
Python
Para executar esse código, primeiro configure um ambiente de desenvolvimento do Python e instale o SDK do Python do Secret Manager. No Compute Engine ou no GKE, você precisa fazer a autenticação com o escopo do cloud-platform.
Ruby
Para executar esse código, primeiro configure um ambiente de desenvolvimento em Ruby e instale o SDK do Ruby do Secret Manager. No Compute Engine ou no GKE, você precisa fazer a autenticação com o escopo do cloud-platform.
Adicionar tags a recursos atuais
Para adicionar uma tag a segredos atuais, siga estas etapas:
Console
- Acesse a página Secret Manager no console Google Cloud .
- Selecione o secret a que você quer anexar uma tag.
- Clique em Tags.
- Se a organização não aparecer no painel Tags, clique em Selecionar escopo. Selecione sua organização e clique em Abrir.
- Clique em Adicionar tag.
- Selecione a chave e o valor da tag na lista. É possível filtrar a lista usando palavras-chave.
- Clique em Salvar.
- Na caixa de diálogo Confirmar, clique em Confirmar para anexar a tag.
Uma notificação confirma que suas tags foram atualizadas.
gcloud
Para anexar uma tag a um secret, crie um
recurso de vinculação de tag usando o
comando gcloud resource-manager tags bindings create:
Antes de usar os dados do comando abaixo, faça estas substituições:
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 (//secretmanager.googleapis.com/). Por exemplo, para anexar uma tag a/projects/PROJECT_ID/secrets/SECRET_ID, o ID completo é//secretmanager.googleapis.com/projects/PROJECT_ID/secrets/SECRET_ID.
Execute o seguinte comando:
Linux, macOS ou Cloud Shell
gcloud resource-manager tags bindings create \ --tag-value=TAGVALUE_NAME \ --parent=RESOURCE_ID
Windows (PowerShell)
gcloud resource-manager tags bindings create ` --tag-value=TAGVALUE_NAME ` --parent=RESOURCE_ID
Windows (cmd.exe)
gcloud resource-manager tags bindings create ^ --tag-value=TAGVALUE_NAME ^ --parent=RESOURCE_ID
Node.js
Para executar esse código, primeiro configure um ambiente de desenvolvimento do Node.js e instale o SDK do Node.js do Secret Manager. No Compute Engine ou no GKE, você precisa fazer a autenticação com o escopo do cloud-platform.
PHP
Para executar este código, veja primeiro como usar o PHP no Google Cloud e instalar o SDK do PHP do Secret Manager. No Compute Engine ou no GKE, você precisa fazer a autenticação com o escopo do cloud-platform.
Python
Para executar esse código, primeiro configure um ambiente de desenvolvimento do Python e instale o SDK do Python do Secret Manager. No Compute Engine ou no GKE, você precisa fazer a autenticação com o escopo do cloud-platform.
Listar tags anexadas a recursos
É possível conferir uma lista de vinculações de tags anexadas diretamente ou herdadas pelo secret.
Console
- Acesse a página Secret Manager no console Google Cloud .
- As tags são mostradas na coluna Tags do secret.
gcloud
Para consultar uma lista de vinculações de tags anexadas a um recurso, use o
comando gcloud resource-manager tags bindings list:
Antes de usar os dados do comando abaixo, faça estas substituições:
RESOURCE_IDé o ID completo do recurso, incluindo o nome de domínio da API para identificar o tipo de recurso (//secretmanager.googleapis.com/). Por exemplo, para anexar uma tag a/projects/PROJECT_ID/secrets/SECRET_ID, o ID completo é//secretmanager.googleapis.com/projects/PROJECT_ID/secrets/SECRET_ID.
Execute o seguinte comando:
Linux, macOS ou Cloud Shell
gcloud resource-manager tags bindings list \ --parent=RESOURCE_ID
Windows (PowerShell)
gcloud resource-manager tags bindings list ` --parent=RESOURCE_ID
Windows (cmd.exe)
gcloud resource-manager tags bindings list ^ --parent=RESOURCE_ID
Você receberá uma resposta semelhante a esta:
name: tagBindings/%2F%2Fcloudresourcemanager.googleapis.com%2Fprojects%2F7890123456/tagValues/567890123456
tagValue: tagValues/567890123456
resource: //secretmanager.googleapis.com/projects/project-abc/secrets/secret-xyz
Remover tags de recursos
É possível desanexar tags que foram anexadas diretamente a um secret. As tags herdadas podem ser substituídas anexando uma tag com a mesma chave e um valor diferente, mas não podem ser removidas.
Console
- Acesse a página Secret Manager no console Google Cloud .
- Selecione o secret de que você quer remover uma tag.
- Clique em Tags.
- No painel Tags, ao lado da tag que você quer remover, clique em Excluir item.
- Clique em Salvar.
- Na caixa de diálogo Confirmar, clique em Confirmar para remover a tag.
Uma notificação confirma que suas tags foram atualizadas.
gcloud
Para excluir uma vinculação de tag, use o comando gcloud resource-manager tags bindings delete:
Antes de usar os dados do comando abaixo, faça estas substituições:
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 (//secretmanager.googleapis.com/). Por exemplo, para anexar uma tag a/projects/PROJECT_ID/secrets/SECRET_ID, o ID completo é//secretmanager.googleapis.com/projects/PROJECT_ID/secrets/SECRET_ID.
Execute o seguinte comando:
Linux, macOS ou Cloud Shell
gcloud resource-manager tags bindings delete \ --tag-value=TAGVALUE_NAME \ --parent=RESOURCE_ID
Windows (PowerShell)
gcloud resource-manager tags bindings delete ` --tag-value=TAGVALUE_NAME ` --parent=RESOURCE_ID
Windows (cmd.exe)
gcloud resource-manager tags bindings delete ^ --tag-value=TAGVALUE_NAME ^ --parent=RESOURCE_ID
Excluir chaves e valores de tags
Ao remover uma chave de tag ou uma definição de valor, verifique se a tag está separada do secret. Você precisa excluir os anexos de tag, chamados de vinculações de tag, antes de excluir a definição da tag. Para mais informações, consulte 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
- Confira os outros serviços compatíveis com tags.
- Consulte Tags e controle de acesso para conferfir como usar tags com o IAM.