Google berkomitmen untuk mendorong terwujudnya keadilan ras bagi komunitas Kulit Hitam. Lihat caranya.

Memvalidasi Aturan Keamanan Firebase dengan cepat

Untuk menguji Aturan Keamanan Firebase yang telah diperbarui dengan cepat di Firebase console, gunakan Simulator Aturan.

Simulator Aturan adalah alat yang praktis untuk digunakan saat Anda menjelajahi perilaku baru atau memvalidasi aturan dengan cepat saat Anda menulisnya. Simulator ini akan menampilkan pesan yang mengonfirmasi bahwa akses diizinkan atau ditolak sesuai dengan parameter yang Anda tetapkan untuk simulasi.

Menggunakan Simulator Aturan

  1. Buka Firebase console dan pilih project Anda.
  2. Lalu, dari navigasi produk, lakukan salah satu tindakan berikut:
    • Pilih Realtime Database, Cloud Firestore, atau Storage, sesuai keperluan, lalu klik Aturan untuk membuka editor Aturan.
  3. Setelah mengedit, klik Simulator Aturan dari editor.
  4. Di Simulator Aturan pilih opsi untuk pengujian Anda, termasuk:
    • Pengujian baca atau tulis.
    • Lokasi tertentu dalam database atau bucket penyimpanan, berupa jalur.
    • Jenis autentikasi — pengguna yang tidak diautentikasi, pengguna anonim yang diautentikasi, atau ID pengguna tertentu.
    • Data khusus dokumen yang dirujuk secara khusus oleh aturan Anda (misalnya, jika aturan Anda mengharuskan adanya kolom tertentu sebelum mengizinkan penulisan).
  5. Klik Jalankan dan cari hasil di banner di atas editor.

Contoh skenario Simulator Aturan

Uji perilaku Simulator Aturan dengan skenario sampel dan aturan dasar berikut.

Cloud Firestore

service cloud.firestore {
  match /databases/{database}/documents {
    // Allow only authenticated content owners access
    match /some_collection/{document} {
      allow read, write: if request.auth != null && request.auth.uid == request.resource.data.author_uid
      }
    }
  }

Realtime Database

 // These rules grant access to a node matching the authenticated
 // user's ID from the Firebase auth token
 {
   "rules": {
     "users": {
       "$uid": {
         ".read": "$uid === auth.uid",
         ".write": "$uid === auth.uid"
       }
     }
   }
 }
 

Cloud Storage

// Grants a user access to a node matching their user ID
service firebase.storage {
  match /b/{bucket}/o {
    // Files look like: "user/<UID>/path/to/file.txt"
    match /user/{userId}/{allPaths=**} {
      allow read, write: if request.auth != null && request.auth.uid == userId;
    }
  }
}
  • Di editor Aturan, tambahkan aturan yang diberikan di atas.

  • Pilih dapatkan dari menu drop-down Jenis simulasi dan masukkan jalur yang valid di kolom Lokasi.

  • Aktifkan Autentikasi dan pilih jenis autentikasi dari menu drop-down Penyedia.

  • Masukkan detail ID pengguna dan klik Jalankan.

Hasil simulasi akan muncul di bagian atas editor. Bergantung pada detail ID pengguna yang dimasukkan, Anda akan melihat banner yang mengonfirmasikan bahwa pembacaan berhasil diizinkan atau ditolak.