当前,我已经实现了类似于下面的项目文件夹结构
我已在代码中添加了电话验证。
现在,借助Firebase规则,我想限制我的用户基于经过身份验证的电话号码访问孩子(电话号码1)。
例如,如果我使用电话号码“ 9999999999”登录,那么我想限制用户只能访问Firebase规则中的“ 9999999999”子级。
您能在这里建议我提高这里的安全性吗?
答案 0 :(得分:2)
您可以从users auth object访问电话号码,因此您可以使用它来限制安全性规则。以下是Firestore,RTDB和存储中的示例
Firestore
match /databases/{database}/documents {
match /users/{phoneNumber} {
allow read, write: if request.auth.token.phone_number == phoneNumber;
}
}
实时数据库
{
"rules" : {
"users" : {
"$phoneNumber" : {
".read" : "request.auth.token.phone_number == $phoneNumber",
".write" : "request.auth.token.phone_number == $phoneNumber"
}
}
}
}
存储
service firebase.storage {
match /b/{bucket}/o {
match /users/{phoneNumber} {
allow read, write: if request.auth.token.phone_number == phoneNumber;
}
}
}