Nesta página, descrevemos os registros de auditoria criados pelo Firebase como parte do Cloud Audit Logging.
Visão geral
Os serviços do Firebase gravam registros de auditoria que ajudam você a determinar quem fez o quê, onde e quando. Esses são os registros de auditoria do Cloud, fornecidos como parte do projeto do GCP conectado ao projeto do Firebase. Cada projeto do Firebase contém apenas os registros de auditoria dos recursos que estão diretamente nele.
Para uma visão geral dos registros de auditoria do Cloud, acesse esta página. Se você quiser mais detalhes sobre os registros de auditoria do Cloud, consulte Noções básicas sobre os registros de auditoria.
O Cloud Audit Logging mantém três registros de auditoria para cada projeto, pasta e organização do GCP:
- Registros de auditoria de atividade do administrador
- Registros de auditoria de acesso a dados
- Registros de auditoria de evento do sistema
O Firebase Management grava registros de auditoria da Atividade administrativa, que registram operações que modificam a configuração ou os metadados de um recurso. Não é possível desativar os registros de auditoria da atividade do administrador.
O gerenciamento do Firebase grava registros de auditoria de acesso a dados apenas quando essa opção é ativada. Eles contêm as chamadas de API que leem a configuração ou os metadados dos recursos, além das chamadas com base no usuário que criam, modificam ou leem os dados dos recursos inseridos pelo usuário. Os registros de auditoria de acesso a dados não gravam as operações em recursos que são compartilhados publicamente (disponíveis para todos os usuários ou todos os usuários autenticados) ou que podem ser acessados sem fazer login no GCP.
O Firebase Management não grava registros de auditoria de eventos do sistema.
Operações auditadas
A seguir, veja quais operações de API correspondem a cada tipo de registro de auditoria no gerenciamento do Firebase:
Categoria de registros de auditoria | Operações do gerenciamento do Firebase | |
---|---|---|
Operações do projeto | ||
Atividade do administrador | AddFirebase UpdateFirebaseProject FinalizeDefaultLocation |
|
Acesso a dados (ADMIN_READ) | GetFirebaseProject ListAvailableLocations GetAdminSdkConfig SearchFirebaseApps |
|
Operações do app para iOS | ||
Atividade do administrador | CreateIosApp UpdateIosApp |
|
Acesso a dados (ADMIN_READ) | GetIosApp ListIosApps GetIosAppConfig |
|
Operações do app para Android | ||
Atividade do administrador | CreateAndroidApp UpdateAndroidApp CreateShaCertificate DeleteShaCertificate |
|
Acesso a dados (ADMIN_READ) | GetAndroidApp ListAndroidApps GetAndroidAppConfig ListShaCertificates |
|
Operações do aplicativo da Web | ||
Atividade do administrador | CreateWebApp UpdateWebApp |
|
Acesso a dados (ADMIN_READ) | GetWebApp ListWebApps GetWebAppConfig |
Formato do registro de auditoria
As entradas do registro de auditoria, que podem ser visualizadas no Stackdriver Logging usando-se o visualizador de registros, a API Stackdriver Logging ou o SDK do Cloud, incluem os seguintes objetos:
A própria entrada de registro, que é um objeto do tipo
LogEntry
. Veja alguns campos úteis:logName
contém a identificação do projeto e o tipo de registro de auditoria.resource
contém o destino da operação auditada.timeStamp
contém o horário da operação auditada.protoPayload
contém as informações auditadas.
Os dados de registros de auditoria, que são um objeto
AuditLog
mantido no campoprotoPayload
da entrada de registro.Informações de auditoria opcionais específicas do serviço, localizadas no campo
serviceData
do objetoAuditLog
. Para detalhes, acesse Dados de auditoria específicos do serviço.
Para ver outros campos nesses objetos e saber como interpretá-los, leia as Noções básicas sobre os registros de auditoria.
Nome do registro
Os nomes de recursos do Cloud Audit Logs indicam o projeto ou outra entidade que contém os registros de auditoria e mostram se o registro tem dados de registro de auditoria de atividades do administrador, de acesso a dados ou de eventos do sistema. Por exemplo, veja abaixo os nomes dos registros de auditoria de atividades do administrador de um projeto e dos registros de auditoria de acesso aos dados de uma organização.
projects/[PROJECT_ID]/logs/cloudaudit.googleapis.com%2Factivity organizations/[ORGANIZATION_ID]/logs/cloudaudit.googleapis.com%2Fdata_access
Nome do serviço
Os logs de auditoria do gerenciamento do Firebase usam o nome do serviço firebase.googleapis.com
.
Para mais detalhes sobre serviços de registro, consulte Como mapear serviços para recursos.
Tipos de recurso
Os registros de auditoria do gerenciamento do Firebase usam o tipo de recurso audited_resource
para todos os registros de auditoria.
Para uma lista completa, acesse Tipos de recurso monitorado.
Ativar registro de auditoria
Os registros de auditoria de atividade do administrador estão sempre ativados. Não é possível desativá-los.
Por padrão, os registros de auditoria de acesso a dados são desativados e não são gravados, a menos que essa opção seja ativada. Os registros de auditoria de acesso a dados do BigQuery são uma exceção e não podem ser desativados.
Para instruções sobre como ativar alguns ou todos os registros de auditoria de acesso a dados, acesse Como configurar registros de acesso a dados.
Os registros de auditoria de acesso a dados que forem configurados afetam o preço dos registros no stackdriver_name_short. Consulte a seção Preços nesta página.
Permissões de registro de auditoria
As permissões e os papéis do Cloud Identity and Access Management determinam quais registros de auditoria você pode ver ou exportar. Os registros estão incluídos nos projetos e em outras entidades como organizações, pastas e contas de faturamento. Para mais informações, consulte Noções básicas sobre papéis.
Para ver os registros de auditoria de atividade do administrador, você precisa ter um dos seguintes papéis do Cloud IAM no projeto que contém os registros de auditoria:- Proprietário do projeto, editor do projeto ou visualizador do projeto
- Papel de visualizador de registros do Logging
- Papel personalizado do Cloud IAM com a permissão
logging.logEntries.list
Para ver os registros de acesso a dados, você precisa ter um dos seguintes papéis no projeto que contém os registros de auditoria:
- Proprietário do projeto
- Papel de visualizador de registros privados do Logging
- Papel personalizado do Cloud IAM com a permissão
logging.privateLogEntries.list
Se você estiver usando registros de auditoria de uma entidade sem projeto, como uma organização, altere para os papéis do projeto adequados à organização.
Ver registros
Você tem várias opções para visualizar suas entradas de registro de auditoria:
Visualizador básico
É possível usar a interface básica do Visualizador de registros no Console do GCP para recuperar entradas de registros de auditoria. Para isso, siga as etapas abaixo:
Acesse Stackdriver Logging > Registros (página "Visualizador de registros") no Console do GCP:
Selecione um projeto do GCP na parte superior da página ou crie um novo.
No primeiro menu suspenso, selecione o tipo de recurso com os registros de auditoria que você quer ver. É possível selecionar um recurso específico ou
Global
para ver todos os recursos.No segundo menu suspenso, selecione o tipo de registro que você quer visualizar:
activity
para registros de auditoria de atividade do administrador,data_access
para logs de auditoria de acesso a dados esystem_events
para logs de auditoria de eventos do sistema.Se nenhuma dessas opções é exibida, significa que não há registros de auditoria desse tipo disponíveis no projeto.
Leitor avançado
É possível usar a interface avançada do Visualizador de registros no Console do GCP para recuperar suas entradas de registros de auditoria. Para isso, siga as etapas abaixo:
Acesse Stackdriver Logging > Registros (página "Visualizador de registros") no Console do GCP:
Selecione um projeto do GCP na parte superior da página ou crie um novo.
No primeiro menu suspenso, selecione o tipo de recurso com os registros de auditoria que você quer ver. É possível selecionar um recurso específico ou
Global
para ver todos os recursos.Clique na seta suspensa (▾) na extrema direita da caixa do filtro de pesquisa e selecione Converter para filtro avançado.
Crie um filtro que especifique ainda mais as entradas de registros que você quer ver. Para recuperar todos os registros de auditoria do projeto, adicione o filtro a seguir. Insira um
[PROJECT_ID]
válido em cada um dos nomes de registro.logName = ("projects/[PROJECT_ID]/logs/cloudaudit.googleapis.com%2Factivity" OR OR "projects/[PROJECT_ID]/logs/cloudaudit.googleapis.com%2Fsystem_events" OR "projects/[PROJECT_ID]logs/cloudaudit.googleapis.com%2Fdata_access")
Para mais detalhes sobre filtros, acesse Filtros de registros avançados.
API
Para ver suas entradas de registros de auditoria usando a API Stackdriver Logging, siga estas etapas:
Acesse a seção Testar esta API na documentação do método
entries.list
.Digite o seguinte na parte do Corpo da solicitação do formulário Teste esta API. Ao clicar neste formulário pré-preenchido, o corpo da solicitação será automaticamente preenchido. No entanto, será preciso fornecer um
[PROJECT_ID]
válido em cada um dos nomes de registro.{ "resourceNames": [ "projects/[PROJECT_ID]" ], "pageSize": 5, "filter": "logName=(projects/[PROJECT_ID]/logs/cloudaudit.googleapis.com%2Factivity OR projects/[PROJECT_ID]/logs/cloudaudit.googleapis.com%2Fsystem_events OR projects/[PROJECT_ID]/logs/cloudaudit.googleapis.com%2Fdata_access)" }
Clique em Executar.
Para saber mais sobre as consultas, acesse Consultas de registros avançados.
SDK
Para ler suas entradas de registros usando o SDK do Cloud, execute o comando abaixo. Insira um [PROJECT_ID]
válido em cada um dos nomes de registro.
gcloud logging read "logName=(projects/[PROJECT_ID]/logs/cloudaudit.googleapis.com%2Factivity OR projects/[PROJECT_ID]/logs/cloudaudit.googleapis.com%2Fsystem_events OR projects/[PROJECT_ID]/logs/cloudaudit.googleapis.com%2Fdata_access)"
Acesse Como ler entradas de registro para mais informações sobre como usar o SDK do Cloud.
Para um exemplo de entrada de registro de auditoria e como encontrar as informações mais importantes, acesse Noções básicas sobre registros de auditoria.
Exportar registros de auditoria
É possível exportar os registros de auditoria da mesma forma que você exporta outros tipos de registro. Para mais detalhes sobre como exportar seus registros, acesse esta página. Veja a seguir algumas aplicações da exportação de registros de auditoria:
Para manter os registros de auditoria por mais tempo ou usar recursos de pesquisa mais avançados, exporte cópias dos seus registros de auditoria para o Google Cloud Storage, BigQuery ou Cloud Pub/Sub. Com o Cloud Pub/Sub, é possível exportar para outros aplicativos, outros repositórios e para terceiros.
Para gerenciar os registros de auditoria em toda a organização, é possível criar coletores de exportação agregados. Eles exportam registros de todos os projetos na organização.
- Se os registros ativados de acesso a dados estiverem fazendo seus projetos excederem as cotas, exporte e exclua esses registros do Logging. Para detalhes, acesse Como excluir registros.
Preços
O Stackdriver Logging não gera cobranças por registros de auditoria que não podem ser desativados, incluindo todos aqueles de atividades do administrador. O Stackdriver Logging cobra pelos registros de acesso a dados que você solicita explicitamente.Para mais informações sobre preços de registros de auditoria, avalie os preços do Stackdriver.