Memulai Aturan Keamanan Firebase

Firebase Security Rules menyediakan perlindungan tangguh yang dapat disesuaikan sepenuhnya untuk data Anda di Cloud Firestore, Realtime Database, dan Cloud Storage. Anda dapat secara mudah memulai Rules dengan mengikuti langkah-langkah dalam panduan ini, guna mengamankan data dan melindungi aplikasi dari pengguna yang berniat jahat.

Pahami bahasa Firebase Security Rules

Sebelum mulai menulis aturan, sebaiknya luangkan waktu untuk meninjau bahasa Firebase Security Rules tertentu untuk produk Firebase yang Anda gunakan. Realtime Database memanfaatkan sintaksis mirip JavaScript dan struktur JSON untuk Rules-nya. Atau, Cloud Firestore dan Cloud Storage memanfaatkan superset dari Common Expression Language (CEL) yang bergantung pada pernyataan match dan allow yang menetapkan kondisi untuk akses di jalur yang ditentukan.

Pelajari bahasa Firebase Security Rules lebih lanjut.

Siapkan Authentication

Jika Anda belum melakukannya, identifikasi pengguna Anda dengan Firebase Authentication. Firebase Authentication mendukung banyak metode autentikasi umum dan terintegrasi dengan Firebase Security Rules untuk memberikan kemampuan verifikasi yang komprehensif.

Anda dapat menyiapkan informasi autentikasi tambahan khusus untuk aplikasi Anda.

Pelajari lebih lanjut tentang Firebase Security Rules dan Firebase Authentication.

Menentukan struktur data dan aturan

Cara Anda menyusun data dapat memengaruhi cara penyusunan dan penerapan aturan. Saat Anda menentukan struktur data, pertimbangkan implikasinya pada struktur Rules Anda.

Misalnya, di Cloud Firestore, Anda mungkin ingin menyertakan kolom yang menunjukkan peran spesifik untuk setiap pengguna. Kemudian, aturan Anda dapat membaca kolom tersebut dan menggunakannya untuk memberikan akses berbasis peran.

Saat Anda menentukan arsitektur data dan aturan Anda, ingatlah bahwa, jika ada aturan yang memberikan akses ke set data, Firebase Security Rules akan memberikan akses ke set data tersebut. Dengan kata lain, Anda tidak dapat memperbaiki akses di subjalur jika Anda memberi akses pada level yang lebih tinggi pada hierarki data Anda.

Mengakses aturan Anda

Untuk melihat Rules yang sudah ada, gunakan Firebase CLI atau Firebase console. Pastikan Anda mengedit aturan menggunakan metode yang sama secara konsisten, agar tidak ada pembaruan yang tumpang tindih secara tidak sengaja. Jika tidak yakin bahwa aturan yang Anda tentukan secara lokal mencerminkan pembaruan terkini, Firebase console selalu menunjukkan versi Firebase Security Rules yang paling baru di-deploy.

Untuk mengakses aturan Anda dari Firebase console, pilih project, lalu buka Realtime Database, Cloud Firestore, atau Storage. Klik Aturan setelah Anda berada di database atau bucket penyimpanan yang tepat.

Untuk mengakses aturan dari Firebase CLI, buka file aturan yang tercantum pada file firebase.json Anda.

Menulis aturan dasar

Saat Anda mengembangkan aplikasi dan memahami Rules, coba terapkan beberapa Aturan Keamanan dasar, termasuk kasus penggunaan berikut:

  • Hanya pemilik konten: Membatasi akses ke konten berdasarkan pengguna.
  • Akses campuran: Membatasi akses tulis berdasarkan pengguna, tetapi mengizinkan akses baca publik.
  • Akses berbasis atribut: Membatasi akses ke grup atau tipe pengguna.

Menguji aturan

Untuk memvalidasi perilaku aplikasi sepenuhnya dan memverifikasi konfigurasi Firebase Security Rules
Anda, gunakan Firebase Emulator untuk menjalankan dan mengotomatiskan pengujian unit di lingkungan lokal.

Jika Anda menyiapkan Firebase Security Rules di Firebase console, Anda dapat menggunakan Firebase Rules Simulator untuk memvalidasi perilaku dengan cepat. Namun, kami menyarankan pengujian yang lebih menyeluruh dengan Firebase Emulator sebelum Anda menerapkan perubahan pada produksi.

Men-deploy aturan

Gunakan Firebase console atau Firebase CLI untuk men-deploy aturan ke tahap produksi. Ikuti langkah-langkah yang diuraikan dalam Mengelola dan men-deploy Firebase Security Rules.