Example Rules
Aturan keamanan Firestore ditulis dalam format aturan Firebase Security Rules yang mendefinisikan tingkat akses untuk koleksi dan dokumen dalam database Firestore.
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
// Hanya pengguna yang terotentikasi yang dapat menulis profil mereka sendiri
match /users/{userId} {
allow read, update, delete: if request.auth != null && request.auth.uid == userId;
allow create: if request.auth != null;
}
// Hanya pengguna yang terotentikasi yang dapat membaca dokumen yang berisi informasi rahasia
match /sensitiveData/{document} {
allow read: if request.auth != null;
allow write: if false; // Tidak ada yang diizinkan untuk menulis
}
// Admin dapat membaca dan menulis semua dokumen
match /adminOnly/{document} {
allow read, write: if request.auth != null && request.auth.token.admin == true;
}
}
// Aturan untuk dokumen di subkoleksi tertentu
match /users/{userId}/posts/{postId} {
allow read, write: if request.auth != null && resource.data.authorId == request.auth.uid;
// Hanya pengguna yang membuat dokumen yang dapat menghapus atau memperbarui
allow update, delete: if request.auth != null && resource.data.authorId == request.auth.uid;
}
// Aturan untuk koleksi dan subkoleksi
match /organizations/{orgId} {
allow read: if request.auth != null && 'read' in request.auth.token.permissions;
allow write: if request.auth != null && 'write' in request.auth.token.permissions;
match /projects/{projectId} {
// Hanya pengguna yang memiliki akses khusus yang dapat menulis
allow write: if request.auth != null && 'admin' in request.auth.token.roles;
}
}
}Last updated