我对在Firebase数据库的“规则”部分设置权限感到困惑。
我正在开发一个应用程序(实际上是一本书),只有一个人使用此电子邮件地址更新应用程序:someone@gmail.com
。因此,其他人,无论是否经过身份验证,都必须无法修改内容,但允许他们阅读。
答案 0 :(得分:1)
如果查看Firebase Security Rules API,您会看到用户的电子邮件地址(如果有的话)可通过auth.token.email
获取。
因此,要向具有someone@gmail.com
电子邮件地址的用户授予对整个数据库的写访问权限,并允许读取所有人的访问权限,您可以定义如下规则:
{
"rules": {
".read": true,
".write": "auth !== null && auth.token.email === 'someone@gmail.com'"
}
}
所述规则将授予对所有人的读取权限。如果您只想授予经过身份验证的用户的读访问权限,可以使用:
{
"rules": {
".read": "auth !== null",
".write": "auth !== null && auth.token.email === 'someone@gmail.com'"
}
}