相关疑难解决方法(0)

如何只允许我的应用程序在没有登录的情况下访问firebase?

我将应用程序的数据存储在Firebase上,这是我在Firebase上的第一个项目,比我想象的要困难得多.我已经阅读了官方文档,它说我们可以使用他们的电子邮件和密码登录用户或使用其他登录选项,如谷歌或Facebook等.但我不希望用户登录我的应用程序但只读取和写入数据如果他们使用我的应用程序的 firebase .现在我正在为我的firebase使用公共规则,但是那些引用我的firebase URL的人都可以读写数据库.我该如何克服这个问题?

提前致谢.

android firebase firebase-authentication firebase-realtime-database

17
推荐指数
2
解决办法
6902
查看次数

如何确保只有我自己的网站(客户端代码)可以与Firebase后端通信?

我已经阅读了Firebase,它看起来很棒我想做什么.我已经阅读了有关身份验证以及如何根据规则确定某些登录用户有权执行不同的操作.好的.

但是,我不确定另一种类型的安全性:我如何确保只有我自己的站点(使用客户端javascript)可以与我的firebase-backend通信?我问,因为afaik没有办法阻止任何人从客户端代码(url指向我的特定firebase后端)查找我的firebase端点并开始使用它,因为上帝知道什么.

在我想要打开匿名用户角色的写入的情况下,这尤其令人担忧.(例如:某些分析可能)

任何有助于清除我的想法的人都非常感激.

javascript security client-side firebase firebase-security

10
推荐指数
1
解决办法
3172
查看次数

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

我正在开发一款可从Firebase数据库中读取的Android应用.App用户不会登录或修改数据库.所有应用用户都将查看相同的数据; 我正在使用Firebase进行实时更新.

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

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

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

{
  "rules": {
     ".read": true,
     ".write": false
  }
}
Run Code Online (Sandbox Code Playgroud)

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

2.编写允许经过身份验证的用户阅读的安全规则,然后将用户名和密码硬编码到应用程序中

{
  "rules": {
    "$user_id":{
       ".read": "auth.uid === $user_id",
       ".write": false
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

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

谷歌搜索已经揭示了这一点,这是写作的具体内容,而就是"不",但已经有几年了.

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

android firebase firebase-security firebase-realtime-database

9
推荐指数
2
解决办法
2433
查看次数

将 Cloud Firestore 限制为特定域

有没有办法限制 Cloud Firestore(用于托管/网络)进行 CRUD 操作,但仅限于一个域,比如说xyz.com

例如,下面的规则在read, update, delete未经授权的情况下锁定,但您仍然可以将write事物锁定到数据库。

service cloud.firestore {
  match /databases/{database}/documents {
    match /coming-soon-email-ids/{document=**} {
      allow write;
      allow read, update, delete: if request.auth.uid == !null;
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

还是我必须在其中集成 Google 的防火墙?

firebase firebase-security google-cloud-firestore

3
推荐指数
1
解决办法
4108
查看次数

限制 Firebase 访问单个 Android 应用程序而无需身份验证

我需要从 firebase 存储访问读/写图像。没有身份验证设施。如何限制仅通过应用程序进行数据管理。

提供公共访问的现有规则是

rules_version = '2';
service firebase.storage {
  match /b/{bucket}/o {
    match /{allPaths=**} {
      allow read, write;
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

android firebase firebase-security firebase-storage

2
推荐指数
1
解决办法
1352
查看次数