Files
gemeindetrommler/storage.rules
T
2026-09-14 20:59:40 +02:00

25 lines
975 B
Plaintext

rules_version = '2';
service firebase.storage {
match /b/{bucket}/o {
// Fotos von News, Mängeln und Ideen
match /{collection}/{userId}/{fileName} {
// Jeder darf Bilder in der App laden/ansehen
allow read: if true;
// Nur angemeldete Nutzer dürfen Fotos hochladen (max. 10 MB, nur Bilder)
allow create, update: if request.auth != null
&& request.resource.size < 10 * 1024 * 1024
&& request.resource.contentType.matches('image/.*');
// Löschen streng gesichert: Nur der eigene Verfasser ODER ein Admin aus der Admins-Sammlung
allow delete: if request.auth != null && (
request.auth.uid == userId ||
request.auth.token.admin == true ||
firestore.exists(/databases/(default)/documents/Admins/$(request.auth.uid)) ||
(request.auth.token.email != null && firestore.exists(/databases/(default)/documents/Admins/$(request.auth.token.email)))
);
}
}
}