Este documento descreve como você usa papéis e permissões do Identity and Access Management (IAM) para controlam o acesso aos dados de registros A API Logging, a Análise de registros Google Cloud CLI.
Visão geral
As permissões do IAM e Os papéis determinam sua capacidade de acessar registros dados na API Logging, o Análise de registros Google Cloud CLI.
Um papel é um conjunto de permissões. Não é possível conceder uma permissão principal diretamente. em vez disso, você concede a eles um papel. Quando você faz isso, concede ao principal todas as permissões contidas no papel. É possível atribuir vários papéis ao mesmo principal.
Para usar o Logging em um recurso do Google Cloud, como um projeto, uma pasta, um bucket ou uma organização do Google Cloud, um principal precisa ter um papel do IAM que contém as permissões apropriadas.
Papéis predefinidos
O IAM fornece papéis predefinidos para conceder acesso granular a recursos específicos do Google Cloud e impedem o acesso indesejado a outros do Google Cloud. O Google Cloud 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 de cada papel, a tabela exibe o título, a descrição, o título permissões e o tipo de recurso de nível mais baixo em que os papéis podem ser concedidos. É possível conceder os papéis predefinidos no nível do projeto do Google Cloud ou na maioria dos casos, qualquer tipo superior Hierarquia do Google Cloud. Para definir o escopo do papel Acessador de visualização de registros com mais precisão no nível do bucket, use atributos de recurso para condições do IAM.
Para obter uma lista de todos permissões individuais contidas em um papel, consulte Como conseguir 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:
|
|
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 principais em diferentes casos de uso de negócios.
Papéis do Logging
Para permitir que um usuário execute todas as ações no Logging, conceda a Administrador do Logging (
roles/logging.admin
).Permitir que um usuário crie e modifique configurações de geração de registros, como coletores, buckets, visualizações, links, métricas com base em registros ou exclusões, concede o papel de Gravador de configuração de registros (
roles/logging.configWriter
).Para permitir que um usuário leia registros nos buckets
_Required
e_Default
: a Análise de registros, a página de Análise de dados de registros conceda um dos seguintes papéis:- Para acessar todos os registros no bucket
_Required
e acesso ao visualização_Default
no bucket_Default
, conceda o Leitor de registros (roles/logging.viewer
). - Para acessar todos os registros nos buckets
_Required
e_Default
, incluindo registros de acesso a dados, conceda o papel de Leitor 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 em um projeto, conceda a eles o papel de IAM de
roles/logging.viewAccessor
no projeto.Para permitir que um usuário leia apenas 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 um Vinculação do IAM a essa política que concede ao principal acesso à visualização de registros.
Conceder ao principal o papel do IAM de
roles/logging.viewAccessor
no projeto que contém a visualização de registro mas anexar Condição do IAM para restringir a concessão à visualização de registro 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 conceder a um usuário acesso a campos restritos do
LogEntry
, se houver, faça o seguinte: em um determinado bucket, conceda Papel de acessador de campo de registros (roles/logging.fieldAccessor
). Para mais informações, consulte Configurar o acesso no nível do campo.Para permitir que um usuário grave registros usando a API Logging, conceda o papel de 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 os registros para um bucket projeto diferente do Google Cloud, conceda à conta de serviço papel de Gravador do bucket de registros (
roles/logging.bucketWriter
). Para instruções sobre como conceder permissões a uma conta de serviço, consulte Defina permissões de destino.
Papéis no nível do projeto
Para dar acesso de leitura à maioria dos serviços do Google Cloud, conceder o papel de Leitor (
roles/viewer
).Esse papel inclui todas as permissões concedidas pela Leitor de registros (
roles/logging.viewer
).Para dar acesso de editor à maioria dos serviços do Google Cloud, conceder o papel de Editor (
roles/editor
).Esse papel inclui todas as permissões concedidas pela Leitor de registros (
roles/logging.viewer
) e as permissões necessárias gravar entradas de registro, excluir registros e criar métricas com base em registros. No entanto, este papel não permite que os usuários criem coletores, ler registros de auditoria de acesso a dados que estão no bucket_Default
ou os registros de leitura que estão em buckets definidos pelo usuário.Para conceder acesso total à maioria dos serviços do Google Cloud, conceder o papel de Proprietário (
roles/owner
).
Concedendo papéis
Para saber como conceder um papel a um principal, consulte Como conceder, alterar e revogar 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 Google Cloud e não tem as informações permissões, entre em contato com o principal que está 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 ver mais informações sobre papéis personalizados, consulte Noções básicas sobre os papéis personalizados do IAM.
Permissões do console do Google Cloud
A tabela a seguir lista as permissões necessárias para usar 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 logging.logs.list logging.logServiceIndexes.list logging.logServices.list resourcemanager.projects.get |
Adicionar capacidade de visualizar registros de auditoria de acesso a dados | Inserir logging.privateLogEntries.list |
Adicionar permissão para ver métricas com base em registros | Adicionar logging.logMetrics. {list , get } |
Adicionar permissão para exibir coletores | Adicionar logging.sinks. {list , get } |
Adicionar permissão para ver o uso de registros | Adicionar logging.usage.get |
Adicionar permissão para excluir registros | Adicionar logging.exclusions. {list , create , get , update , delete } |
Adicionar capacidade de usar coletores | Adicionar logging.sinks.{list , create , get , update , delete } |
Adicionar permissão para criar métricas com base em registros | Adicionar logging.logMetrics. {list , create , get , update , delete } |
Adicionar a capacidade de usar consultas salvas particulares | Adicionar logging.queries. {list , create , get , update , delete } |
Adicionar a capacidade de usar consultas salvas compartilhadas | Adicionar logging.queries. {share , getShared , updateShared , deleteShared , listShared } |
Adicionar a capacidade de usar consultas recentes | Adicionar logging.queries. {create , list } |
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
serviceusage.services.use
.
Um principal também precisa ter o papel do IAM que corresponde à recurso do log e ao caso de uso. Para mais detalhes, consulte permissões da interface de linha de comando.
Permissões para conjuntos de dados vinculados do BigQuery
A lista a seguir descreve os papéis predefinidos e as permissões correspondentes para gerenciar os conjuntos de dados vinculados do BigQuery:
O administrador do Logging (
roles/logging.admin
) e Gravador de configuração de registros Os papéis (roles/logging.configWriter
) contêm as seguintes permissões:logging.links.list
logging.links.create
logging.links.get
logging.links.delete
Acesso de link de registro (
roles/logging.linkViewer
), Visualizador de registros particulares (roles/logging.privateLogViewer
) e Visualizador de registros Os papéis (roles/logging.viewer
) contêm as seguintes permissões:logging.links.list
logging.links.get
Os papéis e permissões listados anteriormente só se aplicam páginas de observabilidade do Google Cloud, como a Análise de dados de registros. Se você usa o BigQuery para gerenciar os conjuntos de dados, pode ser necessário separar o BigQuery e permissões de segurança. Consulte Controle de acesso com o IAM do BigQuery para mais informações.
Permissões para salvar consultas
Esta seção descreve os papéis predefinidos e as permissões para como salvar, compartilhar e usar consultas nas páginas Análise de registros ou Análise de registros. Usando conteúdo salvo visíveis apenas para você e usando consultas salvas que são compartilhadas com outros membros do projeto do Google Cloud exigem permissões diferentes:
-
Para ter as permissões necessárias para usar as consultas salvas particulares, peça ao administrador para conceder a você Leitor de registros (
roles/logging.viewer
) do IAM no projeto.Esse papel predefinido contém as permissões necessárias para usar consultas salvas particulares. Para conferir as permissões exatas necessárias, expanda a seção Permissões necessárias:
Permissões necessárias
As seguintes permissões são necessárias para usar as consultas salvas particulares:
-
logging.queries.list
-
logging.queries.create
-
logging.queries.get
-
logging.queries.update
-
logging.queries.delete
-
-
Para ter as permissões necessárias para criar, atualizar e excluir consultas compartilhadas, peça ao administrador para conceder a você Papel do IAM Administrador do Logging (
roles/logging.admin
) no projeto.Esse papel predefinido contém as permissões necessárias para criar, atualizar e excluir consultas compartilhadas. Para conferir as permissões exatas necessárias, expanda a seção Permissões necessárias:
Permissões necessárias
As seguintes permissões são necessárias para criar, atualizar e excluir consultas compartilhadas:
-
logging.queries.share
-
logging.queries.updateShared
-
logging.queries.deleteShared
-
-
Para ter as permissões necessárias para listar e receber consultas compartilhadas, peça ao administrador para conceder a você Leitor de registros (
roles/logging.viewer
) do IAM no projeto.Esse papel predefinido contém as permissões necessárias para listar e receber consultas compartilhadas. Para conferir as permissões exatas necessárias, expanda a seção Permissões necessárias:
Permissões necessárias
As seguintes permissões são necessárias para listar e receber consultas compartilhadas:
-
logging.queries.listShared
-
logging.queries.getShared
-
Permissões para registros de roteamento
Para informações sobre como definir controles de acesso ao criar e gerenciar coletores para rotear registros, consulte Defina permissões de destino.
O gerenciamento de filtros de exclusão é integrado à configuração de coletores. Todas as permissões relacionadas ao gerenciamento de coletores, incluindo a configuração de filtros de exclusão, estão incluídas nas permissões logging.sinks.*
. Ao criar um papel personalizado que inclua permissões para gerenciar filtros de exclusão, adicione as permissões logging.sinks.*
ao papel em vez de adicionar as permissões logging.exclusions.*
.
Depois que suas entradas de registro forem roteadas para um destino compatível, o acesso às cópias de registro será controlado totalmente pelas permissões e papéis do IAM nos destinos: Cloud Storage, BigQuery ou Pub/Sub.
Permissões para métricas com base em registros
Veja a seguir um resumo das permissões e dos papéis comuns necessários ao principal para acessar métricas com base em registros:
O Gravador de configuração de registros (
roles/logging.configWriter
) permite que os principais listem, criem, recebam atualizar e excluir métricas com base em registros.O papel Visualizador de registros (
roles/logging.viewer
) contém permissões para visualizar métricas existentes. Especificamente, um principal precisa das permissõeslogging.logMetrics.get
elogging.logMetrics.list
. para visualizar as métricas existentes.O Leitor do Monitoring (
roles/monitoring.viewer
) contém as permissões para ler TimeSeries. Especificamente, um principal precisa das Permissãomonitoring.timeSeries.list
para ler dados de série temporal.O administrador do Logging (
roles/logging.admin
), Editor do projeto (roles/editor
) Papéis de proprietário do projeto (roles/owner
) que contêm as permissões para criar métricas com base em registros. Especificamente, uma o principal precisa da permissãologging.logMetrics.create
para criar e métricas com base em registros.
Permissões para políticas de alertas com base em registros
Para criar e gerenciar políticas de alertas com base em registros, um principal precisa das os seguintes papéis do Logging e do Monitoring :
-
Para ter as permissões necessárias para ler registros e gerenciar regras de notificação do Logging, peça ao administrador para conceder a você Papel do IAM Administrador do Logging (
roles/logging.admin
) no projeto.Esse papel predefinido contém as permissões necessárias para ler registros e gerenciar regras de notificação do Logging. Para conferir as permissões exatas necessárias, expanda a seção Permissões necessárias:
Permissões necessárias
As seguintes permissões são necessárias para ler registros e gerenciar regras de notificação do Logging:
-
logging.queries.listShared
-
logging.queries.getShared
-
-
Para ter as permissões necessárias para gerenciar políticas de alertas com base em registros e os canais de notificação delas, peça ao administrador para conceder a você os seguintes papéis do IAM no projeto:
-
Editor de AlertPolicy do Monitoring (
roles/monitoring.alertPolicyEditor
) -
Editor do canal de notificação do Monitoring (
roles/monitoring.notificationChannelEditor
)
Esses papéis predefinidos têm as permissões necessárias para gerenciar políticas de alertas com base em registros e os respectivos canais de notificação. Para conferir as permissões exatas necessárias, expanda a seção Permissões necessárias:
Permissões necessárias
As seguintes permissões são necessárias para gerenciar políticas de alertas com base em registros e os respectivos canais de notificação:
-
logging.queries.listShared
-
logging.queries.getShared
-
Editor de AlertPolicy do Monitoring (
-
Para ter as permissões necessárias para criar uma política de alertas na Google Cloud CLI, peça ao administrador para conceder a você Consumidor do Service Usage (
roles/serviceusage.serviceUsageConsumer
) no seu projeto.Esse papel predefinido contém as permissões necessárias para criar uma política de alertas na Google Cloud CLI. Para conferir as permissões exatas necessárias, expanda a seção Permissões necessárias:
Permissões necessárias
As seguintes permissões são necessárias para criar uma política de alertas na Google Cloud CLI:
-
logging.queries.listShared
-
logging.queries.getShared
-
Escopos de acesso do Logging
Escopos de acesso são o método legado de especificar permissões para as contas de serviço nas instâncias da VM do Compute Engine.
Os seguintes escopos de acesso se aplicam à API Logging:
Escopo de acesso | Permissões concedidas |
---|---|
https://www.googleapis.com/auth/logging.read | roles/logging.viewer |
https://www.googleapis.com/auth/logging.write | roles/logging.logWriter |
https://www.googleapis.com/auth/logging.admin | Acesso total à API Logging. |
https://www.googleapis.com/auth/cloud-platform | Acesso total à API Logging e a todas as outras APIs do Google Cloud ativadas. |
Para informações sobre como usar esse método legado para definir os níveis de acesso das suas contas de serviço, consulte Permissões da conta de serviço.