Memulai Aturan Keamanan Cloud Firestore

Dengan menggunakan Aturan Keamanan Cloud Firestore, Anda dapat fokus membangun pengalaman pengguna yang menyenangkan, tanpa harus mengelola infrastruktur atau menulis autentikasi di sisi server dan kode otorisasi.

Aturan keamanan memberikan kontrol akses dan validasi data dalam format yang sederhana namun ekspresif. Untuk membuat sistem akses berbasis pengguna dan berbasis peran yang mempertahankan keamanan data pengguna, Anda harus menggunakan Firebase Authentication dengan Aturan Keamanan Cloud Firestore.

Menulis aturan

Semua Aturan Keamanan Cloud Firestore berisi pernyataan match, yang mengidentifikasi dokumen di database Anda, dan ekspresi allow, yang mengontrol akses ke dokumen tersebut:

service cloud.firestore {
  match /databases/{database}/documents {
    match /<some_path>/ {
      allow read, write: if <some_condition>;
    }
  }
}

Sebelum membaca atau menulis data, setiap permintaan database dari library klien seluler/web Cloud Firestore dievaluasi terhadap aturan keamanan Anda. Apabila aturan tersebut menolak akses ke salah satu lokasi dokumen yang ditentukan, seluruh permintaan akan gagal.

Berikut adalah beberapa contoh kumpulan aturan dasar. Meskipun valid, aturan ini tidak direkomendasikan untuk aplikasi produksi:

Auth diperlukan

// Allow read/write access on all documents to any user signed in to the application
service cloud.firestore {
  match /databases/{database}/documents {
    match /{document=**} {
      allow read, write: if request.auth.uid != null;
    }
  }
}

Tolak semua

// Deny read/write access to all users under any conditions
service cloud.firestore {
  match /databases/{database}/documents {
    match /{document=**} {
      allow read, write: if false;
    }
  }
}

Izinkan semua

// Allow read/write access to all users under any conditions
// Warning: **NEVER** use this rule set in production; it allows
// anyone to overwrite your entire database.
service cloud.firestore {
  match /databases/{database}/documents {
    match /{document=**} {
      allow read, write: if true;
    }
  }
}

Lokasi {document=**} yang digunakan dalam contoh di atas cocok dengan dokumen mana pun di seluruh database. Lanjutkan ke panduan membuat struktur aturan keamanan untuk mempelajari cara mencocokkan lokasi data tertentu dan menangani data hierarkis.

Menerapkan aturan

Agar dapat menggunakan Cloud Firestore dari aplikasi seluler, Anda harus menerapkan aturan keamanan. Anda dapat menerapkan aturan di Firebase console atau menggunakan Firebase CLI.

Menggunakan Firebase console

Untuk menyiapkan dan menerapkan kumpulan aturan yang pertama, buka tab Aturan di bagian Cloud Firestore pada Firebase console.

Tulis aturan Anda di editor online, lalu klik Publikasikan.

Menggunakan Firebase CLI

Anda juga dapat menerapkan aturan menggunakan Firebase CLI. Dengan CLI, Anda dapat mempertahankan aturan dalam kontrol versi bersama kode aplikasi Anda, serta menerapkan aturan sebagai bagian dari proses penerapan yang sudah ada.

// Set up Firestore in your project directory, creates a .rules file
firebase init firestore

// Edit the generated .rules file to your desired security rules
// ...

// Deploy your .rules file
firebase deploy --only firestore:rules

Langkah berikutnya

Kirim masukan tentang...

Butuh bantuan? Kunjungi halaman dukungan kami.