5 firebase-security firebase-authentication google-identity google-cloud-firestore
我正在使用 Firebase 构建一个无服务器应用程序:Firestore 和云功能。我一直在努力解决的一件事是如何验证用户是否启用了 2FA 以允许访问某些功能。已注册 Google Identity Platform 以允许 2FA,但遗憾的是,我无法找到强制执行 2FA 的选项。
我的安全规则要求是:登录、验证电子邮件、使用 2FA 进行身份验证。
Cloud Firestore 中当前的安全规则:
request.auth != null && request.auth.token.email_verified
Run Code Online (Sandbox Code Playgroud)
据我搜索request.auth.token.phone_number可以检查,但这只检查用户是否注册了电话号码,而不检查他们是否有2FA登录?
小智 5
在向谷歌小组寻求支持后,我找到了这个问题的答案:
if request.auth.token.firebase.get('sign_in_second_factor', null) == 'phone'
&& 'second_factor_identifier' in request.auth.token.firebase;
Run Code Online (Sandbox Code Playgroud)
如果用户拥有手机作为 2FA,则将允许访问。
您可以在谷歌群组上查看 Sam 的原文:https://groups.google.com/g/firebase-talk/c/7EZfxETa_jk/m/4e0FRCpWAgAJ
| 归档时间: |
|
| 查看次数: |
1317 次 |
| 最近记录: |