Izin diberikan kepada anggota proyek Anda melalui peran . Peran adalah kumpulan izin. Saat Anda menetapkan peran ke anggota proyek, Anda memberi anggota proyek itu semua izin yang terkandung dalam peran tersebut.
Halaman ini menjelaskan tindakan yang diaktifkan oleh izin yang mungkin Anda temukan tercantum dalam peran yang didukung Firebase. Izin ini terbagi dalam dua kategori:
Izin Identity and Access Management (IAM) yang diperlukan untuk semua peran atau tindakan tertentu dalam Firebase
Izin yang diperlukan
Firebase IAM menyertakan izin yaitu:
Diperlukan untuk menggunakan produk atau layanan Firebase apa pun.
Diperlukan untuk melakukan beberapa tindakan khusus layanan Firebase.
Diperlukan untuk melakukan beberapa tindakan khusus pengelolaan Firebase.
Untuk daftar umum dan deskripsi izin khusus untuk produk atau layanan Firebase, lihat bagian yang sesuai dalam izin IAM khusus produk Firebase .
Izin yang diperlukan disertakan dalam semua peran
Izin yang tercantum dalam tabel berikut diperlukan untuk menggunakan produk atau layanan Firebase apa pun.
Izin ini disertakan secara otomatis di setiap peran yang telah ditentukan oleh Firebase .
Izin | Keterangan |
---|---|
Memberikan izin untuk mengambil informasi project Firebase | |
Memberikan izin untuk mengambil informasi project Firebase | |
Memberikan izin untuk memeriksa status Google API dan menjalankan perintah Firebase CLI |
Izin yang diperlukan untuk tindakan khusus layanan Firebase
Izin yang tercantum dalam tabel berikut diperlukan untuk melakukan beberapa tindakan khusus layanan Firebase.
Jika diperlukan, izin ini secara otomatis disertakan dalam setiap peran yang telah ditentukan oleh Firebase .
Tindakan | Izin yang diperlukan |
---|---|
Akses integrasi proyek Firebase dengan alat kolaborasi (termasuk Slack, Jira, dan PagerDuty) | firebaseextensions.configs.* |
Lihat penggunaan dan analitik dari StackDriver | monitoring.timeSeries.list |
Jalankan perintah Firebase CLI Untuk informasi selengkapnya, lihat dokumentasi Google Cloud tentang Akses Pengonfigurasi Waktu Proses . | runtimeconfig.* |
Izin yang diperlukan untuk tindakan khusus pengelolaan Firebase
Izin yang tercantum dalam tabel berikut adalah izin tambahan yang diperlukan untuk melakukan beberapa tindakan khusus pengelolaan Firebase.
Izin manajemen dan tindakan terkait | Diperlukan izin tambahan |
---|---|
firebase.billingPlans.update | |
Ubah paket penagihan untuk project Firebase | resourcemanager.projects.createBillingAssignment resourcemanager.projects.deleteBillingAssignment |
firebase.projects.delete | |
Hapus proyek Firebase | resourcemanager.projects.delete |
firebase.projects.update | |
Tambahkan resource Firebase ke project Google Cloud yang sudah ada | resourcemanager.projects.get serviceusage.services.enable serviceusage.services.get |
Ubah nama proyek Firebase | resourcemanager.projects.update |
Tambahkan sidik jari sertifikat SHA untuk aplikasi Android | clientauthconfig.clients.create |
Hapus sidik jari sertifikat SHA untuk aplikasi Android | clientauthconfig.clients.delete |
Perbarui ID App Store atau ID Tim untuk aplikasi Apple | clientauthconfig.clients.get clientauthconfig.clients.update |
Izin IAM khusus produk Firebase
Tabel berikut mencantumkan izin khusus untuk produk atau layanan Firebase. Anda dapat menggunakan izin ini untuk membuat peran khusus .
Izin Manajemen Firebase
Perhatikan bahwa beberapa izin pengelolaan berikut memerlukan izin tambahan untuk tindakan tertentu .
Nama izin | Keterangan |
---|---|
firebase.billingPlans.get | Ambil paket penagihan Firebase saat ini untuk sebuah project |
firebase.billingPlans.update | Ubah paket penagihan Firebase saat ini untuk sebuah project |
firebase.clients.create | Tambahkan aplikasi baru ke proyek |
firebase.clients.delete | Hapus aplikasi yang ada dari proyek |
firebase.klien.get | Mengambil detail dan konfigurasi untuk aplikasi dalam sebuah project |
firebase.clients.list | Ambil daftar aplikasi dalam proyek |
firebase.clients.undelete | Batalkan penghapusan aplikasi yang dihapus sebelum datanya dihapus secara permanen |
firebase.clients.update | Perbarui detail dan konfigurasi untuk aplikasi dalam sebuah project |
firebase.links.create | Buat tautan baru ke sistem Google (Konsol Firebase > Setelan Proyek > Integrasi) |
firebase.links.delete | Hapus tautan ke sistem Google (Konsol Firebase > Setelan Proyek > Integrasi) |
firebase.links.list | Ambil daftar tautan ke sistem Google (Konsol Firebase > Setelan Proyek > Integrasi) |
firebase.links.update | Perbarui tautan yang ada ke sistem Google (Konsol Firebase > Setelan Proyek > Integrasi) |
firebase.playLinks.get | Dapatkan detail tentang tautan ke Google Play (Konsol Firebase > Setelan Proyek > Integrasi > Google Play) |
firebase.playLinks.list | Ambil daftar tautan ke Google Play (Konsol Firebase > Setelan Proyek > Integrasi > Google Play) |
firebase.playLinks.update | Buat tautan baru dan perbarui tautan yang ada ke Google Play (Konsol Firebase > Setelan Proyek > Integrasi > Google Play) |
firebase.projects.delete | Hapus proyek yang ada |
firebase.projects.get | Mengambil detail dan resource Firebase untuk sebuah project |
firebase.projects.update | Memodifikasi atribut proyek yang sudah ada Terima peringatan untuk produk dan fitur Firebase yang berlaku ( pelajari lebih lanjut ) |
firebaseinstallations.instances.delete | Hapus ID penginstalan Firebase dan data yang terkait dengan penginstalan tersebut ( pelajari lebih lanjut ) |
izin Google Analytics
Izin berikut memberikan akses ke properti Analytics yang ditautkan ke proyek Firebase. Mereka mengizinkan anggota proyek Firebase untuk mengakses data Analytics, termasuk audiens, properti pengguna, corong, laporan, konversi, dll.
Nama izin | Keterangan |
---|---|
firebaseanalytics.resources.googleAnalyticsEdit | Secara default, berikan peran Editor Analytics ke properti Analytics tertaut |
firebaseanalytics.resources.googleAnalyticsAdditionalAccess | Secara default, berikan peran Analytics Marketer ke properti Analytics tertaut |
firebaseanalytics.resources.googleAnalyticsReadAndAnalyze | Secara default, berikan peran Penampil Analytics ke properti Analytics tertaut |
firebaseanalytics.resources.googleAnalyticsRestrictedAccess | Secara default, berikan peran Penampil Analytics ke properti Analytics tertaut tanpa akses ke data pendapatan dan data biaya |
Izin Pemeriksaan Aplikasi Firebase
Nama izin | Keterangan |
---|---|
firebaseappcheck.appAttestConfig.get | Mengambil konfigurasi Pengesahan Aplikasi dari suatu aplikasi |
firebaseappcheck.appAttestConfig.update | Perbarui konfigurasi App Attest suatu aplikasi |
firebaseappcheck.debugTokens.get | Ambil token debug dari aplikasi |
firebaseappcheck.debugTokens.update | Buat, perbarui, atau hapus token debug aplikasi |
firebaseappcheck.deviceCheckConfig.get | Ambil konfigurasi DeviceCheck dari suatu aplikasi |
firebaseappcheck.deviceCheckConfig.update | Perbarui konfigurasi DeviceCheck dari suatu aplikasi |
firebaseappcheck.playIntegrityConfig.get | Mengambil konfigurasi Play Integrity dari aplikasi |
firebaseappcheck.playIntegrityConfig.update | Perbarui konfigurasi Integritas Play aplikasi |
firebaseappcheck.recaptchaEnterpriseConfig.get | Ambil konfigurasi reCAPTCHA Enterprise dari aplikasi |
firebaseappcheck.recaptchaEnterpriseConfig.update | Perbarui konfigurasi reCAPTCHA Enterprise dari sebuah aplikasi |
firebaseappcheck.recaptchaV3Config.get | Ambil konfigurasi reCAPTCHA v3 dari suatu aplikasi |
firebaseappcheck.recaptchaV3Config.update | Perbarui konfigurasi reCAPTCHA v3 aplikasi |
firebaseappcheck.safetyNetConfig.get | Ambil konfigurasi SafetyNet aplikasi |
firebaseappcheck.safetyNetConfig.update | Perbarui konfigurasi SafetyNet aplikasi |
firebaseappcheck.services.get | Mengambil konfigurasi penegakan layanan dari sebuah proyek |
firebaseappcheck.services.update | Perbarui konfigurasi penegakan layanan proyek |
Izin Distribusi Aplikasi Firebase
Nama izin | Keterangan |
---|---|
firebaseappdistro.releases.list | Ambil daftar distribusi yang ada dan Tautan Undangan |
firebaseappdistro.releases.update | Membuat, menghapus, dan memodifikasi distribusi Buat dan hapus Tautan Undangan |
firebaseappdistro.testers.list | Ambil daftar penguji yang ada dalam sebuah proyek |
firebaseappdistro.testers.update | Membuat dan menghapus penguji dalam proyek |
firebaseappdistro.groups.list | Mengambil daftar grup penguji yang ada dalam sebuah project |
firebaseappdistro.groups.update | Membuat dan menghapus grup penguji dalam sebuah project |
Izin Firebase Authentication
Nama izin | Keterangan |
---|---|
firebaseauth.configs.create | Buat konfigurasi Otentikasi |
firebaseauth.configs.get | Ambil konfigurasi Otentikasi |
firebaseauth.configs.getHashConfig | Dapatkan konfigurasi hash kata sandi dan hash kata sandi akun pengguna |
firebaseauth.configs.getSecret | Dapatkan rahasia klien di konfigurasi Otentikasi |
firebaseauth.configs.update | Perbarui konfigurasi Otentikasi yang ada |
firebaseauth.users.create | Buat pengguna baru di Otentikasi |
firebaseauth.users.createSession | Buat cookie sesi untuk pengguna yang masuk |
firebaseauth.users.delete | Hapus pengguna yang ada di Otentikasi |
firebaseauth.users.get | Ambil daftar pengguna Otentikasi yang ada |
firebaseauth.users.sendEmail | Kirim email ke pengguna |
firebaseauth.users.update | Perbarui pengguna yang ada di Otentikasi |
Izin Pengujian A/B Firebase (beta)
Nama izin | Keterangan |
---|---|
firebaseabt.experimentresults.get | Mencatat hasil percobaan |
firebaseabt.experiments.create | Buat eksperimen baru |
firebaseabt.experiments.delete | Hapus eksperimen yang ada |
firebaseabt.experiments.get | Mengambil detail eksperimen yang ada |
firebaseabt.experiments.list | Ambil daftar eksperimen yang ada |
firebaseabt.experiments.update | Perbarui eksperimen yang ada |
firebaseabt.projectmetadata.get | Ambil metadata analitik untuk menyiapkan eksperimen |
Izin Cloud Firestore
Untuk daftar dan deskripsi izin Cloud Firestore, lihat dokumentasi Google Cloud .
Izin Cloud Storage
Untuk daftar dan deskripsi izin Cloud Storage, lihat dokumentasi Google Cloud .
Izin Aturan Keamanan Firebase (Cloud Firestore dan Cloud Storage).
Nama izin | Keterangan |
---|---|
firebaserules.releases.create | Buat rilis |
firebaserules.releases.delete | Hapus rilis |
firebaserules.releases.get | Ambil rilis |
firebaserules.releases.getExecutable | Ambil muatan biner yang dapat dieksekusi untuk rilis |
firebaserules.releases.list | Ambil daftar rilis |
firebaserules.releases.update | Perbarui referensi kumpulan aturan untuk rilis |
firebaserules.ruleset.create | Buat kumpulan aturan baru |
firebaserules.ruleset.delete | Hapus kumpulan aturan yang ada |
firebaserules.ruleset.get | Ambil kumpulan aturan dengan sumber |
firebaserules.ruleset.list | Temukan metadata kumpulan aturan (tanpa sumber) |
firebaserules.ruleset.test | Uji sumber untuk kebenaran |
Cloud Functions untuk izin Firebase
Untuk daftar dan deskripsi izin Cloud Functions, lihat dokumentasi IAM .
Ketahuilah bahwa penerapan fungsi memerlukan konfigurasi izin khusus yang tidak termasuk dalam peran standar yang telah ditentukan oleh Firebase . Untuk menerapkan fungsi, gunakan salah satu opsi berikut:
Delegasikan penerapan fungsi kepada Pemilik proyek .
Jika Anda hanya menerapkan fungsi non-HTTP, Editor proyek dapat menerapkan fungsi Anda.
Delegasikan penyebaran fungsi ke anggota proyek yang memiliki dua peran berikut:
- Peran Admin Cloud Functions (
roles/cloudfunctions.admin
) - Peran Pengguna Akun Layanan (
roles/iam.serviceAccountUser
)
Pemilik project dapat menetapkan peran ini ke anggota project menggunakan Google Cloud Console atau gcloud CLI . Untuk langkah detail dan implikasi keamanan untuk konfigurasi peran ini, lihat dokumentasi IAM .
- Peran Admin Cloud Functions (
Izin Firebase Cloud Messaging
Nama izin | Keterangan |
---|---|
cloudmessaging.messages.create | Kirim notifikasi dan pesan data melalui FCM HTTP API dan Admin SDK |
firebasenotifications.messages.create | Buat pesan baru di Notifications composer |
firebasenotifications.messages.delete | Hapus pesan yang ada di Notifications Composer |
firebasenotifications.messages.get | Ambil detail pesan yang ada di Notifications Composer |
firebasenotifications.messages.list | Ambil daftar pesan yang ada di Notifications Composer |
firebasenotifications.messages.update | Perbarui pesan yang ada di Notifications Composer |
Izin Firebase Crashlytics
Nama izin | Keterangan |
---|---|
firebasecrashlytics.config.get | Ambil setelan konfigurasi Crashlytics |
firebasecrashlytics.config.update | Perbarui setelan konfigurasi Crashlytics |
firebasecrashlytics.data.get | Ambil metrik yang terkait dengan masalah dan sesi Crashlytics |
firebasecrashlytics.issues.get | Dapatkan detail tentang masalah Crashlytics, termasuk catatan yang dilampirkan pada masalah |
firebasecrashlytics.issues.list | Ambil daftar masalah Crashlytics |
firebasecrashlytics.issues.update | Buka, tutup, dan matikan masalah Crashlytics yang ada Perbarui catatan yang dilampirkan pada masalah |
firebasecrashlytics.sessions.get | Dapatkan detail tentang sesi error Crashlytics |
Nama izin | Keterangan |
---|---|
firebasecrash.issues.update | Perbarui masalah Crashlytics yang ada, buat catatan tentang masalah, dan setel peringatan kecepatan |
firebasecrash.reports.get | Ambil laporan Crashlytics yang ada |
Izin Firebase Dynamic Links
Nama izin | Keterangan |
---|---|
firebasedynamiclinks.domains.create | Buat domain Dynamic Links baru |
firebasedynamiclinks.domains.delete | Hapus domain Dynamic Links yang ada |
firebasedynamiclinks.domains.get | Ambil detail domain Dynamic Links yang ada |
firebasedynamiclinks.domains.list | Ambil daftar domain Dynamic Links yang ada |
firebasedynamiclinks.domains.update | Perbarui domain Dynamic Links yang ada |
firebasedynamiclinks.links.create | Buat Tautan Dinamis baru |
firebasedynamiclinks.links.get | Ambil detail Tautan Dinamis yang ada |
firebasedynamiclinks.links.list | Ambil daftar Tautan Dinamis yang ada |
firebasedynamiclinks.links.update | Perbarui Tautan Dinamis yang ada |
firebasedynamiclinks.stats.get | Ambil statistik Tautan Dinamis |
firebasedynamiclinks.destinations.list | Ambil tujuan Tautan Dinamis yang ada |
firebasedynamiclinks.destinations.update | Perbarui tujuan Tautan Dinamis yang ada |
Izin Firebase Hosting
Nama izin | Keterangan |
---|---|
firebasehosting.sites.create | Buat resource Hosting baru untuk project Firebase |
firebasehosting.sites.delete | Hapus resource Hosting yang ada untuk project Firebase |
firebasehosting.sites.get | Ambil detail sumber daya Hosting yang ada untuk proyek Firebase |
firebasehosting.sites.list | Ambil daftar sumber daya Hosting untuk proyek Firebase |
firebasehosting.sites.update | Perbarui resource Hosting yang ada untuk project Firebase |
Izin Firebase In-App Messaging (beta)
Nama izin | Keterangan |
---|---|
firebaseinappmessaging.campaigns.create | Buat kampanye baru |
firebaseinappmessaging.campaigns.delete | Hapus kampanye yang ada |
firebaseinappmessaging.campaigns.get | Ambil detail kampanye yang ada |
firebaseinappmessaging.campaigns.list | Ambil daftar kampanye yang ada |
firebaseinappmessaging.campaigns.update | Perbarui kampanye yang ada |
Izin Firebase ML (beta)
Nama izin | Keterangan |
---|---|
firebaseml.compressionjobs.create | Buat tugas kompresi baru |
firebaseml.compressionjobs.delete | Hapus pekerjaan kompresi yang ada |
firebaseml.compressionjobs.get | Ambil detail tugas kompresi yang ada |
firebaseml.compressionjobs.list | Ambil daftar pekerjaan kompresi yang ada |
firebaseml.compressionjobs.start | Mulai pekerjaan kompresi |
firebaseml.compressionjobs.update | Perbarui pekerjaan kompresi yang ada |
firebaseml.models.create | Buat model ML baru |
firebaseml.models.update | Perbarui model ML yang ada |
firebaseml.models.delete | Hapus model ML yang ada |
firebaseml.models.get | Ambil detail model ML yang ada |
firebaseml.models.list | Ambil daftar model ML yang ada |
firebaseml.modelversions.create | Buat versi model baru |
firebaseml.modelversions.get | Ambil detail versi model yang ada |
firebaseml.modelversions.list | Ambil daftar versi model yang ada |
firebaseml.modelversions.update | Perbarui versi model yang ada |
Izin Firebase Performance Monitoring
Nama izin | Keterangan |
---|---|
firebaseperformance.config.create | Buat konfigurasi ambang batas masalah baru |
firebaseperformance.config.delete | Hapus konfigurasi ambang batas masalah yang ada |
firebaseperformance.config.update | Modifikasi peringatan dan konfigurasi ambang batas masalah yang ada |
firebaseperformance.data.get | Lihat semua data kinerja dan nilai ambang batas masalah |
Izin Firebase Realtime Database
Nama izin | Keterangan |
---|---|
firebasedatabase.instances.create | Buat instance database baru |
firebasedatabase.instances.get | Ambil metadata dari instance database yang ada Akses baca saja ke data dalam instans database yang ada |
firebasedatabase.instances.list | Ambil daftar instance database yang ada |
firebasedatabase.instances.update | Akses baca dan tulis penuh ke data dalam instans database yang ada Mengaktifkan dan menonaktifkan instance database Ambil dan ubah aturan keamanan untuk instans database yang ada |
firebasedatabase.instances.disable | Nonaktifkan instance database aktif Data yang ada disimpan tetapi tidak dapat diakses untuk baca/tulis. |
firebasedatabase.instances.reenable | Aktifkan kembali instance database yang dinonaktifkan Data yang ada dapat diakses kembali untuk dibaca/ditulis. |
firebasedatabase.instances.delete | Hapus instance database yang dinonaktifkan Nama database yang dihapus tidak dapat digunakan kembali. Data dalam instans database yang dihapus akan dihapus secara permanen setelah 20 hari. |
firebasedatabase.instances.undelete | Batalkan penghapusan instance database yang dihapus sebelum datanya dihapus secara permanen Data dalam instans database yang dihapus akan dihapus secara permanen 20 hari setelah instans dihapus. |
Izin Firebase Remote Config
Nama izin | Keterangan |
---|---|
cloudconfig.configs.get | Mengambil data Remote Config |
cloudconfig.configs.update | Perbarui data Konfigurasi Jarak Jauh |
Izin Firebase Test Lab
Test Lab memerlukan akses ke bucket Cloud Storage, sehingga memerlukan konfigurasi izin khusus yang tidak semuanya disertakan dalam peran standar yang telah ditentukan oleh Firebase . Untuk memberikan akses ke Test Lab, gunakan salah satu opsi berikut:
Untuk pengujian dimulai dari Firebase console
Uji aplikasi Anda dalam proyek Firebase khusus yang terpisah.
Tambahkan anggota yang membutuhkan akses Test Lab, lalu tetapkan peran proyek lama kepada mereka menggunakan konsol Firebase .
- Untuk mengizinkan anggota menjalankan pengujian dengan Test Lab, tetapkan Project Editor atau yang lebih baru.
- Untuk mengizinkan anggota melihat hasil pengujian di Test Lab, tetapkan Project Viewer atau yang lebih tinggi.
Untuk pengujian yang dimulai dari gcloud CLI atau Testing API saat menggunakan bucket Cloud Storage Anda sendiri
Tetapkan sepasang peran yang telah ditentukan sebelumnya (yang bersama-sama memberikan serangkaian izin yang diperlukan) menggunakan Google Cloud Console .
Untuk mengizinkan anggota menjalankan pengujian dengan Test Lab, tetapkan keduanya:
- Admin Firebase Test Lab (
roles/cloudtestservice.testAdmin
) - Penampil Firebase Analytics (
roles/firebase.analyticsViewer
)
- Admin Firebase Test Lab (
Untuk mengizinkan anggota melihat hasil pengujian di Test Lab, tetapkan keduanya:
- Firebase Test Lab Viewer (
roles/cloudtestservice.testViewer
) - Penampil Firebase Analytics (
roles/firebase.analyticsViewer
)
- Firebase Test Lab Viewer (
Nama izin | Keterangan |
---|---|
cloudtestservice.environmentcatalog.get | Ambil katalog lingkungan pengujian yang didukung untuk sebuah proyek |
cloudtestservice.matrices.create | Permintaan untuk menjalankan matriks pengujian sesuai dengan spesifikasi yang diberikan |
cloudtestservice.matrices.get | Ambil status matriks uji |
cloudtestservice.matrices.update | Perbarui matriks uji yang belum selesai |
cloudtoolresults.executions.list | Ambil daftar Eksekusi untuk Sejarah |
cloudtoolresults.executions.get | Ambil Eksekusi yang ada |
cloudtoolresults.executions.create | Buat Eksekusi baru |
cloudtoolresults.executions.update | Perbarui Eksekusi yang ada |
cloudtoolresults.history.list | Ambil daftar Sejarah |
cloudtoolresults.history.get | Ambil Riwayat yang ada |
cloudtoolresults.history.create | Buat Sejarah baru |
cloudtoolresults.settings.create | Buat pengaturan hasil alat baru |
cloudtoolresults.settings.get | Ambil pengaturan hasil alat yang ada |
cloudtoolresults.settings.update | Perbarui setelan hasil alat |
cloudtoolresults.steps.list | Ambil daftar Langkah-langkah untuk Eksekusi |
cloudtoolresults.steps.get | Ambil Langkah yang ada |
cloudtoolresults.steps.create | Buat Langkah baru |
cloudtoolresults.steps.update | Perbarui Langkah yang ada |
Integrasi dengan izin layanan eksternal
Nama izin | Keterangan |
---|---|
firebaseextensions.configs.create | Buat konfigurasi ekstensi baru untuk layanan eksternal (Konsol Firebase > Setelan Proyek > Integrasi) |
firebaseextensions.configs.delete | Hapus konfigurasi ekstensi yang ada untuk layanan eksternal (Konsol Firebase > Setelan Proyek > Integrasi) |
firebaseextensions.configs.list | Ambil daftar konfigurasi ekstensi untuk layanan eksternal (Konsol Firebase > Setelan Proyek > Integrasi) |
firebaseextensions.configs.update | Perbarui konfigurasi ekstensi yang ada untuk layanan eksternal (Konsol Firebase > Setelan Proyek > Integrasi) |