【问题标题】:is there a way to find in what line that the access is denied in firestore security rules?有没有办法在 Firestore 安全规则中找到拒绝访问的行?
【发布时间】:2020-01-30 04:16:52
【问题描述】:

只有当我未能通过安全规则时,我才会在我的 iOS 应用上收到此消息

PERMISSION_DENIED:权限缺失或不足。

我在 firebase 控制台 firestore 规则中编写了 320 行代码。每当我收到该错误消息时,就很难跟踪我未能通过哪些规则。有没有办法找出在 Firestore 安全规则中访问被拒绝的那一行?我在文档中找不到它

【问题讨论】:

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


    【解决方案1】:

    无法获取有关客户端代码中哪些规则失败的更多信息。这实际上是设计使然,因为它会给潜在的攻击者提供大量额外信息。

    查看哪条线路失败的最快方法是在 Firebase 控制台的规则模拟器中重现该场景,这准确显示哪条线路出现故障。

    【讨论】:

      【解决方案2】:

      为了补充 Frank 所说的内容,您可以使用在本地计算机上运行的 security rules emulator 以及实现测试套件的代码来获取有关安全规则执行的更多详细信息。这是调试安全规则的最佳方式,因为您将获得描述哪个规则拒绝访问的综合输出。

      我强烈建议在部署规则之前使用此工具在本地进行测试,这样可以减少您犯错误而影响产品的机会。

      【讨论】:

        猜你喜欢
        • 2023-03-28
        • 1970-01-01
        • 2020-03-22
        • 2019-06-16
        • 2021-02-13
        • 1970-01-01
        • 2020-11-28
        • 1970-01-01
        • 2021-08-22
        相关资源
        最近更新 更多