Firebase规则及其测试方法
我正在努力建立Firebase后端。起初,这非常简单,但随着规则的发展,发现安全漏洞变得越来越困难。实际测试规则的选项是什么?我研究过Targryen,这是一个第三方库,但无法在OSX上安装和运行它。是否有更常见的方法来测试规则?最常用的Firebase安全测试方法是什么?如果您还没有看到,在应用程序的Firebase控制面板中,左侧有许多选项;数据、安全和规则、模拟器;模拟器是你想要的 到达后,您可以作为用户进行身份验证,然后在不同的子节点上测试读写能力Firebase规则及其测试方法,firebase,firebase-security,Firebase,Firebase Security,我正在努力建立Firebase后端。起初,这非常简单,但随着规则的发展,发现安全漏洞变得越来越困难。实际测试规则的选项是什么?我研究过Targryen,这是一个第三方库,但无法在OSX上安装和运行它。是否有更常见的方法来测试规则?最常用的Firebase安全测试方法是什么?如果您还没有看到,在应用程序的Firebase控制面板中,左侧有许多选项;数据、安全和规则、模拟器;模拟器是你想要的 到达后,您可以作为用户进行身份验证,然后在不同的子节点上测试读写能力 我们制作了自己的小应用程序,可以对不同
我们制作了自己的小应用程序,可以对不同的节点进行读/写操作:随着我们的应用程序的发展,规则的复杂性也随之增加,通过应用程序测试20个节点变得更容易,然后在模拟器中一次测试一个节点。我们的测试应用程序大约有100行代码。我刚刚设置了Bolt,它看起来比通过Firebase UI使用标准规则和模拟器要好得多 您确实需要实际使用Bolt语法,但我发现它比标准规则要容易得多,尤其是当它们变得越来越大和复杂时,因为Bolt允许您创建函数来重用用于读/写/验证逻辑的公共代码。这次测试对我来说只是一种奖励
- 螺栓简介:
- 测试说明:
- 说明中说要全局安装
,但是节点可以找到它,除非它是本地安装的,或者您链接到全局安装firebase bolt
- 确保摩卡咖啡的运转。如果将
添加到--ui-tdd
在“test”:“mocha--ui-tdd”
文件的包.json
脚本部分,并将测试保存在
中,则只需运行测试/test.js
即可运行所有测试npm-test
- 制定你可以使用的规则
- 要针对live db测试您的规则,您可以使用REST api,使用调试标志设置为true的令牌(用于创建这些令牌的数据库机密已被弃用,但我认为您不会使用新的Firebase Admin SDK创建此类令牌);响应标头将包含有关规则评估的调试信息
- 要调试规则和生产数据,请使用firebase控制台中的模拟器(注意,它不允许模拟AFAIK的更新操作)