Esta página descreve os registros de auditoria criados pelo Firebase como parte dos registros de auditoria do Cloud .
Visão geral
Os serviços do Firebase escrevem registros de auditoria para ajudar você a responder às perguntas "Quem fez o quê, onde e quando?". Esses são registros de auditoria do Cloud, fornecidos como parte do projeto do Google Cloud Platform conectado ao seu projeto do Firebase .
Cada um dos seus projetos do Firebase contém apenas os registros de auditoria dos recursos que estão diretamente dentro do projeto.
Para obter uma visão geral dos logs de auditoria da nuvem, consulte Visão geral dos logs de auditoria da nuvem . Para uma compreensão mais profunda do formato do log de auditoria, consulte Compreender os logs de auditoria .
Logs de auditoria disponíveis
Os seguintes tipos de registros de auditoria estão disponíveis para regras de segurança do Firebase:
Registros de auditoria de atividades administrativas
Inclui operações de "gravação administrativa" que gravam metadados ou informações de configuração.
Não é possível desativar os registros de auditoria de atividades administrativas.
Logs de auditoria de acesso a dados
Inclui operações de "leitura administrativa" que leem metadados ou informações de configuração. Também inclui operações de “leitura de dados” e “gravação de dados” que leem ou gravam dados fornecidos pelo usuário.
Para receber logs de auditoria de acesso a dados, você deve ativá-los explicitamente.
Para obter descrições mais completas dos tipos de log de auditoria, consulte Tipos de logs de auditoria .
Operações auditadas
Veja a seguir um resumo de quais operações de API correspondem a cada tipo de registro de auditoria nas regras de segurança do Firebase:
Categoria de registros de auditoria | Operações de regras de segurança do Firebase | |
---|---|---|
Operações do projeto | ||
Atividade administrativa | ||
Acesso a dados (ADMIN_READ) | Conjunto de regras de teste | |
Operações de conjunto de regras | ||
Atividade administrativa | Criar conjunto de regras Excluir conjunto de regras | |
Acesso a dados (ADMIN_READ) | Obter conjunto de regras Listar conjuntos de regras Conjunto de regras de teste | |
Operações de liberação | ||
Atividade administrativa | CriarRelease AtualizaçãoRelease ExcluirRelease | |
Acesso a dados (ADMIN_READ) | GetRelease Lista de lançamentos |
Formato do registro de auditoria
As entradas do log de auditoria incluem os seguintes objetos:
A própria entrada de log, que é um objeto do tipo
LogEntry
. Os campos úteis incluem o seguinte:- O
logName
contém o ID do recurso e o tipo de log de auditoria. - O
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
Os dados de log de auditoria, que são um objeto
AuditLog
mantido no campoprotoPayload
da entrada de log.Informações opcionais de auditoria específicas do serviço, que são um objeto específico do serviço. Para integrações mais antigas, esse objeto é mantido no campo
serviceData
do objetoAuditLog
; integrações mais recentes usam o campometadata
.
Para outros campos nesses objetos e como interpretá-los, revise Compreender os logs de auditoria .
Nome do registro
Os nomes dos recursos dos registros de auditoria do Cloud indicam o projeto do Firebase ou outra entidade do GCP proprietária dos registros de auditoria e se o registro contém dados de registro de auditoria de atividades do administrador, acesso a dados, política negada ou eventos do sistema. Por exemplo, veja a seguir os nomes dos registros de auditoria de atividades administrativas no nível do projeto e os registros de auditoria de acesso a dados de uma organização. As variáveis denotam identificadores de projeto e organização do Firebase.
projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Factivity
organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fdata_access
Nome do Serviço
Os registros de auditoria das regras de segurança do Firebase usam o nome de serviço firebaserules.googleapis.com
.
Para ver uma lista completa de todos os nomes de serviço da API Cloud Logging e o tipo de recurso monitorado correspondente, consulte Mapear serviços para recursos .
Tipos de recursos
Os registros de auditoria das regras de segurança do Firebase usam o tipo de recurso audited_resource
para todos os registros de auditoria.
Para ver uma lista de todos os tipos de recursos monitorados do Cloud Logging e informações descritivas, consulte Tipos de recursos monitorados .
Habilitar registro de auditoria
Os registros de auditoria de atividades administrativas estão sempre ativados; você não pode desativá-los.
Os registros de auditoria de acesso a dados são desativados por padrão e não são gravados, a menos que sejam explicitamente ativados (a exceção são os registros de auditoria de acesso a dados do BigQuery, que não podem ser desativados).
Para obter instruções sobre como ativar alguns ou todos os seus logs de auditoria de acesso a dados, consulte Configurar logs de acesso a dados .
Permissões e funções
As permissões e papéis do Cloud IAM determinam sua capacidade de acessar dados de registros de auditoria em recursos do GCP.
Ao decidir quais permissões e funções específicas do Logging se aplicam ao seu caso de uso, considere o seguinte:
A função Visualizador de logs (
roles/logging.viewer
) fornece acesso somente leitura aos logs de auditoria de atividades administrativas, políticas negadas e eventos do sistema. Se você tiver apenas essa função, não poderá visualizar os logs de auditoria de acesso a dados que estão no bucket_Default
.A função Visualizador de logs privados
(roles/logging.privateLogViewer
) inclui as permissões contidas emroles/logging.viewer
, além da capacidade de ler logs de auditoria de acesso a dados no bucket_Default
.Observe que se esses logs privados forem armazenados em buckets definidos pelo usuário, qualquer usuário que tenha permissão para ler logs nesses buckets poderá ler os logs privados. Para obter mais informações sobre buckets de log, consulte Visão geral de roteamento e armazenamento .
Para obter mais informações sobre as permissões e os papéis do Cloud IAM que se aplicam aos dados de registros de auditoria, consulte Controle de acesso .
Ver registros
Para encontrar e visualizar registros de auditoria, você precisa saber o identificador do projeto, da pasta ou da organização do Firebase cujas informações de registro de auditoria você deseja visualizar. Você pode especificar ainda outros campos LogEntry
indexados, como resource.type
; para obter detalhes, revise Localizar entradas de log rapidamente .
A seguir estão os nomes dos logs de auditoria; eles incluem variáveis para os identificadores do projeto, pasta ou organização do Firebase:
projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Factivity projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Fdata_access projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Fsystem_event projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Fpolicy folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Factivity folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Fdata_access folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Fsystem_event folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Fpolicy organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Factivity organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fdata_access organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fsystem_event organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fpolicy
Você pode visualizar registros de auditoria no Cloud Logging usando o Console do GCP, a ferramenta de linha de comando gcloud
ou a API Logging.
Console
Você pode usar o Logs Explorer no Console do GCP para recuperar as entradas do registro de auditoria do seu projeto, pasta ou organização do Firebase:
No Console do GCP, acesse a página Logging > Logs Explorer .
Na página Logs Explorer , selecione um projeto, pasta ou organização existente do Firebase.
No painel Construtor de consultas , faça o seguinte:
Em Tipo de recurso , selecione o recurso do GCP cujos registros de auditoria você deseja ver.
Em Nome do log , selecione o tipo de log de auditoria que você deseja ver:
- Para registros de auditoria de atividades administrativas, selecione atividade .
- Para logs de auditoria de acesso a dados, selecione data_access .
- Para logs de auditoria de eventos do sistema, selecione system_event .
- Para logs de auditoria de política negada, selecione policy .
Se você não vir essas opções, significa que não há registros de auditoria desse tipo disponíveis no projeto, na pasta ou na organização do Firebase.
Para obter mais detalhes sobre consultas usando o Logs Explorer, consulte Criar consultas de log .
gcloud
A ferramenta de linha de comando gcloud
fornece uma interface de linha de comando para a API Cloud Logging. Forneça um PROJECT_ID
, FOLDER_ID
ou ORGANIZATION_ID
válido em cada um dos nomes de log.
Para ler as entradas do registro de auditoria no nível do projeto do Firebase, execute o seguinte comando:
gcloud logging read "logName : projects/PROJECT_ID/logs/cloudaudit.googleapis.com" --project=PROJECT_ID
Para ler as entradas do log de auditoria em nível de pasta, execute o seguinte comando:
gcloud logging read "logName : folders/FOLDER_ID/logs/cloudaudit.googleapis.com" --folder=FOLDER_ID
Para ler as entradas do log de auditoria no nível da organização, execute o seguinte comando:
gcloud logging read "logName : organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com" --organization=ORGANIZATION_ID
Para obter mais informações sobre como usar a ferramenta gcloud
, consulte Ler entradas de log .
API
Ao criar suas consultas, substitua as variáveis por valores válidos, substitua o nome ou os identificadores apropriados do log de auditoria no nível do projeto, no nível da pasta ou no nível da organização, conforme listado nos nomes do log de auditoria. Por exemplo, se sua consulta incluir um PROJECT_ID , o identificador de projeto fornecido deverá se referir ao projeto do Firebase atualmente selecionado.
Para usar a API Logging para examinar as entradas do registro de auditoria, faça o seguinte:
Vá para a seção Experimente esta API na documentação do método
entries.list
.Coloque o seguinte na parte do corpo da solicitação do formulário Experimente esta API . Clicar neste formulário pré-preenchido preenche automaticamente o corpo da solicitação, mas você precisa fornecer um
PROJECT_ID
válido em cada um dos nomes de log.{ "resourceNames": [ "projects/PROJECT_ID" ], "pageSize": 5, "filter": "logName : projects/PROJECT_ID/logs/cloudaudit.googleapis.com" }
Clique em Executar .
Para obter mais detalhes sobre consultas, consulte Linguagem de consulta de registro em log .
Para obter um exemplo de entrada de log de auditoria e como localizar as informações mais importantes nela, consulte Exemplo de entrada de log de auditoria .
Logs de auditoria de roteamento
Você pode rotear logs de auditoria para destinos compatíveis da mesma forma que pode rotear outros tipos de logs. Aqui estão alguns motivos pelos quais você pode querer rotear seus registros de auditoria:
Para manter os registros de auditoria por um período mais longo ou usar recursos de pesquisa mais avançados, você pode encaminhar cópias dos registros de auditoria para o Google Cloud Storage, o BigQuery ou o Google Cloud Pub/Sub. Usando o Cloud Pub/Sub, você pode rotear para outros aplicativos, outros repositórios e terceiros.
Para gerenciar seus registros de auditoria em toda a organização, você pode criar coletores agregados que podem rotear registros de qualquer um ou de todos os projetos do Firebase na organização.
- Se os registros de auditoria de acesso a dados ativados estiverem enviando projetos do Firebase para suas cotas de registros, você poderá criar coletores que excluam os registros de auditoria de acesso a dados do Logging.
Para obter instruções sobre logs de roteamento, consulte Configurar coletores .
Preços
Os logs de auditoria de atividades administrativas e os logs de auditoria de eventos do sistema são gratuitos.
Os logs de auditoria de acesso a dados e os logs de auditoria de política negada são cobrados.
Para obter mais informações sobre os preços do Cloud Logging, consulte os preços do pacote de operações do Google Cloud: Cloud Logging .