Este documento descreve como usar tags para gerenciar seus buckets de registro do Cloud Logging. As tags, que são criadas no nível da organização ou do projeto, permitem anotar seus recursos. Também é possível conceder condicionalmente papéis do Identity and Access Management (IAM) ou negar condicionalmente permissões do IAM com base no fato de um recurso ter uma tag específica. Para mais informações sobre tags, consulte Visão geral de tags.
Por exemplo, se você usar
o BigQuery para analisar seus dados do Cloud Billing,
poderá anexar a tag project:production aos buckets de registro que armazenam
dados de registro de recursos de produção, e poderá anexar a tag
project:development aos buckets de registro que armazenam dados de registro de
recursos de desenvolvimento. Em seguida, é possível consultar
dados do Cloud Billing com tags e conferir um detalhamento dos
custos entre desenvolvimento e produção.
As tags podem ser anexadas explicitamente aos buckets de registro ou herdadas da organização, pastas e projetos pai.
Antes de começar
Para começar a gerenciar seus buckets de registro usando tags, faça o seguinte:
- Verifique se você criou uma tag e configurou os valores dela. Você usa o Resource Manager para gerenciar definições de tags. Para mais informações sobre como criar e gerenciar tags, consulte Como criar e gerenciar tags.
-
Para receber as permissões necessárias para gerenciar seus buckets de registro usando tags, peça ao administrador para conceder a você os seguintes papéis do IAM no projeto ou na organização:
- Usuário de tags (
roles/resourcemanager.tagUser) - Leitor de tags (
roles/resourcemanager.tagViewer)
Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.
Esses papéis predefinidos contêm as permissões necessárias para gerenciar seus buckets de registro usando tags. Para acessar as permissões exatas que são necessárias, expanda a seção Permissões necessárias:
Permissões necessárias
As seguintes permissões são necessárias para gerenciar seus buckets de registro usando tags:
-
Adicionar ou remover tags de buckets de registro:
-
resourcemanager.tagValues.{get,list} -
resourcemanager.tagKeys.{get,list} -
resourcemanager.projects.get -
logging.buckets.createTagbinding -
logging.buckets.deleteTagBinding
-
-
Ver tags anexadas a buckets de registro:
-
resourcemanager.tagValues.{get,list} -
resourcemanager.tagKeys.{get,list} -
logging.buckets.listTagBindings -
logging.buckets.listEffectiveTags
-
Essas permissões também podem ser concedidas com funções personalizadas ou outros papéis predefinidos.
- Usuário de tags (
-
Para receber a permissão necessária para gerenciar buckets de registro, peça ao administrador para conceder a você o papel do IAM de Gravador de configuração de registros (
roles/logging.configWriter) no projeto. Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.Esse papel predefinido contém a
logging.buckets.listpermissão, que é necessária para gerenciar buckets de registro.Também é possível receber essa permissão com papéis personalizados ou outros papéis predefinidos.
Anexar tags a um bucket de registros
Para anexar uma tag a um bucket de registros, faça o seguinte:
Google Cloud Console do
-
No Google Cloud console, acesse a página Armazenamento de registros:
Acessar o armazenamento de registros
Se você usar a barra de pesquisa para encontrar essa página, selecione o resultado com o subtítulo Logging.
Localize o bucket de registros a que você quer anexar uma tag.
No bucket de registros, clique em Maismore_vert, e em Editar tags.
Na caixa de diálogo, na seção Tags diretas, localize a tag selecionando o recurso em que ela foi criada. Por exemplo, para usar uma tag criada para envolvidos no projeto, escolha Selecionar projeto atual como escopo.
Também é possível pesquisar manualmente o ID do projeto, da organização ou da tag selecionando a opção Entrada manual.
Selecione o par de chave-valor apropriado e clique em Salvar.
Uma caixa de diálogo confirmando as alterações será exibida. Clique em Confirmar para finalizar as alterações.
gcloud
Para anexar uma tag a um bucket de registros, crie uma vinculação de tags executando o
gcloud resource-manager tags bindings create
comando:
gcloud resource-manager tags bindings create \ --tag-value=TAG_VALUE_ID \ --parent=BUCKET_NAME \ --location=LOCATION
No comando anterior, faça as seguintes substituições:
TAG_VALUE_ID: o ID permanente ou o nome do namespace do valor da tag. Por exemplo,
tagValues/4567890123. Para mais informações sobre identificadores de tags, consulte Definições e identificadores de tags.BUCKET_NAME: o nome do bucket de registros. Por exemplo,
//logging.googleapis.com/projects/BUCKET_PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID.LOCATION: o local do bucket de registros.
API
Para anexar uma tag a um bucket de registros, use o tagBindings.create
método.
Terraform
Para anexar uma tag a um bucket de registros usando o Terraform, faça uma das seguintes ações:
- Para buckets de registro no local
global, crie um recurso de vinculação de tags usandogoogle_tags_tag_binding - Para buckets de registro regionais, crie um recurso de vinculação de tags usando
google_tags_location_tag_binding.
Em seguida, execute terraform apply para aplicar as mudanças.
Ver tags anexadas a um bucket de registros
Para ver as tags anexadas a um bucket de registros, faça o seguinte:
Google Cloud Console do
-
No Google Cloud console, acesse a página Armazenamento de registros:
Acessar o armazenamento de registros
Se você usar a barra de pesquisa para encontrar essa página, selecione o resultado com o subtítulo Logging.
Localize o bucket de registros cujas tags você quer ver.
Na coluna Tags, uma tag associada ao bucket de registros é listada. Para ver todas as tags associadas ao bucket de registros, clique no arrow_drop_down Mais botão para expandir a lista de tags.
gcloud
Execute o gcloud resource-manager tags bindings list comando:
gcloud resource-manager tags bindings list \ --parent=BUCKET_NAME \ --location=LOCATION
No comando anterior, faça as seguintes substituições:
BUCKET_NAME: o nome do bucket de registros. Por exemplo,
//logging.googleapis.com/projects/BUCKET_PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID.LOCATION: o local do bucket de registros.
Opcional: para ver as tags herdadas pelo bucket de registros, adicione a flag --effective. A adição dessa flag retorna uma resposta semelhante à seguinte:
namespacedTagKey: 961309089256/environment namespacedTagValue: 961309089256/environment/production tagKey: tagKeys/417628178507 tagValue: tagValues/247197504380 inherited: true
Se todas as tags forem anexadas explicitamente ao bucket de registros e nenhuma tag for herdada, o campo inherited será falso e será omitido.
API
Para receber uma lista de vinculações de tags para um bucket, use o
tagBindings.list método.
Terraform
É possível usar o Terraform para anexar uma tag a um bucket de registros. No entanto, não é possível usar o Terraform para listar as tags.
Remover tags de um bucket de registros
Para remover as tags anexadas a um bucket de registros, é necessário excluir a vinculação de tags anexada ao bucket de registros. Para excluir uma tag, é necessário remover as tags de todos os recursos anexados.
Google Cloud Console do
-
No Google Cloud console, acesse a página Armazenamento de registros:
Acessar o armazenamento de registros
Se você usar a barra de pesquisa para encontrar essa página, selecione o resultado com o subtítulo Logging.
Localize o bucket de registros cuja tag você quer remover.
No bucket de registros, clique em Maismore_vert, e em Editar tags.
Na caixa de diálogo, mantenha o ponteiro sobre a tag a ser removida e clique em excluir Excluir item. Clique em Salvar para salvar as alterações.
Uma caixa de diálogo confirmando as alterações será exibida. Clique em Confirmar para finalizar as alterações.
gcloud
Execute o gcloud resource-manager tags bindings delete
comando:
gcloud resource-manager tags bindings delete \ --tag-value=TAG_VALUE_ID \ --parent=BUCKET_NAME \ --location=LOCATION
No comando anterior, faça as seguintes substituições:
TAG_VALUE_ID: o ID permanente ou o nome do namespace do valor da tag. Por exemplo,
tagValues/4567890123. Para mais informações sobre identificadores de tags, consulte Definições e identificadores de tags.BUCKET_NAME: o nome do bucket de registros. Por exemplo,
//logging.googleapis.com/projects/BUCKET_PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID.LOCATION: o local do bucket de registros.
API
Para remover uma tag em um bucket de registros, use o
tagBindings.delete método.
Terraform
Para remover uma tag em um bucket de registros usando o Terraform, exclua o recurso de vinculação de tags na configuração e execute terraform apply para aplicar as mudanças.
Limitações
Não é possível usar concessões de papéis do IAM para controlar quais buckets de registro um principal vê quando lista os buckets de registro em um Google Cloud projeto. Um principal verá uma lista completa ou uma lista vazia. No entanto, é possível usar concessões de papéis do IAM com condições do IAM para restringir as ações que um principal pode realizar em um bucket de registros. Por exemplo, é possível restringir se um principal pode excluir um bucket de registros específico.
Se você usar exportações de dados do Cloud Billing com o BigQuery, as tags poderão levar até uma hora para serem usadas na exportação. Se uma tag foi adicionada ou removida em uma hora ou se o bucket de registros existe há menos de uma hora, ela poderá não aparecer na exportação.
Papéis personalizados e concessões de papéis com condições do IAM
Se você planeja usar papéis personalizados do IAM e anexar condições do IAM às concessões de papéis, talvez seja necessário criar vários papéis personalizados. Algumas permissões do IAM são invalidadas quando uma condição do IAM é anexada a uma concessão de papéis.
Para o Cloud Logging, as seguintes permissões do IAM são invalidadas quando uma concessão de papéis contém uma condição do IAM:
logging.buckets.listlogging.buckets.create
Portanto, talvez seja necessário criar um papel com as permissões list e create e outro papel que contenha outras permissões específicas do bucket.
Por exemplo, é possível criar um papel que contenha as permissões logging.buckets.delete e logging.buckets.update.
Ao conceder o papel que contém as permissões list e create, não anexe uma condição do IAM à concessão de papéis.
Ao conceder o papel que contém as permissões delete e update, é possível adicionar uma condição do IAM que restringe a concessão a recursos com uma tag específica.
A seguir
Saiba como definir uma política da organização com tags.
Para informações sobre o uso de tags em exportações de dados do Cloud Billing, consulte a documentação de exportações de dados do Cloud Billing.