我的情况如下:
我在Firebase上有一个数据库。我有一个应用程序,它在域上。所以现在我已经像这样配置了Google控制台:
但是,我还有第二个应用程序,我只想在本地使用,如localhost:3000
或类似使用npm start
。由于应用程序是使用React构建的,因此可以看到整个代码和API密钥。所以我需要域名限制。任何拥有密钥和凭据的人都可以构建他们自己的反应项目,如果像localhost:3000
这样的域名是可信的,那就搞砸了。
更改域名也是不够的,因为攻击者可以遍历端口并测试它们。
有没有办法让我在本地使用应用程序而不会产生安全漏洞?
不幸的是,你的后端没有办法将一个localhost识别为OK,而不是另一个。
另一方面,如果您正确配置了数据库规则,攻击者将无法将恶意数据添加到您的生产表中。如果您正在考虑通过Google API屏幕限制域名,我假设您已经了解了所有关于Firebase RTD rules的信息。