经过身份验证的用户无权访问存储在 Firebase 中的数据
Authenticated user does not have permission to access data stored in Firebase
我有一个经过身份验证的用户,通过使用 FirebaseSimpleLogin
获得身份验证。该用户拥有令牌:
'user':{
email: "myemail@internets.com",
firebaseAuthToken: SOME TOKEN,
"id: "4",
isTemporaryPassword: true,
md5_hash: "aHash123",
provider: "password",
uid: "simplelogin:4"
}
我已经在 firebase 的 'rules and security' 选项卡下授予经过身份验证的用户读取权限,使用:
{
"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;
}
}
}
我有一个经过身份验证的用户,通过使用 FirebaseSimpleLogin
获得身份验证。该用户拥有令牌:
'user':{
email: "myemail@internets.com",
firebaseAuthToken: SOME TOKEN,
"id: "4",
isTemporaryPassword: true,
md5_hash: "aHash123",
provider: "password",
uid: "simplelogin:4"
}
我已经在 firebase 的 'rules and security' 选项卡下授予经过身份验证的用户读取权限,使用:
{
"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;
}
}
}