AuthUI.getInstance()
如果用户必须注册,我的 Android Java 应用程序首先创建一个 Firebase 帐户(带密码的电子邮件) 。创建帐户后,会出现一个对话框,通知用户他收到了一封验证电子邮件,他必须单击电子邮件中的验证链接。用户完成此操作后,他就可以关闭对话框并继续在 Firestore 中配置他的帐户。
但是对受安全规则保护的 Firestore 文档的所有请求,例如
allow read: if request.auth.uid != null && request.auth.token.email != null && request.auth.token.email_verified == true;
失败
com.google.firebase.firestore.FirebaseFirestoreException:PERMISSION_DENIED:权限缺失或不足
如果用户关闭应用程序,重新启动它并重新验证,那么它的工作(Firestore 请求的权限没有问题)。
我做了几次测试。如果我将安全规则更改为
allow read: if request.auth.uid != null && request.auth.token.email != null;
一切正常,但从我的角度来看它不太安全,因为不保证电子邮件已验证。Firestore 似乎仍然不知道该帐户已通过验证。
烙印99
相关分类