Este documento ajuda você a entender como o Cloud Logging usa papéis e permissões do Identity and Access Management (IAM) para controlar o acesso aos recursos do Logging. Suas funções do IAM determinam se você pode realizar ações como criar coletores ou buckets de registros, ler dados de registros armazenados em um bucket de registros ou acessar páginas como o Explorador de registros. Se você emitir um comando da API Logging ou da Google Cloud CLI, seus papéis do IAM vão determinar se você tem permissão para executar o comando.
Visão geral
Seus papéis do IAM determinam as ações que você pode realizar no Logging. Um papel é um conjunto de permissões. Quando você faz isso, concede ao principal todas as permissões contidas no papel. É possível atribuir vários papéis ao mesmo principal.
Os papéis do IAM são concedidos em um recurso, como um projeto, uma pasta, um bucket ou uma organização do Trusted Cloud . Por exemplo, é possível conceder a um principal o papel de
Leitor de registros (role/logging.viewer
) em um projeto Trusted Cloud específico.
As seções Papéis predefinidos e Papéis do Logging desta página fornecem informações abrangentes sobre os papéis e as permissões do Logging. Outras seções desta página fornecem informações sobre papéis ou permissões para casos de uso específicos.
O restante desta seção resume como conceder a um principal acesso a buckets de registros ou a apenas algumas das entradas de registro em um bucket de registros.
Conceder acesso a buckets de registros
O papel Visualizador de registros (role/logging.viewer
) permite que um principal acesse todos os
dados de registros armazenados nos buckets _Required
e _Default
, exceto os
registros de acesso a dados. Se um principal precisar de acesso aos registros de acesso a dados, conceda o papel de Visualizador de registros particulares (roles/logging.privateLogViewer
).
Para buckets de registro personalizados, é possível conceder acesso à visualização _AllLogs
ou a uma visualização de registro personalizada. O Logging cria automaticamente a
visualização _AllLogs
, que inclui todas as entradas de registro no bucket de registros. Para conceder
acesso a uma visualização de registros, adicione uma vinculação do IAM à
política do IAM anexada à visualização de registros ou ao projeto. Para
saber mais, consulte
Controlar o acesso a uma visualização de registro.
O Logging também oferece suporte a tags em buckets de registros, o que pode ajudar você a entender seus custos. Também é possível usar tags para impedir que um usuário exclua um bucket de registros. Para saber mais, consulte Usar tags para gerenciar o acesso a buckets de registros.
Conceder acesso a algumas entradas de registro em um bucket de registros
Para conceder a um principal acesso a apenas algumas das entradas de registro armazenadas em um bucket de registros, crie uma visualização de registros e conceda acesso a ela. Por exemplo, é possível criar uma visualização de registros no bucket de registros _Default
que inclua apenas entradas de registro cujo tipo de recurso seja uma instância do Compute Engine.
Para saber mais sobre como criar visualizações de registros e as diferentes estratégias que você pode
usar para conceder acesso a elas, consulte
Configurar visualizações de registros em um bucket de registros.
Papéis predefinidos
O IAM fornece papéis predefinidos para conceder acesso granular a recursos específicos do Trusted Cloud e evitar o acesso indesejado a outros recursos.O Trusted Cloud by S3NS cria e mantém esses papéis e atualiza automaticamente as permissões conforme necessário, como quando o Logging adiciona novos recursos.
A tabela a seguir lista os papéis predefinidos do Logging. Para cada papel, a tabela mostra o título, a descrição, as permissões contidas e o tipo de recurso de menor nível em que os papéis podem ser concedidos. É possível conceder os papéis predefinidos no nível do projeto Trusted Cloud ou, na maioria dos casos, em qualquer tipo mais alto na hierarquia de recursos. Para restringir o papel de leitor de acesso à visualização de registros a uma visualização de registros em um bucket, use atributos de recursos para condições do IAM.
Para ver uma lista de todas as permissões individuais contidas em um papel, consulte Como obter os metadados do papel.
Role | Permissions |
---|---|
Logging Admin( Provides all permissions necessary to use all features of Cloud Logging. Lowest-level resources where you can grant this role:
|
|
Logs Bucket Writer( Ability to write logs to a log bucket. Lowest-level resources where you can grant this role:
|
|
Logs Configuration Writer( Provides permissions to read and write the configurations of logs-based metrics and sinks for exporting logs. Lowest-level resources where you can grant this role:
|
|
Log Field Accessor( Ability to read restricted fields in a log bucket. Lowest-level resources where you can grant this role:
|
|
Log Link Accessor( Ability to see links for a bucket. |
|
Logs Writer( Provides the permissions to write log entries. Lowest-level resources where you can grant this role:
|
|
Private Logs Viewer( Provides permissions of the Logs Viewer role and in addition, provides read-only access to log entries in private logs. Lowest-level resources where you can grant this role:
|
|
Cloud Logging Service Agent( Grants a Cloud Logging Service Account the ability to create and link datasets. |
|
SQL Alert Writer Beta( Ability to write SQL Alerts. |
|
Logs View Accessor( Ability to read logs in a view. Lowest-level resources where you can grant this role:
|
|
Logs Viewer( Provides access to view logs. Lowest-level resources where you can grant this role:
|
|
As seções a seguir fornecem mais informações para ajudar você a decidir quais papéis se aplicam aos casos de uso dos seus principais.
Papéis do Logging
Para permitir que um usuário execute todas as ações no Logging, conceda a função de administrador do Logging (
roles/logging.admin
).Para permitir que um usuário crie e modifique configurações de geração de registros, conceda o papel de Gravador de configuração de registros (
roles/logging.configWriter
). Com essa função, é possível criar ou modificar qualquer um dos seguintes itens:Para permitir que um usuário leia registros nos buckets
_Required
e_Default
ou use a página Explorador de registros, conceda um dos seguintes papéis:- Para acessar todos os registros no bucket
_Required
e a visualização_Default
no bucket_Default
, conceda o papel Leitor de registros (roles/logging.viewer
). - Para ter acesso a todos os registros nos buckets
_Required
e_Default
, incluindo os de acesso a dados, conceda o papel de Visualizador de registros particulares (roles/logging.privateLogViewer
).
- Para acessar todos os registros no bucket
Para permitir que um usuário leia registros em todas as visualizações de registros de um projeto, conceda a ele o papel do IAM de
roles/logging.viewAccessor
no projeto.Para permitir que um usuário leia apenas os registros em uma visualização específica, você tem duas opções:
Crie uma política do IAM para a visualização de registros e adicione uma vinculação do IAM a essa política, concedendo ao principal acesso à visualização de registros.
Conceda ao principal o papel do IAM
roles/logging.viewAccessor
no projeto que contém a visualização de registros, mas anexe uma condição do IAM para restringir a concessão à visualização de registros específica.
Para informações sobre como criar visualizações de registros e conceder acesso, consulte Configurar visualizações de registros em um bucket de registros.
Para permitir que um usuário grave registros usando a API Logging, conceda o papel Gravador de registros (
roles/logging.logWriter
). Este papel não concede permissões de visualização.Para permitir que a conta de serviço de um coletor direcione registros para um bucket em um projeto Trusted Cloud diferente, conceda à conta de serviço o papel Gravador de bucket de registros (
roles/logging.bucketWriter
). Para instruções sobre como conceder permissões a uma conta de serviço, consulte Definir permissões de destino.
Papéis no nível do projeto
Para conceder acesso de leitura à maioria dos serviços do Trusted Cloud by S3NS , atribua o papel de Leitor (
roles/viewer
).Esse papel inclui todas as permissões concedidas pelo papel Leitor de registros (
roles/logging.viewer
).Para dar acesso de editor à maioria dos serviços do Trusted Cloud by S3NS , conceda o papel de Editor (
roles/editor
).Esse papel inclui todas as permissões concedidas pelo papel Leitor de registros (
roles/logging.viewer
) e as permissões para gravar entradas de registro e excluir registros. No entanto, esse papel não permite que os usuários criem coletores, leiam registros de auditoria de acesso a dados que estejam no bucket_Default
ou leiam registros que estejam em buckets de registros definidos pelo usuário.Para dar acesso total à maioria dos serviços do Trusted Cloud by S3NS , conceda o papel de proprietário (
roles/owner
).
Concedendo papéis
Para saber como conceder um papel a um principal, consulte Conceder, alterar e revogar o acesso.
É possível atribuir vários papéis ao mesmo usuário. Para ver uma lista das permissões contidas em um papel, consulte Como receber os metadados do papel.
Se você está tentando acessar um recurso do Trusted Cloud e não tem as permissões necessárias, entre em contato com o principal listado como Proprietário do recurso.
Papéis personalizados
Para criar um papel personalizado com as permissões do Logging, siga estas etapas:
Para um papel que conceda permissões para a API Logging, escolha as permissões de permissões da API e siga as instruções para criar um papel personalizado.
Para um papel que conceda permissões para usar o Explorador de registros, escolha entre os grupos de permissões em Permissões do console e siga as instruções para criar um papel personalizado.
Para um papel que concede permissões para usar
gcloud logging
, consulte a seção Permissões de linha de comando nesta página e siga as instruções para criar um personalizado papel.
Para mais informações sobre papéis personalizados, consulte Noções básicas sobre papéis personalizados do IAM.
Permissões do Cloud Logging
A tabela a seguir é uma lista parcial das permissões necessárias para recursos específicos do Cloud Logging. Essa tabela pode ajudar você a identificar as permissões necessárias para usar páginas como o Explorador de registros.
Na tabela, a.b.{x,y}
significa a.b.x
e a.b.y
.
Atividade do console | Permissões necessárias |
---|---|
Acesso mínimo somente de leitura | logging.logEntries.list |
Ver registros de auditoria de acesso a dados | logging.privateLogEntries.list |
Ver coletores | logging.sinks.{list, get} |
Ver o uso de registros | logging.usage.get |
Download de registros | logging.logEntries.{list, download}
Apenas uma dessas permissões é necessária para fazer o download de registros. Os papéis que contêm as permissões para fazer o download de registros precisam ser concedidos no nível do projeto. Não é possível fazer o download de registros se um papel que contenha essas permissões for concedido no arquivo de política do IAM de uma visualização de registros. |
Listar e consultar escopos de registros | logging.logScopes.{get, list} |
Conferir o escopo de registro padrão | observability.scopes.get |
Excluir registros | logging.exclusions.{list, create, get, update, delete}
Ao criar um papel personalizado que inclua permissões para
gerenciar filtros de exclusão, adicione as permissões |
Criar e usar coletores | logging.sinks.{list, create, get, update, delete}
Ao criar um coletor, você também precisa conceder à conta de serviço um papel do IAM que permita gravar entradas de registro no destino. Para mais informações, consulte Definir permissões de destino. Depois que as entradas de registro forem roteadas para um destino compatível, o acesso a elas será controlado totalmente pelas permissões e papéis do IAM no destino. |
Salvar e usar consultas particulares | logging.queries.usePrivate logging.queries.{listShared,getShared} |
Salvar e usar consultas compartilhadas | logging.queries.{share, getShared, updateShared, deleteShared,
listShared} |
Usar consultas recentes | logging.queries.{create, list} |
Criar e gerenciar escopos de registros | logging.logScopes.{create, delete, get, list, update} |
Definir e gerenciar o escopo de registro padrão | observability.scopes.{get, update} |
Permissões para a linha de comando
Os comandos gcloud logging
são
controlados pelas permissões do IAM.
Para usar qualquer um dos comandos gcloud logging
, os principais precisam ter a permissão serviceusage.services.use
.
Um principal também precisa ter o papel do IAM que corresponde ao recurso do registro e ao caso de uso. Para mais detalhes, consulte permissões da interface da linha de comando.