繁体   English   中英

如何在不使用firebase身份验证的情况下编写firestore数据库安全规则

[英]How to write firestore database security rule while not use firebase authentication

我想对应用程序使用电话号码和密码验证。 firebase不提供这些类型的身份验证。 因此,通常创建用户集合并实现登录注册流程。

另一件事是我使用电话号码验证进行OTP发送和验证。 因此,用户输入可在真实列表中找到。

我从请求中获取request.resource.data.userUid并检查此userUid是否存在于身份验证列表中。

match /user/{docId} {
allow read, write: if exists(/databases/$(database)/documents/user/$(request.resource.data.userUid))
}

通常从任何表格我们可以像这样检查。 但我没有找到任何方式来访问身份验证列表。

有什么方法可以根据我的要求编写安全规则,或者我需要更改我的身份验证流程?

如果您未使用Firebase身份验证,则无法使用安全规则来控制对特定用户的访问。 没有其他方法可以验证发出请求的个人的身份。 在这种情况下, request.auth将始终为null。

如果您不知道,Firebase Auth确实提供了电话号码验证 您应该与Cloud Firestore一起使用它来有效地实施安全规则。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM