Use etiquetas para agrupar repositórios e outros recursos para Google Cloud relatórios, auditorias e controlo de acesso na sua Google Cloudorganização.
Para agrupar repositórios no Artifact Registry para fins de automatização e faturação, use etiquetas. As etiquetas e os marcadores funcionam independentemente uns dos outros, e pode aplicá-los ambos ao mesmo repositório. Para mais informações sobre as diferenças entre etiquetas e rótulos, consulte o artigo Etiquetas e rótulos.
O que são etiquetas?
As etiquetas são pares de chave-valor que pode aplicar aos seus recursos para um controlo de acesso detalhado.
Os administradores de projetos criam etiquetas para recursos em toda a organização Google Cloud ao nível da organização e gerem-nas no Resource Manager. Quando associa uma etiqueta a um repositório do Artifact Registry, pode usar a etiqueta com condições do IAM para conceder acesso condicional ao repositório. Não pode anexar etiquetas a artefactos individuais.
Tenha em atenção estas restrições:
As políticas da organização podem referenciar condicionalmente etiquetas que são herdadas do projeto principal e superiores, mas não suportam etiquetas que anexa diretamente aos repositórios.
Os registos de auditoria do Google Cloud não são gerados para anexar etiquetas e ver associações de etiquetas em repositórios.
Para mais informações sobre etiquetas e controlo de acesso condicional com etiquetas, consulte o artigo Etiquetas e controlo de acesso.
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 do 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.
Anexar etiquetas a repositórios
Depois de um administrador do projeto criar etiquetas, pode anexá-las a um repositório. Cada etiqueta tem uma chave e um valor. Etiqueta um repositório associando um valor ao repositório.
Para anexar uma etiqueta a um repositório:
Consola
Obtenha o valor da etiqueta a anexar junto do seu administrador.
Pode anexar um valor de etiqueta com um destes tipos de identificadores:
- Um nome com espaço de nomes, como
123456789012/env/dev - Um ID permanente, como
tagValues/567890123456
- Um nome com espaço de nomes, como
Abra a página Repositórios na Google Cloud consola.
Selecione o repositório que quer etiquetar.
Na secção Detalhes do repositório, clique em Mostrar mais.
São apresentadas as etiquetas existentes para o repositório, incluindo as etiquetas herdadas.
Clique no ícone
Editar etiquetas.Na secção Etiquetas diretas, clique em Selecionar âmbito.
Selecione o projeto do repositório.
No campo chave, escreva para filtrar a lista de etiquetas e, de seguida, selecione a chave da etiqueta.
No campo Valor, escreva para filtrar a lista de etiquetas e, de seguida, selecione o valor da etiqueta.
Clique em Guardar.
Clique em Confirm.
A etiqueta está anexada ao seu repositório.
CLI gcloud
Obtenha o valor da etiqueta a anexar junto do seu administrador.
Pode anexar um valor de etiqueta com um destes tipos de identificadores:
- Um nome com espaço de nomes, como
123456789012/env/dev - Um ID permanente, como
tagValues/567890123456
- Um nome com espaço de nomes, como
Anexe o valor da etiqueta com o seguinte comando:
gcloud resource-manager tags bindings create \ --tag-value=TAG_VALUE \ --parent=REPOSITORY_ID \ --location=LOCATIONSubstitua os seguintes valores:
TAG_VALUEé o ID permanente ou o nome com espaço de nomes do valor da etiqueta a anexar.REPOSITORY_IDé o ID completo do repositório, incluindo o nome do domínio da API para identificar o tipo de recurso (//artifactregistry.googleapis.com/). Por exemplo,//artifactregistry.googleapis.com/projects/my-project/locations/us-east1/repositories/my-repoLOCATIONé a localização do repositório.
Considere o seguinte exemplo:
- Valor da etiqueta:
815471563813/env/dev - Projeto:
my-project - Repositório:
my-repo - Localização do repositório:
us-east1
O seguinte comando da CLI gcloud anexa a etiqueta ao repositório:
gcloud resource-manager tags bindings create \ --tag-value=815471563813/env/dev \ --parent=//artifactregistry.googleapis.com/projects/my-project/locations/us-east1/repositories/my-repo \ --location=us-east1
Listar etiquetas associadas a repositórios
Pode listar as etiquetas anexadas a um recurso ao qual tem permissões de acesso.
Consola
Abra a página Repositórios na Google Cloud consola.
Selecione o repositório que quer ver.
Na secção Detalhes do repositório, clique em Mostrar mais.
A lista Etiquetas mostra todas as etiquetas do repositório, incluindo etiquetas diretas e etiquetas herdadas de um nível superior na hierarquia de recursos.
CLI gcloud
Para apresentar uma lista de etiquetas anexadas a um repositório, execute o seguinte comando:
gcloud resource-manager tags bindings list \
--parent=REPOSITORY_ID \
--location=LOCATION
O comando apenas lista as etiquetas diretamente anexadas ao recurso especificado, pelo que não devolve etiquetas herdadas do projeto principal ou superior. Pode listar as etiquetas herdadas do projeto principal especificando um projeto em vez de um repositório com a flag --parent.
Por exemplo, este comando lista as etiquetas anexadas ao repositório my-repo no projeto my-project e na localização us-east1:
gcloud resource-manager tags bindings list \
--parent=//artifactregistry.googleapis.com/projects/my-project/locations/us-east1/repositories/my-repo \
--location=us-east1
Este comando lista as etiquetas anexadas ao número do projeto 7890123456:
gcloud resource-manager tags bindings list \
--parent=//cloudresourcemanager.googleapis.com/projects/7890123456 \
Desassociar etiquetas de repositórios
Pode desanexar uma etiqueta que esteja diretamente anexada a um repositório. Se precisar de remover uma etiqueta herdada do projeto principal ou de outra parte da hierarquia de recursos, um administrador do projeto tem de a desassociar do recurso ao qual a etiqueta está anexada.
Para remover uma etiqueta associada a um repositório:
Consola
Obtenha o valor da etiqueta que quer remover. Se não souber o valor da etiqueta, liste as etiquetas anexadas ao repositório.
Abra a página Repositórios na Google Cloud consola.
Selecione o repositório.
Na secção Detalhes do repositório, clique em Mostrar mais.
São apresentadas as etiquetas existentes para o repositório, incluindo as etiquetas herdadas.
Clique no ícone
Editar etiquetas.Na secção Etiquetas diretas, localize a etiqueta que quer remover.
Clique no ícone eliminar junto à etiqueta que quer remover.
Clique em Guardar.
Clique em Confirm.
A etiqueta é removida do seu repositório.
CLI gcloud
Obtenha o valor da etiqueta que quer remover. Se não souber o valor da etiqueta, liste as etiquetas anexadas ao repositório.
Desassocie o valor da etiqueta com o seguinte comando:
gcloud resource-manager tags bindings delete \ --tag-value=TAG_VALUE \ --parent=REPOSITORY_ID \ --location=LOCATIONSubstitua os seguintes valores:
Valor da etiqueta
TAG_VALUEa desanexar.REPOSITORY_IDé o ID completo do repositório, incluindo o nome do domínio da API para identificar o tipo de recurso (//artifactregistry.googleapis.com/). Por exemplo,//artifactregistry.googleapis.com/projects/my-project/my-repoLOCATIONé a localização do repositório.
Considere o seguinte exemplo:
- Valor da etiqueta:
815471563813/env/dev - Projeto:
my-project - Repositório:
my-repo - Localização do repositório:
us-east1
O seguinte comando da CLI gcloud desassocia a etiqueta do repositório:
gcloud resource-manager tags bindings delete \ --tag-value=815471563813/env/dev \ --parent=//artifactregistry.googleapis.com/projects/my-project/locations/us-east1/repositories/my-repo \ --location=us-east1
O que se segue?
- Saiba mais sobre as etiquetas de repositório.