基于Firebase变量的授权

时间:2016-06-22 05:49:08

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

我一直在为我的某个游戏使用Firebase,虽然它是一个非常有用的服务和工具,但碰巧遇到了一个问题,我在开发过程中没有解决这个问题,导致用户作弊。

正如您所期望的,Firebase在客户端引入了大部分逻辑,我已经实施了客户端授权,从一开始就是一个错误。我遇到的问题如下。请注意,这不是我的结构,只是一个工作的例子。

{
  "user": 
  {
    currently_training: false,
    current_units: 673,
    unit_cap: 1000
  }
}

客户端会接受并告诉用户,“好吧,您只能训练(1000 - 673) = 327个单位。但是,在客户端绕过这个以更改unit_cap,可以说{{1}用户现在可以向数据库发送请求以创建10,000单位,这将导致他的单位超过他的单位上限。

我如何验证查询,例如..

9,327

我非常担心需要创建一个中间件服务器,这就是我开始使用firebase的原因。 (所以我不必担心我自己的服务器的可扩展性)

0 个答案:

没有答案