Firebase 数据库安全规则允许经过身份验证的用户读取和写入自己的内容

Ahm*_*rif 5 firebase firebase-security firebase-realtime-database

这是我的数据库结构:

 Clients:
     employee1emailaddress
     employee2emailaddress
 Employees:
     employee1emailaddress
     employee2emailaddress
 allClients:
     client1phonenumber
     client2phonenumber
Run Code Online (Sandbox Code Playgroud)

我想制定一个安全规则来限制经过身份验证的用户从与其电子邮件地址关联的节点读取写入

例如:谁拥有的电子邮件地址,员工employee1emailaddress可以仅从并写入节点读取都有自己的电子邮件地址作为关键

如何使之成为可能?并提前致谢..

小智 5

我建议不要将数据与用户的电子邮件地址相关联。您应该改用他们的 UID:

{
  "rules": {
     "$uid": {
        ".read": "auth !== null && auth.uid === $uid",
        ".write": "auth !== null && auth.uid === $uid"
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

这将只允许用户从数据库中的目录读取和写入,其中密钥是他们的 UID。