【发布时间】:2016-10-21 13:34:01
【问题描述】:
我正在尝试使用 firebase 存储,查看授权用户可以从 Web 客户端上传文件,我想知道是什么阻止了用户通过调整 javascript 来更改路径。
考虑以下事项
我想按如下方式组织用户文件。
root : {
users :
uid1 : images {}
: audio {}
-users:
uid2 : images {}
: audio {}
-users:
: uid3 : images {}
: audio {}
}
然后上传一张图片到/userid/images/
var storage = firebase.storage();
var storageRef = storage.ref();
var imagesRef = storageRef.child(uid_g).child('images').child(path);
问题:
是什么阻止了用户将 child('images') 更改为 child('audio') ?
我只是想确保我设置的路径不会在存储上更改。
服务器上的规则我只允许用户读取和写入他们的数据。
// Grants a user access to a node matching their user ID
service firebase.storage {
match /b/<your-firbase-storage-bucket>/o {
// Files look like: "user/<UID>/path/to/file.txt"
match /user/{userId}/{allPaths=**} {
allow read, write: if request.auth.uid == userId;
}
}
}
【问题讨论】:
标签: javascript firebase firebase-authentication firebase-security firebase-storage