【发布时间】:2018-09-27 23:31:42
【问题描述】:
我正在构建一个非常简单的基于 JavaScript 的 Firebase 应用,每当加载我的网页时,它会将键的值加 1。我不想要任何身份验证摩擦,所以想要使用一个开放的数据库,或者一个仅限于匿名身份验证的数据库。所以,举例来说:
$(document).ready(function() {
// after config and initialize...
var fb = firebase.database();
var fbCount = fb.ref("count");
fbCount.transaction(function(current) {
return current + 1;
});
});
在任何一种情况下,据我了解,没有什么可以阻止任何可以访问该页面的人复制我的代码(包括我的初始化配置)并在他们自己的服务器上使用它——通过调整——不仅增加值(上面的fbCount),但是以他们喜欢的任何其他方式更改代码(例如,让他们将值增加 100、1000,或将其完全更改为其他值)。
我的进一步理解是,处理这种潜力的最佳方法是通过安全规则。所以我想弄清楚是否有办法通过安全规则将任何写入限制为仅当前值的增量为 1?
如果没有,我应该研究另一种方法吗?
【问题讨论】:
标签: firebase firebase-realtime-database firebase-security