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 o Firebase Notifications Console:
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 no Firebase Notifications Console:
Categoria de registros de auditoria | Ações do console do Firebase Notifications | Digite o nome (usado para pesquisar registros na IU) |
---|---|---|
Registros de acesso a dados (DATA_READ) | Obtenha uma campanha | GetCampaign |
Registros de acesso a dados (DATA_READ) | Listar campanhas | ListaCampaign |
Registros de acesso a dados (DATA_READ) | Obtenha informações de uma notificação de experimento ABT | LegacyGetRollout |
Registros de acesso a dados (DATA_READ) | Obtenha possibilidades de segmentação | Obter públicos |
Registros de acesso a dados (DATA_READ) | Obtenha estatísticas fcm (contagens de enviados/abertos/entregues/convertidos) | ObterFcmStats |
Registros de acesso a dados (DATA_READ) | Obtenha uma lista de rótulos analíticos para um período e projeto. | GetAnalyticsLabelList |
Registros de acesso a dados (DATA_WRITE) | Criar implementação do ABT | LegacyCreateRollout |
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 do Console do Firebase Notifications usam o nome de serviço gcmcontextualcampaign-pa.googleapis.com
.
Para ver uma lista completa de todos os nomes de serviços da API Stackdriver Logging e seus tipos de recursos monitorados correspondentes, consulte Mapear serviços para recursos .
Tipos de recursos
Os registros de auditoria do Console do Firebase Notifications usam o tipo de recurso audited_resource
para todos os registros de auditoria.
Para obter uma lista de todos os tipos de recursos monitorados do Stackdriver Logging e informações descritivas, consulte Tipos de recursos monitorados .
Habilitar registro de auditoria
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 Stackdriver 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 Stackdriver 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 mais informações sobre os preços do Stackdriver Logging, consulte os preços do pacote de operações do Google Cloud: Stackdriver Logging .