Este documento ajuda a compreender como o Cloud Logging usa as funções e as autorizações da gestão de identidade e de acesso (IAM) para controlar o acesso aos recursos do Logging. As suas funções da IAM determinam se pode realizar ações como criar destinos de registo ou contentores de registo, ler dados de registo armazenados num contentor de registo ou aceder a páginas como o Explorador de registos. Se emitir um comando da API Logging ou da CLI Google Cloud, as suas funções do IAM determinam se tem autorização para executar o comando.
Vista geral
As suas funções do IAM determinam as ações que pode realizar no Logging. Uma função é uma coleção de autorizações. Quando atribui uma função a um principal, concede-lhe todas as autorizações que a função contém. Pode conceder várias funções ao mesmo principal.
As funções do IAM são concedidas num recurso, como um Trusted Cloud projeto,
uma pasta, um contentor ou uma organização. Por exemplo, pode conceder a um principal a função de leitor de registos (roles/logging.viewer
) num projeto Trusted Cloud específico.
As secções Funções predefinidas e Funções de registo desta página fornecem informações abrangentes sobre as funções e as autorizações de registo. Outras secções desta página fornecem informações sobre funções ou autorizações para exemplos de utilização específicos.
O resto desta secção resume como pode conceder a um principal acesso a contentores de registos ou conceder-lhe acesso apenas a algumas das entradas de registos num contentor de registos.
Conceda acesso a contentores de registos
A função Logs Viewer (roles/logging.viewer
) permite que um principal aceda a todos os dados de registo armazenados nos contentores de registo _Required
e _Default
, exceto aos registos de acesso aos dados. Se um principal precisar de acesso aos registos de acesso aos dados, conceda-lhe a função de leitor de registos privados (roles/logging.privateLogViewer
).
Para os contentores de registos personalizados, pode conceder acesso à vista _AllLogs
ou a uma vista de registos personalizada. O registo cria automaticamente a visualização _AllLogs
, que inclui todas as entradas de registo no contentor de registos. Para conceder acesso a uma vista de registo, adicione uma associação de IAM à política de IAM anexada à vista de registo ou ao projeto. Para
saber mais, consulte o artigo
Controle o acesso a uma vista de registo.
O registo também suporta etiquetas em contentores de registos, o que pode ajudar a compreender os seus custos. Também pode usar etiquetas para impedir que um utilizador elimine um contentor de registos. Para saber mais, consulte o artigo Use etiquetas para gerir o acesso a contentores de registos.
Conceda acesso a algumas entradas de registo num contentor de registo
Para conceder a um principal acesso apenas a algumas das entradas de registo armazenadas num contentor de registos, crie uma vista de registo e, em seguida, conceda ao principal acesso à vista de registo. Por exemplo, pode criar uma vista de registo no contentor de registos _Default
que inclua apenas entradas de registo cujo tipo de recurso seja uma instância do Compute Engine.
Para saber mais sobre a criação de visualizações de registos e as diferentes estratégias que pode usar para conceder acesso à visualização, consulte o artigo Configure visualizações de registos num contentor de registos.
Funções predefinidas
O IAM fornece funções predefinidas para conceder acesso detalhado a recursos Trusted Cloud específicos e impedir o acesso indesejado a outros recursos. Trusted Cloud by S3NS cria e mantém estas funções e atualiza automaticamente as respetivas autorizações conforme necessário, como quando o Logging adiciona novas funcionalidades.
A tabela seguinte lista as funções predefinidas para o registo. Para cada função, a tabela apresenta o título da função, a descrição, as autorizações contidas e o tipo de recurso de nível mais baixo onde as funções podem ser concedidas. Pode conceder as funções predefinidas ao Trusted Cloud nível do projeto ou, na maioria dos casos, a qualquer tipo superior na hierarquia de recursos. Para restringir a função Logs View Accessor a uma vista de registos num contentor, use os atributos de recursos para as condições do IAM.
Para obter uma lista de todas as autorizações individuais contidas numa função, consulte o artigo Obter os metadados da função.
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 secções seguintes fornecem informações adicionais para ajudar a decidir que funções se aplicam aos exemplos de utilização dos seus principais.
Funções de registo
Para permitir que um utilizador execute todas as ações no registo, conceda-lhe a função de administrador de registo (
roles/logging.admin
).Para permitir que um utilizador crie e modifique configurações de registo, conceda-lhe a função Logs Configuration Writer (
roles/logging.configWriter
). Esta função permite-lhe criar ou modificar qualquer um dos seguintes elementos:Para permitir que um utilizador leia registos nos contentores
_Required
e_Default
ou use a página Explorador de registos, conceda uma das seguintes funções:- Para aceder a todos os registos no contentor
_Required
e aceder à vista_Default
no contentor_Default
, conceda a função de leitor de registos (roles/logging.viewer
). - Para aceder a todos os registos nos contentores
_Required
e_Default
, incluindo registos de acesso aos dados, conceda a função Visualizador de registos privados (roles/logging.privateLogViewer
).
- Para aceder a todos os registos no contentor
Para permitir que um utilizador leia registos em todas as vistas de registos que estão num projeto, conceda-lhe a função de IAM de
roles/logging.viewAccessor
no projeto.Para permitir que um utilizador apenas leia registos numa vista de registos específica, tem duas opções:
Crie uma política de IAM para a visualização de registos e, em seguida, adicione uma associação de IAM a essa política que conceda ao principal acesso à visualização de registos.
Conceda ao principal a função de IAM de
roles/logging.viewAccessor
no projeto que contém a vista de registos, mas anexe uma condição de IAM para restringir a concessão à vista de registos específica.
Para ver informações sobre como criar visualizações de registos e conceder acesso, consulte o artigo Configure visualizações de registos num contentor de registos.
Para permitir que um utilizador escreva registos através da Logging API, conceda-lhe a função Logs Writer (
roles/logging.logWriter
). Esta função não concede autorizações de visualização.Para permitir que a conta de serviço de um destino encaminhe registos para um contentor num projeto Trusted Cloud diferente, conceda à conta de serviço a função de escritor do contentor de registos (
roles/logging.bucketWriter
). Para obter instruções sobre como conceder autorizações a uma conta de serviço, consulte o artigo Defina autorizações de destino.
Funções ao nível do projeto
Para conceder acesso de visualização à maioria dos Trusted Cloud by S3NS serviços, conceda a função Visitante (
roles/viewer
).Esta função inclui todas as autorizações concedidas pela função Leitor de registos (
roles/logging.viewer
).Para conceder acesso de editor à maioria dos Trusted Cloud by S3NS serviços, atribua a função Editor (
roles/editor
).Esta função inclui todas as autorizações concedidas pela função Leitor de registos (
roles/logging.viewer
) e as autorizações para escrever entradas de registo e eliminar registos. No entanto, esta função não permite que os utilizadores criem origens, leiam registos de auditoria de acesso aos dados que se encontram no contentor_Default
nem leiam registos que se encontram em contentores de registos definidos pelo utilizador.Para conceder acesso total à maioria dos Trusted Cloud by S3NS serviços, atribua a função de proprietário (
roles/owner
).
Conceder funções
Para saber como conceder uma função a um principal, consulte o artigo Conceder, alterar e revogar o acesso.
Pode conceder várias funções ao mesmo utilizador. Para obter uma lista das autorizações contidas numa função, consulte Obter os metadados da função.
Se estiver a tentar aceder a um Trusted Cloud recurso e não tiver as autorizações necessárias, contacte o principal indicado como proprietário do recurso.
Funções personalizadas
Para criar uma função personalizada com autorizações de registo, faça o seguinte:
Para uma função que conceda autorizações para a API Logging, escolha autorizações em Autorizações da API e, de seguida, siga as instruções para criar uma função personalizada.
Para uma função que conceda autorizações para usar o Explorador de registos, escolha entre os grupos de autorizações em Autorizações da consola e, em seguida, siga as instruções para criar uma função personalizada.
Para uma função que conceda autorizações para usar o
gcloud logging
, consulte a secção Autorizações de linha de comandos nesta página e, de seguida, siga as instruções para criar uma função personalizada.
Para mais informações sobre funções personalizadas, consulte o artigo Compreender as funções personalizadas do IAM.
Autorizações do Cloud Logging
A tabela seguinte é uma lista parcial das autorizações necessárias para funcionalidades específicas do Cloud Logging. Esta tabela pode ajudar a identificar as autorizações de que precisa para usar páginas como o Explorador de registos.
Na tabela, a.b.{x,y}
significa a.b.x
e a.b.y
.
Atividade da consola | Autorizações necessárias |
---|---|
Acesso só de leitura mínimo | logging.logEntries.list |
Veja os registos de auditoria de acesso aos dados | logging.privateLogEntries.list |
Ver lavatórios | logging.sinks.{list, get} |
Veja a utilização dos registos | logging.usage.get |
Transferir registos | logging.logEntries.{list, download}
Apenas uma destas autorizações é necessária para transferir registos. As funções que contêm as autorizações para transferir registos têm de ser concedidas ao nível do projeto. Não pode transferir registos se for concedida uma função que contenha estas autorizações no ficheiro de política de IAM de uma vista de registos. |
Liste e veja os âmbitos do registo | logging.logScopes.{get, list} |
Veja o âmbito do registo predefinido | observability.scopes.get |
Exclua registos | logging.exclusions.{list, create, get, update, delete}
Ao criar uma função personalizada que inclua autorizações para gerir filtros de exclusão, adicione as autorizações |
Crie e use destinos | logging.sinks.{list, create, get, update, delete}
Quando cria um destino, também tem de conceder à conta de serviço uma função do IAM que lhe permita escrever entradas de registo no destino. Para mais informações, consulte o artigo Defina autorizações de destino. Depois de as entradas do registo terem sido encaminhadas para um destino suportado, o acesso às entradas do registo é controlado inteiramente pelas autorizações e funções de IAM no destino. |
Guarde e use consultas privadas | logging.queries.usePrivate logging.queries.{listShared,getShared} |
Guarde e use consultas partilhadas | logging.queries.{share, getShared, updateShared, deleteShared,
listShared} |
Usar consultas recentes | logging.queries.{create, list} |
Crie e faça a gestão de âmbitos de registo | logging.logScopes.{create, delete, get, list, update} |
Defina e faça a gestão do âmbito do registo predefinido | observability.scopes.{get, update} |
Autorizações para a linha de comandos
Os comandos gcloud logging
são controlados pelas autorizações de IAM.
Para usar qualquer um dos comandos gcloud logging
, os principais têm de ter a autorização serviceusage.services.use
.
Um principal também tem de ter a função de IAM que corresponde ao recurso do registo e ao exemplo de utilização. Para ver detalhes, consulte as autorizações da interface de linhas de comando.