经过身份验证的用户无权访问存储在Firebase中的数据

经过身份验证的用户无权访问存储在Firebase中的数据,firebase,firebase-security,firebasesimplelogin,Firebase,Firebase Security,Firebasesimplelogin,我有一个经过身份验证的用户,通过使用FirebaseSimpleLogin对其进行身份验证。此用户具有令牌: 'user':{ email: "myemail@internets.com", firebaseAuthToken: SOME TOKEN, "id: "4", isTemporaryPassword: true, md5_hash: "aHash123", provider: "password", uid: "simplelo

我有一个经过身份验证的用户,通过使用
FirebaseSimpleLogin
对其进行身份验证。此用户具有令牌:

'user':{
    email: "myemail@internets.com",
    firebaseAuthToken: SOME TOKEN,
    "id: "4",
    isTemporaryPassword: true,
    md5_hash: "aHash123",
    provider: "password",
    uid: "simplelogin:4"
    }
我已在firebase中的“规则和安全性”选项卡下使用以下命令授予经过身份验证的用户读取权限:

{
  "rules": {
    "SOME DATA": {
      ".read": "auth.email == 'myemail@internets.com'", 
      ".write": true
    }
  }
}
但是,在访问数据时,我得到了一个错误:

Error: permission_denied: Client doesn't have permission to access the desired data.

我是否遗漏了一些基本信息,比如为什么我没有阅读权限?

在firebase的安全规则部分,我犯了一个错误

{
  "rules": {
    "SOMEDATA": { //NOTE: removal of space character
      ".read": "auth.email == 'myemail@internets.com'", 
      ".write": true
    }
  }
}

吸取的教训:非常具体的规则,并始终遵循一些惯例。

试试这个,如果它有效的话:

service firebase.storage {
  match /b/<url data>/o {
    match /{allPaths=**} {
      allow read, write: if true;
    }
  }
}
service firebase.storage{
匹配/b//o{
匹配/{allpath=**}{
允许读、写:如果为真;
}
}
}

我是个白痴。这个方法很好。在规则中,“某些数据”实际上是指“某些数据”。检查那些网址吧!