首页 > 解决方案 > Firebase 是否允许“读取:真”规则查看用户电子邮件?

问题描述

我有一个具有以下规则结构的 firebase 实时数据库:

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

它是否允许任何人查看 db 用户的电子邮件,即使他们只使用社交(google、fb)注册?

万一我怎么能避免呢?

我已经设置为:true,因为我创建了动态链接,这些链接在通过路由打开时会向未注册用户显示某些用户的某些数据,并且应该保持这种状态。

编辑: 为了让您更好地理解该过程,我需要设置规则以便用户可以注册,只有登录的用户才能写入数据,但如果他们创建链接(其中一个项目 id 包含在链接)任何人都可以打开该链接并阅读该项目。

这是棘手的部分,同时不应该允许非注册用户阅读用户的电子邮件(firebase 在社交登录时保存的电子邮件地址,我不会以编程方式将电子邮件地址保存在数据库中)。

标签: javascriptfirebasefirebase-realtime-databasefirebase-security

解决方案


推荐阅读