Android config firebase realtime database rule for normal user access

Posted

技术标签:

【中文标题】Android config firebase realtime database rule for normal user access【英文标题】: 【发布时间】:2020-12-04 23:20:33 【问题描述】:

我的应用集成了聊天功能,使用 Firebase 实时数据库存储聊天内容。 最近收到的邮件内容有:

[Firebase] 您的实时数据库 ***** 的规则不安全

我的应用在未集成 Firebase Authen 的情况下使用服务器端身份验证。所以,如果我将读/写规则设置为false,普通用户无法聊天。 如何解决这个问题?谢谢!


  "rules": 
    ".read": false,
    ".write": false
  

【问题讨论】:

【参考方案1】:

公开读写不是一个好主意。对于服务器端,您最好使用 admin sdk。但是从客户端你应该使用某种身份验证。您可以将Authentication 与凭据、匿名身份验证或custom token authentication 一起使用。规则如下:-


 "rules": 
".read": "auth !== null && auth.uid !== null",
".write": "auth !== null && auth.uid !== null"
 

【讨论】:

【参考方案2】:

如果您在访问数据库之前让用户登录,请将规则更改为..

".read" : "auth != null",
".write" : "auth != null"

这将允许经过身份验证的用户访问数据库。

【讨论】:

作为我的问题的描述,我的应用程序仅使用服务器端的身份验证,因此我的应用程序中没有更多的 firebase 身份验证。而且我不能使用那个规则配置

以上是关于Android config firebase realtime database rule for normal user access的主要内容,如果未能解决你的问题,请参考以下文章

如何归功于 Firebase 和 Android 支持库?

使用cordova中的config.xml禁用firebase-crash报告

如何从 Android 读取 Firebase 远程配置模板版本?

如何从 Firebase 检索用户数据 android

Firebase 数据上的 Android Searchview

android firebase通知不起作用