This document describes audit logging for Firebase Security Rules. Google Cloud services generate audit logs that record administrative and access activities within your Google Cloud resources. To learn more about Cloud Audit Logs, refer to the following documentation pages:
- Types of audit logs
- Audit log entry structure
- Details on audit log storage and routing
- Cloud Logging pricing summary
- How to enable Data Access audit logs
Service name
Firebase Security Rules audit logs use the service name firebaserules.googleapis.com
.
Filter for this service:
protoPayload.serviceName="firebaserules.googleapis.com"
Methods by permission type
Each IAM permission has a type
property, whose value is an enum
that can be one of four values: ADMIN_READ
, ADMIN_WRITE
,
DATA_READ
, or DATA_WRITE
. When you call a method,
Firebase Security Rules generates an audit log whose category is dependent on the
type
property of the permission required to perform the method.
Methods that require an IAM permission with the type
property value
of DATA_READ
, DATA_WRITE
, or ADMIN_READ
generate
Data Access audit logs.
Methods that require an IAM permission with the type
property value
of ADMIN_WRITE
generate
Admin Activity audit logs.
Permission type | Methods |
---|---|
ADMIN_READ |
google.firebase.rules.v1.FirebaseRulesService.GetRelease google.firebase.rules.v1.FirebaseRulesService.GetRuleset google.firebase.rules.v1.FirebaseRulesService.ListReleases google.firebase.rules.v1.FirebaseRulesService.ListRulesets google.firebase.rules.v1.FirebaseRulesService.TestRuleset |
ADMIN_WRITE |
google.firebase.rules.v1.FirebaseRulesService.CreateRelease google.firebase.rules.v1.FirebaseRulesService.CreateRuleset google.firebase.rules.v1.FirebaseRulesService.DeleteRelease google.firebase.rules.v1.FirebaseRulesService.DeleteRuleset google.firebase.rules.v1.FirebaseRulesService.UpdateRelease |
API interface audit logs
For information about how and which permissions are evaluated for each method, see the Cloud Identity and Access Management documentation for Firebase Security Rules.
google.firebase.rules.v1.FirebaseRulesService
The following section contains details about audit logs associated with
methods belonging to google.firebase.rules.v1.FirebaseRulesService
.
CreateRelease
- Method:
google.firebase.rules.v1.FirebaseRulesService.CreateRelease
- Audit log type: Admin activity
- Permissions:
firebaserules.releases.create - ADMIN_WRITE
- Method is a long-running or streaming operation:
No.
- Filter for this method:
protoPayload.methodName="google.firebase.rules.v1.FirebaseRulesService.CreateRelease"
CreateRuleset
- Method:
google.firebase.rules.v1.FirebaseRulesService.CreateRuleset
- Audit log type: Admin activity
- Permissions:
firebaserules.rulesets.create - ADMIN_WRITE
- Method is a long-running or streaming operation:
No.
- Filter for this method:
protoPayload.methodName="google.firebase.rules.v1.FirebaseRulesService.CreateRuleset"
DeleteRelease
- Method:
google.firebase.rules.v1.FirebaseRulesService.DeleteRelease
- Audit log type: Admin activity
- Permissions:
firebaserules.releases.delete - ADMIN_WRITE
- Method is a long-running or streaming operation:
No.
- Filter for this method:
protoPayload.methodName="google.firebase.rules.v1.FirebaseRulesService.DeleteRelease"
DeleteRuleset
- Method:
google.firebase.rules.v1.FirebaseRulesService.DeleteRuleset
- Audit log type: Admin activity
- Permissions:
firebaserules.rulesets.delete - ADMIN_WRITE
- Method is a long-running or streaming operation:
No.
- Filter for this method:
protoPayload.methodName="google.firebase.rules.v1.FirebaseRulesService.DeleteRuleset"
GetRelease
- Method:
google.firebase.rules.v1.FirebaseRulesService.GetRelease
- Audit log type: Data access
- Permissions:
firebaserules.releases.get - ADMIN_READ
- Method is a long-running or streaming operation:
No.
- Filter for this method:
protoPayload.methodName="google.firebase.rules.v1.FirebaseRulesService.GetRelease"
GetRuleset
- Method:
google.firebase.rules.v1.FirebaseRulesService.GetRuleset
- Audit log type: Data access
- Permissions:
firebaserules.rulesets.get - ADMIN_READ
- Method is a long-running or streaming operation:
No.
- Filter for this method:
protoPayload.methodName="google.firebase.rules.v1.FirebaseRulesService.GetRuleset"
ListReleases
- Method:
google.firebase.rules.v1.FirebaseRulesService.ListReleases
- Audit log type: Data access
- Permissions:
firebaserules.releases.list - ADMIN_READ
- Method is a long-running or streaming operation:
No.
- Filter for this method:
protoPayload.methodName="google.firebase.rules.v1.FirebaseRulesService.ListReleases"
ListRulesets
- Method:
google.firebase.rules.v1.FirebaseRulesService.ListRulesets
- Audit log type: Data access
- Permissions:
firebaserules.rulesets.list - ADMIN_READ
- Method is a long-running or streaming operation:
No.
- Filter for this method:
protoPayload.methodName="google.firebase.rules.v1.FirebaseRulesService.ListRulesets"
TestRuleset
- Method:
google.firebase.rules.v1.FirebaseRulesService.TestRuleset
- Audit log type: Data access
- Permissions:
firebaserules.rulesets.test - ADMIN_READ
- Method is a long-running or streaming operation:
No.
- Filter for this method:
protoPayload.methodName="google.firebase.rules.v1.FirebaseRulesService.TestRuleset"
UpdateRelease
- Method:
google.firebase.rules.v1.FirebaseRulesService.UpdateRelease
- Audit log type: Admin activity
- Permissions:
firebaserules.releases.update - ADMIN_WRITE
- Method is a long-running or streaming operation:
No.
- Filter for this method:
protoPayload.methodName="google.firebase.rules.v1.FirebaseRulesService.UpdateRelease"
Methods that don't produce audit logs
A method might not produce audit logs for one or more of the following reasons:
- It is a high volume method involving signifcant log generation and storage costs.
- It has low auditing value.
- Another audit or platform log already provides method coverage.
The following methods don't produce audit logs:
google.firebase.rules.v1.FirebaseRulesService.GetReleaseExecutable