有没有办法只允许来自特定网址的读取和写入规则?

时间:2019-05-01 03:58:40

标签: javascript firebase firebase-realtime-database firebase-security-rules

我想制定一套规则,只接受来自指定URL的读写。

例如,当某些代码尝试访问我的数据库时,只有在域为https://myProject.theHostDomain.com

时,它才允许它访问它

我查找了其他人提出的问题,并且似乎对Google Firebase实时数据库安全规则的主题感到困惑。我只能想到一种保护数据库安全的方法,那就是通过网站的域进行保护。

可能类似于:

{
   "rules": {
      ".read": "$url === https://myProject.theHostDomain.com/",
      ".write": "$url === https://myProject.theHostDomain.com/"
   }
}

我想保护我的数据库,因为我的数据库包含用户名,电子邮件,密码以及我的用户将拥有的其他私人信息。我希望有一个解决方案,而不必着眼于如何保护来自指定url的数据库读写规则。是的,我知道他们可以在inspect元素中使用控制台,但是以后可以解决。

1 个答案:

答案 0 :(得分:0)

不可能限制对源自某个网站或Internet位置的Firebase资源(实时数据库,Cloud Firestore,Cloud Storage)的访问。通常,网络不便于报告安全来源站点验证。有“引荐来源”标头,但很容易被欺骗。

您应该改为使用Firebase身份验证登录用户,然后保护只有该特定用户才能访问的内容。