Esta página fornece informações suplementares para usar os registos de auditoria do Cloud com o Cloud Storage. Use os registos de auditoria do Cloud para gerar registos de operações da API realizadas no Cloud Storage.
Vista geral
OsGoogle Cloud serviços escrevem registos de auditoria para ajudar a responder às perguntas "Quem fez o quê, onde e quando?" nos seus recursos Google Cloud . Também pode anexar informações personalizadas aos registos de auditoria para obter informações mais detalhadas sobre a forma como os seus recursos são acedidos.
Os seus Google Cloud projetos contêm apenas os registos de auditoria dos recursos que estão diretamente no Google Cloud projeto. Outros Google Cloud recursos, como pastas, organizações e contas de faturação, contêm os registos de auditoria da própria entidade.
Para uma vista geral dos registos de auditoria do Cloud, consulte o artigo Vista geral dos registos de auditoria do Cloud. Para uma compreensão mais detalhada do formato do registo de auditoria, consulte o artigo Compreender os registos de auditoria.
Registos de auditoria disponíveis
Os seguintes tipos de registos de auditoria estão disponíveis para o Cloud Storage:
Registos de auditoria da atividade do administrador: entradas para operações orientadas pelo utilizador que modificam a configuração ou os metadados dos recursos do Cloud Storage.
Registos de auditoria de acesso a dados: entradas para operações orientadas pelo utilizador que não são monitorizadas nos registos de auditoria de atividade do administrador. Existem vários subtipos de registos de auditoria de acesso a dados:
ADMIN_READ
: entradas para operações que leem a configuração ou os metadados dos recursos do Cloud Storage.DATA_READ
: entradas para operações que leem dados de recursos do Cloud Storage fornecidos pelos utilizadores.DATA_WRITE
: Entradas para operações que modificam dados de recursos do Cloud Storage fornecidos pelos utilizadores.
Para receber registos de auditoria de acesso a dados, tem de os ativar explicitamente.
Registos de auditoria de eventos do sistema: entradas para operações que modificam os recursos do Cloud Storage. Estas são geradas por Google Cloud sistemas e não são acionadas por ações do utilizador.
Além dos registos de auditoria do Cloud Storage, os registos de auditoria do Cloud podem criar registos de auditoria para o Storage Insights.
Para ver descrições mais completas dos tipos de registos de auditoria, consulte o artigo Tipos de registos de auditoria.
Operações auditadas
A tabela seguinte resume as operações do Cloud Storage que correspondem a cada tipo de registo de auditoria:
Tipo de registo de auditoria | Subtipo | Operações do Cloud Storage |
---|---|---|
Atividade do administrador | ADMIN_WRITE |
|
Acesso a dados | ADMIN_READ |
|
Acesso a dados | DATA_READ |
|
Acesso a dados | DATA_WRITE |
|
Evento do sistema |
|
1 Os registos de auditoria da atividade do administrador não são gerados se/quando as ACLs forem inicialmente definidas na criação do objeto.
2 Estas operações envolvem a leitura e a escrita de dados. Como resultado, cada uma destas operações gera duas entradas de registo.
3 A mudança de localização do contentor pode não começar imediatamente após o pedido inicial. O registo de eventos do sistema é escrito quando o processo começa efetivamente.
Restrições
Aplicam-se as seguintes restrições aos registos de auditoria do Google Cloud com o Cloud Storage:
- O Cloud Audit Logs não acompanha o acesso a objetos públicos.
- Os registos de auditoria do Cloud não acompanham as alterações feitas pelas funcionalidades de gestão do ciclo de vida de objetos ou Autoclass.
- Os registos de acesso aos dados gerados a partir de transferências de navegadores autenticadas têm os campos
principalEmail
ecallerIp
ocultados quando a transferência ocorre fora da consola Google Cloud .
Se precisar de capacidades de registo num destes casos, considere usar os registos de utilização do Cloud Storage.
Formato do registo de auditoria
As entradas do registo de auditoria incluem os seguintes componentes:
A própria entrada do registo, que é um objeto
LogEntry
. Os campos úteis incluem o seguinte:- O elemento
logName
contém o ID do recurso e o tipo de registo de auditoria. - O elemento
resource
contém o destino da operação auditada. - O
timestamp
contém a hora da operação auditada. - O
protoPayload
contém as informações auditadas.
- O elemento
Os dados de registo de auditoria, que são um objeto
AuditLog
contido no campoprotoPayload
da entrada do registo.No campo
protoPayload
, o campometadata
inclui informações específicas do Cloud Storage. Por exemplo, o registo de um pedido GET de um objeto de uma operação de reescrita inclui um campodestination
no campometadata
do respetivo registo de auditoria para especificar o contentor para o qual os dados foram copiados.No campo
protoPayload
, são incluídas informações de auditoria adicionais específicas do Cloud Storage nos campos de pedido e resposta quando o modo de registo de auditoria detalhado é aplicado. Tenha em atenção que não precisa de aplicar o registo de auditoria detalhado para anexar informações personalizadas aos registos de auditoria.
Para outros campos nestes objetos e como os interpretar, consulte o artigo Compreenda os registos de auditoria.
Nome de registo
Os nomes dos registos de auditoria do Cloud incluem identificadores de recursos que indicam o Google Cloud projeto ou outra Google Cloud entidade proprietária dos registos de auditoria, e se o registo contém dados de registo de auditoria de acesso aos dados ou de atividade do administrador.
Seguem-se os nomes dos registos de auditoria, incluindo variáveis para os identificadores de recursos:
projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Factivity projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Fdata_access folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Factivity folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Fdata_access billingAccounts/BILLING_ACCOUNT_ID/logs/cloudaudit.googleapis.com%2Factivity billingAccounts/BILLING_ACCOUNT_ID/logs/cloudaudit.googleapis.com%2Fdata_access organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Factivity organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fdata_access
Nome do serviço
Os registos de auditoria do Cloud Storage usam o nome do serviço
storage.googleapis.com
.
Os registos de auditoria do Storage Insights usam o nome do serviço
storageinsights.googleapis.com
.
Para ver uma lista de todos os nomes dos serviços da API Cloud Logging e o respetivo tipo de recurso monitorizado, consulte o artigo Mapear serviços para recursos.
Tipos de recursos
Os registos de auditoria do Cloud Storage usam o tipo de recurso gcs_bucket
.
Para ver uma lista de todos os tipos de recursos monitorizados do Cloud Logging e informações descritivas, consulte o artigo Tipos de recursos monitorizados.
Ative o registo de auditoria
Os registos de auditoria da atividade do administrador estão sempre ativados e não é possível desativá-los.
Os registos de auditoria de acesso a dados estão desativados por predefinição e não são escritos, a menos que sejam ativados explicitamente.
Para obter informações sobre como ativar alguns ou todos os seus registos de auditoria de acesso a dados, consulte o artigo Configure os registos de auditoria de acesso a dados.
Autorizações e funções
As autorizações e as funções do IAM determinam a sua capacidade de aceder aos dados dos registos de auditoria nos Google Cloud recursos.
Quando decidir que autorizações e funções específicas de registo se aplicam ao seu exemplo de utilização, considere o seguinte:
A função Logs Viewer (
roles/logging.viewer
) dá-lhe acesso só de leitura aos registos de auditoria de atividade do administrador, política recusada e eventos do sistema. Se tiver apenas esta função, não pode ver os registos de auditoria de acesso aos dados que se encontram nos contentores_Required
e_Default
.A função Leitor de registos privados
(roles/logging.privateLogViewer
) inclui as autorizações contidas emroles/logging.viewer
, além da capacidade de ler registos de auditoria de acesso aos dados nos contentores_Required
e_Default
.Tenha em atenção que, se estes registos privados forem armazenados em contentores definidos pelo utilizador, qualquer utilizador que tenha autorizações para ler registos nesses contentores pode ler os registos privados. Para mais informações sobre os contentores de registos, consulte a Vista geral do encaminhamento e armazenamento.
Para mais informações acerca das autorizações e funções da IAM que se aplicam aos dados dos registos de auditoria, consulte o artigo Controlo de acesso com a IAM.
Ver registos
Pode consultar todos os registos de auditoria ou consultar os registos pelo respetivo nome do registo de auditoria. O nome do registo de auditoria inclui o
identificador do recurso
do Google Cloud projeto, da pasta, da conta de faturação ou da
organização para a qual quer ver as informações de registo de auditoria.
As suas consultas podem especificar campos LogEntry
indexados.
Para mais informações sobre como consultar os seus registos, consulte o artigo
Crie consultas no Explorador de registos
O Explorador de registos permite-lhe ver entradas de registo individuais filtradas. Se quiser usar SQL para analisar grupos de entradas de registo, use a página Log Analytics. Para mais informações, consulte:
- Consultar e ver registos no Log Analytics.
- Consultas de exemplo para estatísticas de segurança.
- Represente graficamente os resultados das consultas.
A maioria dos registos de auditoria pode ser vista no Cloud Logging através da Google Cloud consola, da CLI do Google Cloud ou da API Logging. No entanto, para registos de auditoria relacionados com a faturação, só pode usar a CLI do Google Cloud ou a API Logging.
Consola
Na Google Cloud consola, pode usar o Explorador de registos para obter as entradas do registo de auditoria do seu Google Cloud projeto, pasta ou organização:
-
Na Google Cloud consola, aceda à página Explorador de registos:
Aceda ao Explorador de registos
Se usar a barra de pesquisa para encontrar esta página, selecione o resultado cuja legenda é Registo.
Selecione um Google Cloud projeto, uma pasta ou uma organização existente.
Para apresentar todos os registos de auditoria, introduza uma das seguintes consultas no campo do editor de consultas e, de seguida, clique em Executar consulta:
logName:"cloudaudit.googleapis.com"
protoPayload."@type"="type.googleapis.com/google.cloud.audit.AuditLog"
Para apresentar os registos de auditoria de um recurso específico e um tipo de registo de auditoria, no painel Criador de consultas, faça o seguinte:
Em Tipo de recurso, selecione o Google Cloud recurso cujos registos de auditoria quer ver.
Em Nome do registo, selecione o tipo de registo de auditoria que quer ver:
- Para os registos de auditoria da atividade do administrador, selecione atividade.
- Para os registos de auditoria de acesso a dados, selecione data_access.
- Para os registos de auditoria de eventos do sistema, selecione system_event.
- Para registos de auditoria de recusa de políticas, selecione política.
Clique em Executar consulta.
Se não vir estas opções, significa que não existem registos de auditoria desse tipo disponíveis no projeto, na pasta ou na organização. Google Cloud
Se estiver a ter problemas ao tentar ver registos no Explorador de registos, consulte as informações de resolução de problemas.
Para mais informações sobre como consultar através do Explorador de registos, consulte o artigo Crie consultas no Explorador de registos.
gcloud
A CLI do Google Cloud fornece uma interface de linhas de comando para a API Logging. Forneça um identificador de recurso válido em cada um dos nomes dos registos. Por exemplo, se a sua consulta incluir um PROJECT_ID, o identificador do projeto que fornecer tem de se referir ao projetoGoogle Cloud atualmente selecionado.
Para ler as entradas do registo de auditoria ao nível do projeto, execute o seguinte comando: Google Cloud
gcloud logging read "logName : projects/PROJECT_ID/logs/cloudaudit.googleapis.com" \ --project=PROJECT_ID
Para ler as entradas do registo de auditoria ao nível da pasta, execute o seguinte comando:
gcloud logging read "logName : folders/FOLDER_ID/logs/cloudaudit.googleapis.com" \ --folder=FOLDER_ID
Para ler as entradas do registo de auditoria ao nível da organização, execute o seguinte comando:
gcloud logging read "logName : organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com" \ --organization=ORGANIZATION_ID
Para ler as entradas do registo de auditoria ao nível da conta do Cloud Billing, execute o seguinte comando:
gcloud logging read "logName : billingAccounts/BILLING_ACCOUNT_ID/logs/cloudaudit.googleapis.com" \ --billing-account=BILLING_ACCOUNT_ID
Adicione a flag --freshness
ao seu comando para ler registos com mais de 1 dia.
Para mais informações sobre a utilização da CLI gcloud, consulte
gcloud logging read
.
REST
Quando criar as consultas, forneça um identificador de recurso válido em cada um dos nomes dos registos. Por exemplo, se a sua consulta incluir um PROJECT_ID, o identificador do projeto que fornecer tem de se referir ao projetoGoogle Cloud atualmente selecionado.
Por exemplo, para usar a API Logging para ver as entradas do registo de auditoria ao nível do projeto, faça o seguinte:
Aceda à secção Experimentar esta API na documentação do método
entries.list
.Coloque o seguinte na parte Corpo do pedido do formulário Experimentar esta API. Se clicar neste formulário pré-preenchido, o corpo do pedido é preenchido automaticamente, mas tem de fornecer um PROJECT_ID válido em cada um dos nomes dos registos.
{ "resourceNames": [ "projects/PROJECT_ID" ], "pageSize": 5, "filter": "logName : projects/PROJECT_ID/logs/cloudaudit.googleapis.com" }
Clique em Executar.
Adicione informações personalizadas aos registos de auditoria
Pode anexar informações personalizadas a pedidos de inclusão em registos de auditoria
incluindo o cabeçalho x-goog-custom-audit-KEY: VALUE
no seu pedido. Os pedidos da API XML também suportam a utilização de um parâmetro de consulta x-goog-custom-audit-KEY=VALUE
. As informações personalizadas são adicionadas ao campo metadata
da entrada de registo de auditoria protoPayload
.
Quando adicionar informações de auditoria personalizadas, tenha em atenção as seguintes considerações:
Cada
KEY
, com a inclusão do prefixox-goog-custom-audit-
, pode conter até 64 carateres, enquanto cadaVALUE
pode conter até 1200 carateres.Cada pedido pode conter até 4 entradas de cabeçalho ou parâmetros combinadas.
Exemplos de entradas de cabeçalho
A lista seguinte mostra exemplos de pares de chave-valor que pode incluir em entradas de cabeçalho:
x-goog-custom-audit-job: test-job-id-here
x-goog-custom-audit-user: user ID test 1
x-goog-custom-audit-internal-user-id: MATR2022-11
x-goog-custom-audit-tracking-ticket: TT/1516512851
x-goog-custom-audit-justification: Removed customer identity record at customer request
x-goog-custom-audit-customer-id: USCU12315154
Exemplos de pedidos
Linha de comandos
gcloud storage hash gs://example_bucket/example_object.jpeg --additional-headers=x-goog-custom-audit-job="job name",x-goog-custom-audit-user="test user"
Bibliotecas cliente
C++
Para saber como adicionar cabeçalhos personalizados a pedidos, consulte o artigo Adicione cabeçalhos personalizados.
C#
Para saber como adicionar cabeçalhos personalizados a pedidos, consulte o artigo Adicione cabeçalhos personalizados.
Go
Para saber como adicionar cabeçalhos personalizados a pedidos, consulte o artigo Adicione cabeçalhos personalizados.
Java
Para saber como adicionar cabeçalhos personalizados a pedidos, consulte o artigo Adicione cabeçalhos personalizados.
Node.js
Para saber como adicionar cabeçalhos personalizados a pedidos, consulte o artigo Adicione cabeçalhos personalizados.
PHP
Para saber como adicionar cabeçalhos personalizados a pedidos, consulte o artigo Adicione cabeçalhos personalizados.
Python
Para saber como adicionar cabeçalhos personalizados a pedidos, consulte o artigo Adicione cabeçalhos personalizados.
Ruby
Para saber como adicionar cabeçalhos personalizados a pedidos, consulte o artigo Adicione cabeçalhos personalizados.
APIs REST
API JSON
curl -X GET "https://storage.googleapis.com/storage/v1/b/example_bucket/o/example_object" \ -H "Authorization: Bearer ya29.AHES6ZRVmB7fkLtd1XTmq6mo0S1wqZZi3-Lh_s-6Uw7p8vtgSwg" \ -H "x-goog-custom-audit-job: job name" \ -H "x-goog-custom-audit-user: test user"
API XML
curl -X GET "https://storage.googleapis.com/example_bucket/example_object" \ -H "Authorization: Bearer ya29.AHES6ZRVmB7fkLtd1XTmq6mo0S1wqZZi3-Lh_s-6Uw7p8vtgSwg" \ -H "x-goog-custom-audit-job: job name" \ -H "x-goog-custom-audit-user: test user"
Pedidos de URL assinado
curl -X GET 'storage.googleapis.com/example_bucket?X-Goog-Algorithm=GOOG4-RSA-SHA256&X-Goog-Credential=example%40example-project.iam.gserviceaccount.com%2F20181026%2Fus-central1%2Fstorage%2Fgoog4_request&X-Goog-Date=20181026T181309Z&X-Goog-Expires=900&X-Goog-SignedHeaders=host,x-goog-custom-audit-job,x-goog-custom-audit-user&X-Goog-Signature=247a2aa45f169edf4d187d54e7cc46e4731b1e6273242c4f4c39a1d2507a0e58706e25e3a85a7dbb891d62afa8496def8e260c1db863d9ace85ff0a184b894b117fe46d1225c82f2aa19efd52cf21d3e2022b3b868dcc1aca2741951ed5bf3bb25a34f5e9316a2841e8ff4c530b22ceaa1c5ce09c7cbb5732631510c20580e61723f5594de3aea497f195456a2ff2bdd0d13bad47289d8611b6f9cfeef0c46c91a455b94e90a66924f722292d21e24d31dcfb38ce0c0f353ffa5a9756fc2a9f2b40bc2113206a81e324fc4fd6823a29163fa845c8ae7eca1fcf6e5bb48b3200983c56c5ca81fffb151cca7402beddfc4a76b133447032ea7abedc098d2eb14a7' \ -H "x-goog-custom-audit-job: job name" \ -H "x-goog-custom-audit-user: test user"
Tenha em atenção que os cabeçalhos de auditoria personalizados também têm de ser incluídos em
X-Goog-SignedHeaders
.
Para criar um pedido de URL assinado que suporte a adição de cabeçalhos de auditoria personalizados, os cabeçalhos de auditoria personalizados que quer usar no pedido também têm de ser incluídos quando gera o URL assinado. Por exemplo:
gcloud storage sign-url gs://example_bucket/example_object.jpeg --private-key-file=example-key.json --duration=10m --headers=x-goog-custom-audit-job:"job name",x-goog-custom-audit-user="test user"
Também pode usar bibliotecas de cliente para gerar o URL assinado quando define cabeçalhos personalizados.
Em alternativa à utilização de cabeçalhos assinados, pode usar parâmetros de consulta para transmitir entradas de auditoria personalizadas.
curl -X GET 'storage.googleapis.com/example_bucket?X-Goog-Custom-Audit-Key=Value&X-Goog-Algorithm=GOOG4-RSA-SHA256&X-Goog-Credential=example%40example-project.iam.gserviceaccount.com%2F20181026%2Fus-central1%2Fstorage%2Fgoog4_request&X-Goog-Date=20181026T181309Z&X-Goog-Expires=900&X-Goog-SignedHeaders=host&X-Goog-Signature=247a2aa45f169edf4d187d54e7cc46e4731b1e6273242c4f4c39a1d2507a0e58706e25e3a85a7dbb891d62afa8496def8e260c1db863d9ace85ff0a184b894b117fe46d1225c82f2aa19efd52cf21d3e2022b3b868dcc1aca2741951ed5bf3bb25a34f5e9316a2841e8ff4c530b22ceaa1c5ce09c7cbb5732631510c20580e61723f5594de3aea497f195456a2ff2bdd0d13bad47289d8611b6f9cfeef0c46c91a455b94e90a66924f722292d21e24d31dcfb38ce0c0f353ffa5a9756fc2a9f2b40bc2113206a81e324fc4fd6823a29163fa845c8ae7eca1fcf6e5bb48b3200983c56c5ca81fffb151cca7402beddfc4a76b133447032ea7abedc098d2eb14a7'
Estes parâmetros de consulta têm de ser incluídos quando gera o URL assinado. Por exemplo:
gcloud storage sign-url gs://example_bucket/example_object.jpeg --private-key-file=example-key.json --duration=10m --query-params=x-goog-custom-audit-job=job_name,x-goog-custom-audit-user=test_user
Exemplo de entrada do registo
protoPayload: { @type: "type.googleapis.com/google.cloud.audit.Auditlog", ... metadata: { audit_context: { app_context: "EXTERNAL", audit_info: { x-goog-custom-audit-job: "job name", x-goog-custom-audit-user: "test user" } } } }
Para mais informações sobre os campos incluídos no objeto protoPayload
com o tipo type.googleapis.com/google.cloud.audit.Auditlog
, consulte a AuditLog
documentação de referência.
Encaminhe registos de auditoria
Pode encaminhar registos de auditoria de rotas para destinos suportados da mesma forma que pode encaminhar outros tipos de registos. Seguem-se alguns motivos pelos quais pode querer encaminhar os registos de auditoria:
- Para manter os registos de auditoria durante um período mais longo ou usar capacidades de pesquisa mais poderosas, pode encaminhar cópias dos registos de auditoria para o Cloud Storage, o BigQuery ou o Pub/Sub. Com o Pub/Sub, pode encaminhar para outras aplicações, outros repositórios e terceiros.
- Para gerir os registos de auditoria em toda uma organização, pode criar destinos agregados que podem encaminhar registos de qualquer ou todos os Google Cloud projetos na organização.
- Se os registos de auditoria de acesso a dados ativados estiverem a exceder a sua Google Cloud quota gratuita dos projetos, pode criar destinos que excluam os registos de auditoria de acesso a dados do registo.
Para obter instruções sobre o encaminhamento de registos, consulte o artigo Configure e faça a gestão de destinos .
Preços
Para ver informações sobre os preços do Cloud Logging, consulte o artigo Preços do Google Cloud Observability: Cloud Logging.