让公众访问第二个Firebase项目是否更安全?

让公众访问第二个Firebase项目是否更安全?,firebase,firebase-realtime-database,firebase-security,Firebase,Firebase Realtime Database,Firebase Security,我有一个用颤振和一个Firebase RTDB项目开发的Agro应用程序。从这个数据库中,我想让公众可以通过网络访问,这样任何人都可以看到(而不是写)有关所生产食品原产地的某些信息 然后,我想实施以下选项之一: 使用同一数据库:使用公共安全规则在我的数据库中实现一个新位置 这样做安全吗? 我数据库的其余部分是否有风险 或 创建具有公共访问权限的新Firebase项目 是否可以在同一个应用程序中写入两个Firebase项目? 它易于实现和维护吗 P>你认为更安全和更清楚的选项是什么? < P>这

我有一个用颤振和一个Firebase RTDB项目开发的Agro应用程序。从这个数据库中,我想让公众可以通过网络访问,这样任何人都可以看到(而不是写)有关所生产食品原产地的某些信息

然后,我想实施以下选项之一:

  • 使用同一数据库:使用公共安全规则在我的数据库中实现一个新位置
  • 这样做安全吗? 我数据库的其余部分是否有风险

  • 创建具有公共访问权限的新Firebase项目
  • 是否可以在同一个应用程序中写入两个Firebase项目? 它易于实现和维护吗


    <> P>你认为更安全和更清楚的选项是什么?

    < P>这将是通用的,但是我会犹豫为你提供整个数据库的读访问权。您可以将读取权限限制为特定路径。参见文档中的示例


    如果您仍然担心可能的丢失,请利用firebase的自动备份,以便始终拥有数据库的新副本。

    如果您询问是否可以从一个应用程序访问两个firebase数据库,答案是肯定的。我不知道你的整个编码平台,但请检查。您可以使用规则来允许/拒绝访问数据库的任何部分,并且它与您制定的规则一样安全,因此第1部分是肯定的。谢谢。你认为什么样的选项(1或2)更安全、更清晰?很难说不了解整个用例,这将超出SO的范围。但是,如果只需要允许用户查看节点中的数据,而不能写入该节点,那么安全规则首先就是为了这个目的;保护您的数据,所以我可能会这么做。谢谢。你认为什么样的选择(1或2)更安全更清晰?为什么?
    {
      "rules": {
        "newlocation": {
          ".read": true,
          ".write": false
        }
      }
    }
    
    {
      "rules": {
        "foo": {
          ".read": true,
          ".write": false
        }
      }
    }