我目前正在设置一个对话流机器人(用于常见问题解答和联系人),并且正在使用谷歌云功能(nodejs)在firebase firestore中完成履行/数据存储。
显然,我希望有安全规则,将对数据库的访问限制为仅对话流。谁能指出我将如何去做这件事的正确方向?
我发现的例子都是关于存储在数据库中的东西的检查,这在我的情况下不起作用..?
最佳答案
仅当您有移动客户端(Android、iOS、Web)直接访问 Firestore、云存储或实时数据库中的某些数据时,安全规则才相关。它也适用于来自 REST API 的未经身份验证的访问。来自后端的任何其他访问,包括您可能为对话流实现 Hook 编写的代码,都不受安全规则的约束。也就是说,通过 admin SDK 从后端访问这些资源完全忽略了安全规则。
如果您只打算从后端访问这些产品,只需让您的安全规则禁止来自移动客户端的公共(public)访问。
关于云功能的 Firebase Firestore 安全规则,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53727411/