gpt4 book ai didi

Firebase 规则 : How to block anonymous access?

转载 作者:行者123 更新时间:2023-12-02 20:17:38 25 4
gpt4 key购买 nike

阅读 Firebase 规则 Documentation我找不到任何有关如何阻止匿名访问特定集合或文档的信息。

换句话说,我想阻止未登录的用户,也想阻止匿名登录的用户。我只想允许以自己身份登录的用户(通过电子邮件、Facebook、Google、短信等)。

我怎样才能做到这一点?

这是我想出的代码,但不起作用:

    service cloud.firestore {
match /databases/{database}/documents {
}
match /collectionExample/{documentExample} {
allow create: if request.auth.uid != null && request.auth.token.isAnonymous != false;
allow read: if request.auth.uid == resource.data.userId;
}
}
}

最佳答案

我还没有尝试过这个,但我怀疑您可以使用 request.auth.token.firebase.sign_in_provider (请参阅 auth 的文档)。它应该包含用于匿名身份验证的值anonymous。因此,要允许为非匿名登录用户创建文档:

allow create: if request.auth.uid != null && request.auth.token.firebase.sign_in_provider != 'anonymous';

或者,您可以将其更改为仅允许某些提供商,前提是文档中给出了 token firebase.sign_in_provider 的其他可能值。

关于Firebase 规则 : How to block anonymous access?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53419498/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com