有没有一种方法来验证用户在Firebase存储规则中的角色? [英] is there a way to authenticate user role in firebase storage rules?

查看:109
本文介绍了有没有一种方法来验证用户在Firebase存储规则中的角色?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

 数据库:
用户
< UID>
admin = false
... ... ...

I我试图在firebase存储中使用以下类型的规则:

  root.child('users')。child(auth。 uid).child('user')。child('admin').val()== true 



<



谢谢。

解决方案正如Frank van Puffelen在他的评论中指出的那样:

$ p $ function isAdminUser(){
返回{
yaddayadddayaddUserIDKey中的request.auth.uid:User Name1
};
}

服务firebase.storage {
match /b/<appName>.appspot.com/o {
match / {allPaths = **} {
允许阅读;
允许写入:if request.auth!= null&& isAdminUser();
}
}
}


I am trying to restrict firebase storage based on user role.

Database:
    users
        <uid>
            admin=false
            ... ... ...

I am trying to use the following kind of rule in firebase storage:

root.child('users').child(auth.uid).child('user').child('admin').val() == true

I am getting access denied after adding this to the write rule.

Thanks.

解决方案

As Frank van Puffelen pointed out in his comment:

function isAdminUser() {
    return request.auth.uid in {
        "yaddayadddayaddUserIDKey":"User Name1"
    };
}

service firebase.storage {
    match /b/<appName>.appspot.com/o {
        match /{allPaths=**} {
            allow read;
            allow write: if request.auth != null && isAdminUser();
        }
   }
}

这篇关于有没有一种方法来验证用户在Firebase存储规则中的角色?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆