cue*_*ess 0 firebase firebase-security google-cloud-firestore
我有一个 firebase firestore 文档,其中将管理员 ID 存储在管理员数组中。如果请求用户 ID 位于该管理员列表中,如何创建允许读取和写入的安全规则。
我想知道3个案例:
如果我有这条规则,我如何还允许管理员写入和读取:
match /users/{uid}{
allow read,write: if request.auth != null;
}
Run Code Online (Sandbox Code Playgroud)
我可以在 securityrules 中创建一个函数,例如isAdmin() ,我可以在每个规则中使用它来接受管理员吗?
是否可以制定一个(或两个)规则来允许管理员读取和写入数据库中的所有内容,而不是为每个集合编写规则?
小智 5
我相信这三个问题的答案都是肯定的:
||运营商我非常推荐这两个视频:
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
function isAdmin() {
let admins = get(/databases/$(database)/documents/roles/admins);
return request.auth.uid in admins.data.users;
}
match /{document=**} {
allow read, write: if isAdmin();
}
match /users/{userId} {
allow read, write: if isAdmin() || request.auth != null && request.auth.uid == userId;
allow create: if request.auth != null;
}
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
48 次 |
| 最近记录: |