我们将用户权限存储在声明中。
企业客户的索赔如下:
{"roles": ["enterprise"]}
然后,根据Firebase存储的规则,我们尝试在授予客户访问某些文件的权限之前检查其是否为企业用户:
function isEnterprise() {
return (request.auth.token.roles) && ("enterprise" in request.auth.token.roles);
}
然后,当用户尝试使用getDownloadURL
从Web检索文件的下载URL时,Firebase会抛出权限错误。
能否请您提供解决方案?
答案 0 :(得分:2)
解决此问题:
function isEnterprise() {
return request.auth.token.roles.hasAny(['enterprise']);
}