加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

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

发布时间:2020-12-12 06:40:06 所属栏目:MsSql教程 来源:网络整理
导读:我正在开发一个从 Firebase database读取的Android应用程序.应用程序用户不会登录或修改数据库.所有应用用户都将查看相同的数据;我正在使用Firebase进行实时更新. 理想情况下,我想限制对数据库的访问,以便只有我的应用程序才能读取数据. 我知道我可以做的一些
我正在开发一个从 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:多个帐户仅用于读取相同的数据

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读