Mengelola akses project dengan IAM Firebase

Pengelolaan Akses dan Identitas (IAM) memungkinkan Anda memberikan akses terperinci ke resource Firebase dan Google tertentu serta mencegah akses yang tidak diinginkan ke resource lainnya. Dengan IAM, Anda dapat menerapkan prinsip keamanan dengan hak istimewa terendah, jadi Anda hanya memberikan akses yang diperlukan ke resource Anda.

Untuk penjelasan lengkap tentang IAM, baca dokumentasi IAM Google Cloud.

Ringkasan IAM Firebase

Firebase menawarkan opsi IAM tambahan, khusus untuk project Firebase dan anggota project Anda.

Saat anggota project terautentikasi meminta tindakan di Firebase, IAM membuat keputusan otorisasi terkait apakah anggota project itu memiliki izin untuk menjalankan operasi yang diminta pada resource atau tidak. Izin untuk menjalankan permintaan tersebut bergantung pada peran yang ditetapkan kepada anggota project tersebut. Setiap peran adalah kumpulan izin, dan saat Anda menetapkan peran kepada anggota project, Anda memberi anggota project tersebut semua izin untuk peran itu.

Anggota project

Dengan menggunakan IAM Firebase, Anda menetapkan peran (dan izin yang melekat pada peran tersebut) kepada anggota project Anda. Anggota project dapat berupa salah satu dari jenis berikut:

  • Akun Google
  • Akun layanan
  • Grup Google

Peran

Izin diberikan kepada anggota project Anda melalui peran. Peran adalah kumpulan izin. Saat menetapkan peran kepada anggota project, Anda memberikan anggota project tersebut semua izin yang dimiliki oleh peran tersebut.

IAM Firebase mendukung jenis peran berikut:

  • Peran dasar: Peran Pemilik, Editor, dan Pengakses lihat-saja (sebelumnya disebut peran "dasar").

  • Peran yang telah ditetapkan: Peran khusus Firebase terseleksi yang memberikan kontrol akses yang lebih terperinci daripada peran dasar. Firebase menawarkan:

    • Peran level Firebase: Peran yang memberikan akses baca/tulis penuh atau baca saja ke semua produk Firebase.

    • Peran kategori produk: Peran yang memberikan akses baca/tulis penuh atau baca saja ke grup produk. Peran tersebut disusun menurut Google Analytics dan kategori produk umum.

    • Peran level produk: Peran yang memberikan akses baca/tulis penuh atau baca saja ke produk Firebase tertentu.

  • Peran khusus: Peran yang disesuaikan seluruhnya, yang Anda buat untuk menyesuaikan sekumpulan izin yang memenuhi persyaratan khusus dari organisasi.

Mengelola anggota project dan perannya

Melihat anggota project dan perannya

Anda dapat melihat banyak anggota project Anda beserta perannya di tab Users and permissions pada > Project settings di Firebase console. Perhatikan hal berikut:
  • Firebase console hanya mencantumkan anggota project yang mendapatkan peran dasar (Pemilik, Editor, Viewer) atau Peran Firebase yang telah ditetapkan. Anggota project yang tercantum dalam tab ini adalah satu-satunya anggota project yang memiliki akses ke project Firebase di Firebase console.
  • Firebase console tidak mencantumkan anggota project yang merupakan akun layanan. Lihat anggota project ini di halaman IAM di Google Cloud console.
Atau, Anda dapat melihat semua anggota project Anda dan perannya di halaman IAM Google Cloud console.

Menetapkan peran kepada anggota project

Untuk mengelola peran yang ditetapkan ke setiap anggota project, Anda harus menjadi Pemilik project Firebase (atau diberi peran dengan izin resourcemanager.projects.setIamPolicy).

Berikut adalah tempat untuk menetapkan dan mengelola peran:

Jika Pemilik project Anda tidak dapat lagi melakukan tugas Pemilik (misalnya, orang tersebut keluar dari perusahaan) dan project Anda tidak dikelola melalui organisasi Google Cloud (lihat paragraf berikutnya), Anda dapat menghubungi Dukungan Firebase dan menanyakan cara meminta akses ke project Firebase.

Perlu diperhatikan bahwa jika project Firebase merupakan bagian dari organisasi Google Cloud, project tersebut mungkin tidak memiliki Pemilik. Jika Anda tidak dapat menemukan Pemilik untuk project Firebase Anda, hubungi orang yang mengelola organisasi Google Cloud Anda untuk menetapkan Pemilik bagi project tersebut.