权限丢失或不足:Firestore安全规则angularfire2

时间:2018-04-03 11:19:35

标签: firebase-realtime-database google-cloud-firestore angularfire2 firebase-security-rules

我正在尝试实施安全规则来检索与当前用户ID匹配的文档。根据{{​​3}}我应该对where子句的查询有一个限制性规则,这就是我所做的。

我希望安全规则更具限制性,似乎无法弄清楚以下规则不匹配的原因。

"angularfire2": "5.0.0-rc.6,
"firebase" : "4.10.1",
"@firebase/firestore": "0.3.4",

消息:"权限丢失或不足

以下是我的安全规则(工作和非工作评论) 安全规则

match /passwords/{password} {

    function isSignedIn() {
        return request.auth != null;
    }

    function userMatches() {
        return resource.data.user_id == request.auth.id;
    }

    allow write: if isSignedIn();
    allow read: if isSignedIn(); // works
    allow read: if userMatches(); //doesn't work 
}

客户端代码

getPasswords(): Observable<IPasswordItem[]> {
        const whereClause = ref => ref.where('user_id', '==', this.authService.getCurrentUserId());
        return this.afs.collection<IPasswordItem>('passwords', whereClause).valueChanges();
}

0 个答案:

没有答案