Example Rule Firebase | Security Rules Patterns for Cloud Firestore

Soefyan Syah
Soefyan Syah2 Apr 2021
firebaserule

Contoh aturan keamanan Firebase umum yang dapat Anda gunakan pada proyek berbasis Firestore.

Example Rule Firebase | Security Rules Patterns for Cloud Firestore
Photo by Dayne Topkin on Unsplash | Example Rule Firebase

Contoh aturan keamanan Firebase umum yang dapat Anda gunakan pada proyek berbasis Firestore. Aturan Keamanan pada Firebase adalah cara yang aman, fleksibel, dan mudah untuk mengamankan data anda di Cloud Firestore. Anda dapat dengan mudah memberikan akses untuk membaca kepada semua user pada document tertentu atau bahkan membatasi akses user untuk melakukan update pada document tertentu. Berikut beberapa pola umum yang dapat Anda gunakan:

Authenticated user access

Jika Anda menggunakan Firebase Authentication di aplikasi Anda, Anda dapat menggunakan pola ini untuk menentukan akses ke document dengan kondisi hanya user yang sudah login saja.

Example: Allow read access to authenticated users to any document.

service cloud.firestore {
  match /databases/{database}/documents {
    match /{document=**} {
      allow update, delete: if request.auth != null;
    }
  }
}

Di sini kita mengakses properti auth dari objek request. Konteks permintaan berisi data lain seperti status otentikasi pengguna saat ini, metode permintaan, dan jalur antara lain, yang juga dapat Anda gunakan dalam aturan Anda seperti yang akan kita lihat nanti.

Document status access

Pola ini membatasi akses ke dokumen berdasarkan satu atau lebih bidangnya.

service cloud.firestore {
  match /databases/{database}/documents {
    match /articles/{articleId} {
      allow read: if resource.data.published == true;
    }
  }
}

Pola ini sangat bergantung pada properti data dari objek sumber daya. Objek sumber daya pada dasarnya adalah dokumen yang sedang dibaca atau ditulis.

Document ownership

Pola ini hanya memberikan akses kepada pemilik article atau document .

service cloud.firestore {
  match /databases/{database}/documents {
    match /articles/{articleId} {
      allow update, delete: if request.auth.uid == resource.data.authorId
    }
  }
}

demikian contoh rule firebase, semoga berguna terimakasih .

Soefyan Syah

Written by Soefyan Syah

Hey there! I hope you find this post useful. If you have anything to say, questions or feedback, send me a tweet or an email.