限制Firebase数据库访问一个Android应用程序

前端之家收集整理的这篇文章主要介绍了限制Firebase数据库访问一个Android应用程序前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在开发一个从 Firebase database读取的Android应用程序.应用程序用户不会登录修改数据库.所有应用用户都将查看相同的数据;我正在使用Firebase进行实时更新.

理想情况下,我想限制对数据库的访问,以便只有我的应用程序才能读取数据.

我知道我可以做的一些事情:

1.编写允许任何人阅读的安全规则,即

{
  "rules": {
     ".read": true,".write": false
  }
}

骗局:任何人都可以阅读:(

2.编写allow authenticated users to read的安全规则,然后将用户名和密码硬编码到应用程序中

{
  "rules": {
    "$user_id":{
       ".read": "auth.uid === $user_id",".write": false
    }
  }
}

Con:在应用程序中硬编码用户名和密码似乎非常错误.此外,它实际上并没有锁定数据库,因为任何人都可以反编译应用程序,获取google-services.json和硬编码的用户名/密码,并编写自己的应用程序来共享我的包名.

谷歌搜索显示this,这是特定于写作,this,显示“不”,但是几岁.

限制访问数据库的正确方法是什么?我是从错误的方向接近这个吗?

解决方法

3.使用FirebaseAuth和signInAnonymously()方法

参考:https://firebase.google.com/docs/auth/android/anonymous-auth

然后调整安全规则:

{
      "rules": {
        ".read": "auth != null",...
      }
    }

Con:多个帐户仅用于读取相同的数据

猜你在找的MsSQL相关文章