可以将调试日志记录添加到Firestore规则功能吗?

时间:2018-11-01 00:13:24

标签: firebase google-cloud-firestore firebase-security-rules

鉴于firestore规则结构允许使用功能,是否有某种方法可以将调试日志添加到这些 rule-functions ? ..为了验证您期望的功能,实际上是在调用它。

我看到,在模拟器中,它在规则结构的一行显示一个红色的X,对于给定的模拟请求,访问被拒绝。但是,对于在生产模式下进行验证感到好奇,因此可以将其传达给与规则完整性有关的各方。

在下面的示例中,我认为它可以通过注释掉的行来实现:

console.log('ENTER: isAccessOn()');

但是,这不起作用。如果在平台中是否有类似这样的选项,请在这里问..否则,是否有关于如何通过生产部署进行验证的建议。谢谢

service cloud.firestore {
  match /databases/{database}/documents {

    // block client access
    function isAccessOn() {
      // console.log('ENTER: isAccessOn()');
      return false;
    }

    match /{document=**} {
      allow read, write: if isAccessOn();
    }

  }
}

2 个答案:

答案 0 :(得分:3)

无法在安全规则中记录任何内容。如果要验证规则是否按预期工作,则应为这些规则编写一些集成测试,然后运行测试以确保根据您的规范拒绝或允许访问。

具体来说,您可能要研究local rules emulation using the Firebase CLI,它是CLI的全新功能。

答案 1 :(得分:2)

Firestore规则现在有一个 debug() function

它仍然不是很好,但是比以前更好。

相关问题