【发布时间】:2018-02-19 15:03:19
【问题描述】:
我在这里有一个非常简单的查询(使用 AngularFire 与 firestore 交互):
initializeEventFeed(): void {
this.eventCollection = this.db.collection('Events', ref => ref.orderBy('date'));
this.eventCollection$ = this.eventCollection.valueChanges();
}
当我的规则设置为:
service cloud.firestore {
match /databases/{database}/documents {
match /{document=**} {
allow read, write;
}
}
}
但是如果我把规则再复杂一点,我就会得到权限不足的错误:
service cloud.firestore {
match /databases/{database}/documents {
match /Events/{event} {
allow read, write;
}
}
}
或者更实用的东西(我想要):
service cloud.firestore {
match /databases/{database}/documents {
match /Events/{event} {
allow read: if request.auth.uid != null;
allow write: if request.auth.token.email == "authedWriteUser@gmail.com";
}
}
}
真正奇怪的是,即使只是将它们设置为 true,仍然会出现权限错误:
service cloud.firestore {
match /databases/{database}/documents {
match /Events/{event} {
allow read: if true;
allow write: if true;
}
}
}
【问题讨论】:
标签: javascript google-cloud-firestore angularfire2 firebase-security