鉴于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();
}
}
}
答案 0 :(得分:3)
无法在安全规则中记录任何内容。如果要验证规则是否按预期工作,则应为这些规则编写一些集成测试,然后运行测试以确保根据您的规范拒绝或允许访问。
具体来说,您可能要研究local rules emulation using the Firebase CLI,它是CLI的全新功能。
答案 1 :(得分:2)
Firestore规则现在有一个 debug() function
它仍然不是很好,但是比以前更好。