2017-02-20 2 views
0

Pour pouvoir travailler rapidement avec le stockage Firebase, j'ai dû ajouter les autorisations suivantes sur chaque image et le compartiment de stockage: Entité: Utilisateur, Nom: Tous les utilisateurs, Accès: Lecteur. Existe-t-il un moyen d'éviter cette méthode fastidieuse et impossible à mettre à l'échelle, puisque tous les médias importés par l'utilisateur?Seau de stockage Firebase et intégration Fastly CDN

Mon firebase sécurité de stockage se présente comme suit:

service firebase.storage { 
    match /b/myapp.appspot.com/o { 
match /proUsers/{userId}/{allPaths=**} { 
     allow read, write: if request.auth.uid == userId || request.resource.size < 2 * 1024 * 1024 || request.resource.contentType.matches('image/png') || request.resource.contentType.matches('image/jpeg'); 
    } 
    } 
} 

l'erreur que je reçois sur est fastly que: Anonymous users does not have storage.objects.list access to bucket et si je tente d'accéder à l'image directement je reçois l'erreur: Anonymous users does not have storage.objects.get access to object

Où faire Je permets aux utilisateurs anonymes d'avoir des capacités de lecture? J'ai supposé que le réglage autoriserait lire a fait exactement ceci.

Répondre

0

Pour permettre aux utilisateurs anonymes à lire à partir de votre base de données (mais pas écrire), vous pouvez modifier vos règles à ceci:

service firebase.storage { 
    match /b/myapp.appspot.com/o { 
match /proUsers/{userId}/{allPaths=**} { 
     allow write: if request.auth.uid == userId || request.resource.size < 2 * 1024 * 1024 || request.resource.contentType.matches('image/png') || request.resource.contentType.matches('image/jpeg'); 
     allow read; 
    } 
    } 
}