目前
allow read, write: if request.auth.uid != null && request.auth.token.admin == true
这样做可以吗?
allow read, write: if request.auth.token.admin == true
46qrfjad1#
这是不必要的,因为尝试读取null的属性token(如果用户没有登录)将只会出错并拒绝操作。您将在文档中找到许多示例,这些示例在request.auth.uid == '---'或任何角色验证之前没有显式检查request.ath != null。request.auth.uid != null是冗余的,因为token仅在用户登录时定义,并且如果用户是管理员(无论用户ID如何),则角色验证将通过。
null
token
request.auth.uid == '---'
request.ath != null
request.auth.uid != null
1条答案
按热度按时间46qrfjad1#
这是不必要的,因为尝试读取
null
的属性token
(如果用户没有登录)将只会出错并拒绝操作。您将在文档中找到许多示例,这些示例在request.auth.uid == '---'
或任何角色验证之前没有显式检查request.ath != null
。request.auth.uid != null
是冗余的,因为token
仅在用户登录时定义,并且如果用户是管理员(无论用户ID如何),则角色验证将通过。