我想设置一个公共表单,通过Angular Firebase插件AngularFire写入Firebase,但感觉需要添加一些安全性,以便只从该表单发布数据,我看不到任何与Whitelist的接口域/ URL。有没有办法只接受来自特定表单/ URL的写入而不让用户先登录?
答案 0 :(得分:2)
不。
但无论如何,它对你的场景没有帮助:当你使用Angular时,所有代码都在用户的浏览器中运行。它可能首先从您的域提供到该浏览器中,但用户可能很容易在本地保存HTML并开始以这种方式运行。
听起来您正在尝试保护内容,以便只有您的代码才能修改它们,可能是因为您认为您的代码是唯一可以信任的代码来跟踪您的某些应用程序 - 特定的业务规则。我宁愿建议捕获服务器端的业务规则,而不是试图限制对代码的访问。 Firebase具有非常强大的安全性和数据验证模型,仅用于此目的。见https://www.firebase.com/docs/security/guide/
在服务器上实施这些业务规则后,访问数据的方式无关紧要。他们可能正在使用您的代码 - 或者有人可能已经使用您的代码(或您已记录的API)并编写了第三方应用程序。无论哪种方式:Firebase都会强制执行(安全和验证)规则,因此您的数据将保持有效和安全。