无法添加新的';用户';行到Firebase用户使用逆火收集进行收集
在用户使用FirebaseSimpleLogin成功注册后,我正在使用回火集合尝试将新用户行添加到Firebase中的自定义“用户”集合 以下是我的安全规则:无法添加新的';用户';行到Firebase用户使用逆火收集进行收集,firebase,firebase-security,Firebase,Firebase Security,在用户使用FirebaseSimpleLogin成功注册后,我正在使用回火集合尝试将新用户行添加到Firebase中的自定义“用户”集合 以下是我的安全规则: "users": { "$user_id": { ".read": "auth.id === $user_id", ".write": "(!data.exists() && (newData.child('id').val() + '' === auth.id)) || ($user_id ===
"users": {
"$user_id": {
".read": "auth.id === $user_id",
".write": "(!data.exists() && (newData.child('id').val() + '' === auth.id)) || ($user_id === auth.id)"
}
安全规则应实现以下功能:
var FireUsers = Backbone.Firebase.Collection.extend({
model : Backbone.Model,
firebase: new Firebase(FirebaseURL + '/users/')
}),
fireUsers = new FireUsers();
fireUsers.add(newUserObj);
我在模拟器中尝试过,满足上述3个条件的唯一方法是将安全规则设置为“auth!=null”,这显然不理想
感谢您的帮助
-Tony如果登录用户只能读取其在users表中的行,则无法为整个users集合创建集合(因为这意味着每个人都可以读取users表)。为特定URL创建
Backbone.Firebase.Collection
的新实例将立即尝试下载该URL上的所有数据,但由于安全规则,该操作将失败
我建议改用Backbone.Firebase.Model
,直接在包含用户ID的URL上为用户创建一个新实例