我正在尝试获取request.auth.uid == userId进行测试,但是我正在获得“模拟读取被拒绝”。
在输入此问题之前,我检查了所有基本问题-
您是否部署了安全规则?
我通过Fireconsole部署了规则(单击“发布”按钮并等待分钟)。
您是否已使用Firebase身份验证登录?
我还没有实现这项工作,我正在尝试通过在控制台中使用模拟器来测试安全规则。
我在下面尝试了基本规则,效果很好。
如果request.auth.uid!= null;
这是我测试的屏幕截图-
答案 0 :(得分:2)
使用安全规则模拟器时,您需要输入要阅读的文档的完整完整路径。您不能使用通配符。目前,您正在尝试在文档路径中使用通配符:“ / users / {userId}”这将行不通。这使规则中的userId变量从字面上变为字符串“ {userId}”。您需要做的是将要测试以读取的文档的实际ID粘贴到表单中。这将是以“ JoF”开头的UID。
顺便说一句:您不需要部署规则即可在模拟器中对其进行测试。您只有在对它们进行测试之后,才能选择部署它们。