javascript - Firebase 安全 : Permission Denied Until Page Refresh

标签 javascript security firebase angularfire

我有一个单页面应用程序,当我点击报告页面时,Firebase 显示permission_denied:客户端无权访问所需数据。但是,如果我刷新页面,Firebase 就会授予我访问权限。

这是我的安全规则

{
"rules": {
    "signup": {
      ".read": false,

      "$id": {
        // you can add new data but not change old data
        ".write": "!data.exists()"
      }
    },
    "users": {
      ".read": false,

      "$uid" : {
        // you can add new data but not change old data
        ".write": "!data.exists()",
        ".read": "auth.uid == $uid"
      }
    },
    "reports": {
      "$reportId": {
        ".read": "root.child('users').child(auth.uid).child('reportsToView').hasChild($reportId)",
        ".write": "root.child('users').child(auth.uid).child('reportsToEdit').hasChild($reportId)"
      }
    }
}

}

最佳答案

我有两个 Firebase 引用 new Firebase("https://domain.firebaseio.com/")。一个已通过身份验证,另一个未经过身份验证。我只需传递我的单个 firebase 引用就可以解决问题。

关于javascript - Firebase 安全 : Permission Denied Until Page Refresh,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30586816/

相关文章:

JavaScript 重新加载功能无法正常工作

php - 如何防止 PHP 中的 SQL 注入(inject)?

android - Ionic 3 上的 OneSignal 推送通知 : All included players are not subscribed

Firebase 推送 ID : What characters can be inside?

javascript - 两个人在同一张 Canvas 上作画

javascript - 如何检索所有数组中至少出现一次的所有对象?

PHP源码加密——效果与缺点

linux - Elasticsearch 用户运行的未知进程

android - Firebase 查询从几个 child 那里检索数据并做数学运算

javascript - javascript setTimeout 执行时间需要多倍的时间可能是什么原因?