Este guia descreve como criar e gerir etiquetas em segredos do Secret Manager. Pode usar etiquetas para agrupar segredos relacionados do Secret Manager e armazenar metadados sobre esses recursos com base nas respetivas etiquetas.
Acerca das etiquetas
Uma etiqueta é um par de chave-valor que pode ser anexado a um recurso no âmbito do Google Cloud. Pode usar etiquetas para permitir ou negar condicionalmente políticas com base no facto de um recurso ter uma etiqueta específica. Por exemplo, pode conceder condicionalmente funções de gestão de identidade e de acesso (IAM) com base no facto de um recurso ter uma etiqueta específica. Para mais informações, consulte o artigo Vista geral das etiquetas.
As etiquetas são anexadas a recursos através da criação de um recurso de associação de etiquetas que associa o valor ao recurso. Google Cloud
Autorizações necessárias
Para receber as autorizações de que precisa para gerir etiquetas, peça ao seu administrador que lhe conceda as seguintes funções de IAM:
-
Visualizador de etiquetas (
roles/resourcemanager.tagViewer) nos recursos aos quais as etiquetas estão anexadas -
Ver e gerir etiquetas ao nível da organização:
Visitante da organização (
roles/resourcemanager.organizationViewer) na organização -
Criar, atualizar e eliminar definições de etiquetas:
Administrador de etiquetas (
roles/resourcemanager.tagAdmin) no recurso para o qual está a criar, atualizar ou eliminar etiquetas -
Anexar e remover etiquetas de recursos:
Utilizador de etiquetas (
roles/resourcemanager.tagUser) no valor da etiqueta e nos recursos aos quais está a anexar ou remover o valor da etiqueta
Para mais informações sobre a atribuição de funções, consulte o artigo Faça a gestão do acesso a projetos, pastas e organizações.
Também pode conseguir as autorizações necessárias através de funções personalizadas ou outras funções predefinidas.
Para anexar etiquetas a segredos do Secret Manager, precisa da função Administrador do Secret Manager (roles/secretmanager.admin).
Crie chaves e valores de etiquetas
Antes de poder anexar uma etiqueta, tem de criar uma etiqueta e configurar o respetivo valor. Para mais informações, consulte os artigos Criar uma etiqueta e Adicionar um valor de etiqueta.
Adicione etiquetas durante a criação de recursos
Pode adicionar etiquetas quando cria segredos. Ao fazê-lo, pode fornecer metadados essenciais para os seus recursos e permite uma melhor organização, acompanhamento de custos e aplicação automática de políticas.
Consola
- Aceda à página Secret Manager na Google Cloud consola.
- Selecione a opção para criar um novo secret.
- Clique em Gerir etiquetas.
- Se a sua organização não aparecer no painel Gerir etiquetas, clique em Selecionar âmbito para etiquetas e selecione a sua organização ou projeto.
- Clique em Adicionar etiqueta.
- Selecione a chave de etiqueta e o valor da etiqueta na lista. Pode filtrar a lista através de palavras-chave.
- Clique em Guardar. A secção Etiquetas é atualizada com as informações das etiquetas.
- Crie o seu segredo. O novo segredo é criado com as etiquetas fornecidas.
gcloud
Antes de usar qualquer um dos dados de comandos abaixo, faça as seguintes substituições:
- SECRET_ID: o identificador exclusivo do segredo.
- TAG_KEY: o ID permanente ou o nome com espaço de nomes da chave de etiqueta anexada, por exemplo,
tagKeys/567890123456. - TAG_VALUE: o ID permanente ou o nome com espaço de nomes do valor da etiqueta anexado, por exemplo,
tagValues/567890123456.
Especifique várias etiquetas separando-as com uma 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 qualquer um dos dados do pedido, faça as seguintes substituições:
- PROJECT_ID: o ID do projeto
- SECRET_ID: o identificador exclusivo do segredo
- TAGKEY_NAME: o ID permanente ou o nome com espaço de nomes da chave de etiqueta anexada, por exemplo,
tagKeys/567890123456. - TAGVALUE_NAME: o ID permanente ou o nome com espaço de nomes do valor da etiqueta 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 do pedido:
{
"replication": {
"automatic": {}
},
"tags": {
"TAGKEY_NAME": "TAGVALUE_NAME"
}
}
Para enviar o seu pedido, escolha uma destas opções:
curl
Guarde o corpo do pedido num ficheiro com o nome request.json,
e execute o seguinte comando:
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
Guarde o corpo do pedido num ficheiro com o nome request.json,
e execute o seguinte comando:
$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
Deve receber um código de estado de êxito (2xx) e uma resposta vazia.
C#
Para executar este código, primeiro configure um ambiente de programação em C# e instale o SDK em C# do Secret Manager. No Compute Engine ou no GKE, tem de autenticar-se com o âmbito cloud-platform.
Go
Para executar este código, primeiro configure um ambiente de desenvolvimento Go e instale o SDK Go do Secret Manager. No Compute Engine ou no GKE, tem de autenticar-se com o âmbito cloud-platform.
Java
Para executar este código, primeiro configure um ambiente de desenvolvimento Java e instale o SDK Java do Secret Manager. No Compute Engine ou no GKE, tem de autenticar-se com o âmbito cloud-platform.
Node.js
Para executar este 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, tem de autenticar-se com o âmbito cloud-platform.
PHP
Para executar este código, saiba primeiro como usar o PHP no Google Cloud e instale o SDK PHP do Secret Manager. No Compute Engine ou no GKE, tem de autenticar-se com o âmbito cloud-platform.
Python
Para executar este código, primeiro configure um ambiente de desenvolvimento Python e instale o SDK Python do Secret Manager. No Compute Engine ou no GKE, tem de autenticar-se com o âmbito cloud-platform.
Ruby
Para executar este código, primeiro configure um ambiente de desenvolvimento Ruby e instale o SDK Ruby do Secret Manager. No Compute Engine ou no GKE, tem de autenticar-se com o âmbito cloud-platform.
Adicione etiquetas a recursos existentes
Para adicionar uma etiqueta a segredos existentes, siga estes passos:
Consola
- Aceda à página Secret Manager na Google Cloud consola.
- Selecione o segredo ao qual quer anexar uma etiqueta.
- Clique em Etiquetas.
- Se a sua organização não aparecer no painel Etiquetas, clique em Selecionar âmbito. Selecione a sua organização e clique em Abrir.
- Clique em Adicionar etiqueta.
- Selecione a chave de etiqueta e o valor da etiqueta na lista. Pode filtrar a lista através de palavras-chave.
- Clique em Guardar.
- Na caixa de diálogo Confirmar, clique em Confirmar para anexar a etiqueta.
É apresentada uma notificação a confirmar que as etiquetas foram atualizadas.
gcloud
Para anexar uma etiqueta a um segredo, tem de criar um recurso de associação de etiquetas através do comando gcloud resource-manager tags bindings create:
Antes de usar qualquer um dos dados de comandos abaixo, faça as seguintes substituições:
TAGVALUE_NAME: o ID permanente ou o nome com espaço de nomes do valor da etiqueta anexado, por exemplo,tagValues/567890123456.RESOURCE_IDé o ID completo do recurso, incluindo o nome do domínio da API para identificar o tipo de recurso (//secretmanager.googleapis.com/). Por exemplo, para anexar uma etiqueta 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 este 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, tem de autenticar-se com o âmbito cloud-platform.
PHP
Para executar este código, saiba primeiro como usar o PHP no Google Cloud e instale o SDK PHP do Secret Manager. No Compute Engine ou no GKE, tem de autenticar-se com o âmbito cloud-platform.
Python
Para executar este código, primeiro configure um ambiente de desenvolvimento Python e instale o SDK Python do Secret Manager. No Compute Engine ou no GKE, tem de autenticar-se com o âmbito cloud-platform.
Listar etiquetas anexadas a recursos
Pode ver uma lista de associações de etiquetas diretamente anexadas ou herdadas do segredo.
Consola
- Aceda à página Secret Manager na Google Cloud consola.
- As etiquetas são apresentadas na coluna Etiquetas do segredo.
gcloud
Para obter uma lista de associações de etiquetas anexadas a um recurso, use o comando
gcloud resource-manager tags bindings list:
Antes de usar qualquer um dos dados de comandos abaixo, faça as seguintes substituições:
RESOURCE_IDé o ID completo do recurso, incluindo o nome do domínio da API para identificar o tipo de recurso (//secretmanager.googleapis.com/). Por exemplo, para anexar uma etiqueta 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
Deve receber uma resposta semelhante à seguinte:
name: tagBindings/%2F%2Fcloudresourcemanager.googleapis.com%2Fprojects%2F7890123456/tagValues/567890123456
tagValue: tagValues/567890123456
resource: //secretmanager.googleapis.com/projects/project-abc/secrets/secret-xyz
Desassocie etiquetas de recursos
Pode desanexar etiquetas que tenham sido anexadas diretamente a um segredo. As etiquetas herdadas podem ser substituídas anexando uma etiqueta com a mesma chave e um valor diferente, mas não podem ser desanexadas.
Consola
- Aceda à página Secret Manager na Google Cloud consola.
- Selecione o segredo do qual quer remover uma etiqueta.
- Clique em Etiquetas.
- No painel Etiquetas, junto à etiqueta que quer desassociar, clique em Eliminar item.
- Clique em Guardar.
- Na caixa de diálogo Confirmar, clique em Confirmar para desanexar a etiqueta.
É apresentada uma notificação a confirmar que as etiquetas foram atualizadas.
gcloud
Para eliminar uma associação de etiqueta, use o comando gcloud resource-manager tags bindings delete:
Antes de usar qualquer um dos dados de comandos abaixo, faça as seguintes substituições:
TAGVALUE_NAME: o ID permanente ou o nome com espaço de nomes do valor da etiqueta anexado, por exemplo,tagValues/567890123456.RESOURCE_IDé o ID completo do recurso, incluindo o nome do domínio da API para identificar o tipo de recurso (//secretmanager.googleapis.com/). Por exemplo, para anexar uma etiqueta 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
Elimine chaves e valores de etiquetas
Quando remover uma definição de chave ou valor de etiqueta, certifique-se de que a etiqueta está desassociada do segredo. Tem de eliminar as associações de etiquetas existentes, denominadas associações de etiquetas, antes de eliminar a própria definição de etiqueta. Para mais informações, consulte o artigo Eliminar etiquetas.
Condições e etiquetas da gestão de identidade e de acesso
Pode usar etiquetas e condições de IAM para conceder condicionalmente associações de funções a utilizadores na sua hierarquia. A alteração ou a eliminação da etiqueta anexada a um recurso pode remover o acesso do utilizador a esse recurso se tiver sido aplicada uma política do IAM com associações de funções condicionais. Para mais informações, consulte o artigo Condições e etiquetas da gestão de identidade e de acesso.
O que se segue?
- Consulte os outros serviços que suportam etiquetas.
- Consulte o artigo Etiquetas e controlo de acesso para saber como usar etiquetas com a IAM.