#1 楼
首先,请了解您无法根据来源域来保护Internet上的任何URL,恶意用户只会撒谎。保护原始域仅在防止跨站点欺骗攻击(恶意源假装成您的站点并欺骗您的用户代表他们登录)时有用。好消息是用户从一开始就已经阻止了从未经授权的域进行身份验证。您可以在Forge中设置授权域:
在浏览器中输入Firebase网址(例如https://INSTANCE.firebaseio.com/)
登录
点击“身份验证”标签
将您的域添加到“授权请求来源”列表中。
选择要使用的“提供商”并进行相应的配置
现在可以保护您的数据,您将转到“安全性”标签并添加安全性规则。良好的起点如下:
{
"rules": {
// only authenticated users can read or write to my Firebase
".read": "auth !== null",
".write": "auth !== null"
}
}
安全规则是一个大话题。您将希望通过阅读概述并观看此视频来起步
评论
我想开发一个用户无需登录即可使用的应用程序。但是我担心如果有人浏览我的网站的源代码,并获得公开的firebase URL,然后将其用于自己的读写过程。我已经添加了www.google.com作为授权的URL,但是我可以从其他具有我的应用程序文件的主机的IP写入Firebase。
– Serhat Koroglu
13年8月2日在6:06
如前所述,如果不对某些变体进行身份验证,则不能阻止任何人写入Firebase(或网络上的任何其他内容)。
–加藤
2013年8月2日14:11
我看到这就像是rdbms数据库身份验证。谢谢。
– Serhat Koroglu
13年8月2日在18:17
如果他们实际上是同一个人(即,他们具有用户名和密码),那么从何处进行连接有什么区别?使用验证规则和安全性来防止未经授权的写入,并且不要担心人为/无效的约束(例如来源)。
–加藤
16年2月15日在21:03
是。我很确定那正是我所说的吗?列入白名单是为了防止跨站点欺骗,而不是防止请求来源。
–加藤
16年4月29日在19:00