Firebase JS安全身份验证

时间:2014-02-16 03:21:36

标签: firebase firebase-security

我一直在研究安全令牌和Firebase JS,但我已准备好一些相互矛盾的信息,所以我会直接问我的问题。是否可以使用Javascript处理与Firebase的安全会话?对于练习,我正在创建一个依赖Firebase来同步每个客户端的小型网页游戏,我想知道这样做的安全过程。

1 个答案:

答案 0 :(得分:2)

这取决于您如何定义“安全会话”。这里有两个问题。

  1. 传输级安全性:Firebase JS客户端通过HTTPS与服务器通信。另外,Firebase有一个安全规则系统,可让您指定哪些客户端可以读取和写入哪些数据。

  2. 应用程序级别完整性:但是,客户端可以自由地进行其授权的任何更改,即使它们不是由JS代码触发。例如,在网页中,我可以打开开发人员控制台并使用Firebase API进行不属于网页逻辑的数据更改。

  3. 要解决后者问题,您需要一台可以运行可信代码来强制执行游戏状态的服务器。例如,客户在游戏中所做的每一次移动都应该首先进入“待定”队列。服务器进程应监视所有挂起的更改,验证它们并将它们移动到“最终”游戏状态位置,这将是权威游戏状态。