Logging audit untuk Aturan Keamanan Firebase

Dokumen ini menjelaskan logging audit untuk Aturan Keamanan Firebase. Layanan Google Cloud membuat log audit yang mencatat aktivitas administratif dan akses dalam resource Google Cloud Anda. Untuk informasi selengkapnya tentang Cloud Audit Logs, lihat referensi berikut:

Nama layanan

Log audit Aturan Keamanan Firebase menggunakan nama layanan firebaserules.googleapis.com. Filter untuk layanan ini:

    protoPayload.serviceName="firebaserules.googleapis.com"
  

Metode menurut jenis izin

Setiap izin IAM memiliki properti type, yang nilainya adalah enum yang dapat berupa salah satu dari empat nilai: ADMIN_READ, ADMIN_WRITE, DATA_READ, atau DATA_WRITE. Saat Anda memanggil metode, Aturan Keamanan Firebase akan membuat log audit yang kategorinya bergantung pada properti type izin yang diperlukan untuk menjalankan metode. Metode yang memerlukan izin IAM dengan nilai properti type DATA_READ, DATA_WRITE, atau ADMIN_READ akan menghasilkan log audit Akses Data. Metode yang memerlukan izin IAM dengan nilai properti type dari ADMIN_WRITE akan membuat log audit Aktivitas Admin.

Jenis izin Metode
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

Log audit antarmuka API

Untuk mengetahui informasi tentang cara dan izin mana yang dievaluasi untuk setiap metode, lihat dokumentasi Cloud Identity and Access Management untuk Aturan Keamanan Firebase.

google.firebase.rules.v1.FirebaseRulesService

Log audit berikut dikaitkan dengan metode yang termasuk dalam google.firebase.rules.v1.FirebaseRulesService.

CreateRelease

  • Metode: google.firebase.rules.v1.FirebaseRulesService.CreateRelease
  • Jenis log audit: Aktivitas admin
  • Izin:
    • firebaserules.releases.create - ADMIN_WRITE
  • Metode adalah operasi streaming atau yang berjalan lama: Tidak.
  • Filter untuk metode ini: protoPayload.methodName="google.firebase.rules.v1.FirebaseRulesService.CreateRelease"

CreateRuleset

  • Metode: google.firebase.rules.v1.FirebaseRulesService.CreateRuleset
  • Jenis log audit: Aktivitas admin
  • Izin:
    • firebaserules.rulesets.create - ADMIN_WRITE
  • Metode adalah operasi streaming atau yang berjalan lama: Tidak.
  • Filter untuk metode ini: protoPayload.methodName="google.firebase.rules.v1.FirebaseRulesService.CreateRuleset"

DeleteRelease

  • Metode: google.firebase.rules.v1.FirebaseRulesService.DeleteRelease
  • Jenis log audit: Aktivitas admin
  • Izin:
    • firebaserules.releases.delete - ADMIN_WRITE
  • Metode adalah operasi streaming atau yang berjalan lama: Tidak.
  • Filter untuk metode ini: protoPayload.methodName="google.firebase.rules.v1.FirebaseRulesService.DeleteRelease"

DeleteRuleset

  • Metode: google.firebase.rules.v1.FirebaseRulesService.DeleteRuleset
  • Jenis log audit: Aktivitas admin
  • Izin:
    • firebaserules.rulesets.delete - ADMIN_WRITE
  • Metode adalah operasi streaming atau yang berjalan lama: Tidak.
  • Filter untuk metode ini: protoPayload.methodName="google.firebase.rules.v1.FirebaseRulesService.DeleteRuleset"

GetRelease

  • Metode: google.firebase.rules.v1.FirebaseRulesService.GetRelease
  • Jenis log audit: Akses data
  • Izin:
    • firebaserules.releases.get - ADMIN_READ
  • Metode adalah operasi streaming atau yang berjalan lama: Tidak.
  • Filter untuk metode ini: protoPayload.methodName="google.firebase.rules.v1.FirebaseRulesService.GetRelease"

GetRuleset

  • Metode: google.firebase.rules.v1.FirebaseRulesService.GetRuleset
  • Jenis log audit: Akses data
  • Izin:
    • firebaserules.rulesets.get - ADMIN_READ
  • Metode adalah operasi streaming atau yang berjalan lama: Tidak.
  • Filter untuk metode ini: protoPayload.methodName="google.firebase.rules.v1.FirebaseRulesService.GetRuleset"

ListReleases

  • Metode: google.firebase.rules.v1.FirebaseRulesService.ListReleases
  • Jenis log audit: Akses data
  • Izin:
    • firebaserules.releases.list - ADMIN_READ
  • Metode adalah operasi streaming atau yang berjalan lama: Tidak.
  • Filter untuk metode ini: protoPayload.methodName="google.firebase.rules.v1.FirebaseRulesService.ListReleases"

ListRulesets

  • Metode: google.firebase.rules.v1.FirebaseRulesService.ListRulesets
  • Jenis log audit: Akses data
  • Izin:
    • firebaserules.rulesets.list - ADMIN_READ
  • Metode adalah operasi streaming atau yang berjalan lama: Tidak.
  • Filter untuk metode ini: protoPayload.methodName="google.firebase.rules.v1.FirebaseRulesService.ListRulesets"

TestRuleset

  • Metode: google.firebase.rules.v1.FirebaseRulesService.TestRuleset
  • Jenis log audit: Akses data
  • Izin:
    • firebaserules.rulesets.test - ADMIN_READ
  • Metode adalah operasi streaming atau yang berjalan lama: Tidak.
  • Filter untuk metode ini: protoPayload.methodName="google.firebase.rules.v1.FirebaseRulesService.TestRuleset"

UpdateRelease

  • Metode: google.firebase.rules.v1.FirebaseRulesService.UpdateRelease
  • Jenis log audit: Aktivitas admin
  • Izin:
    • firebaserules.releases.update - ADMIN_WRITE
  • Metode adalah operasi streaming atau yang berjalan lama: Tidak.
  • Filter untuk metode ini: protoPayload.methodName="google.firebase.rules.v1.FirebaseRulesService.UpdateRelease"

Metode yang tidak menghasilkan log audit

Metode mungkin tidak menghasilkan log audit karena satu atau beberapa alasan berikut:

  • Ini adalah metode bervolume tinggi yang melibatkan biaya penyimpanan dan pembuatan log yang signifikan.
  • Nilai auditnya rendah.
  • Audit atau log platform lain sudah menyediakan cakupan metode.

Metode berikut tidak menghasilkan log audit:

  • google.firebase.rules.v1.FirebaseRulesService.GetReleaseExecutable