我是一名学生开发人员,在我的 Angular 应用程序中试用了新的 Firestore,但遇到了安全规则。
我想要实现的目标:
使用模板绑定在角度视图中显示 Firestore 文档。未经身份验证的用户应该可以查看该文档。
问题:
如果未经身份验证的用户尝试查看该页面,则会发生权限错误:
ERROR 错误:权限缺失或不足。在新的 FirestoreError (error.js:164)
模板文件:
<p>{{ (item | async)?.name }}</p>
component.ts 文件:
interface Profile {
name: string;
}
...
private itemDoc: AngularFirestoreDocument<Profile>;
item: Observable<Profile>;
...
ngOnInit() {
this.itemDoc = this.afs.doc<Profile>('profiles/0mlC8uWaKeArzk0sfIfX');
this.item = this.itemDoc.valueChanges();
}
火场规则:
service cloud.firestore {
match /databases/{database}/documents {
match /{document=**} {
allow read, write: if request.auth != null;
}
}
}