Firebase安全:uid和facebook.id
因此,我正在尝试为我的应用程序构建安全屏蔽。我的用户数据库结构在第一行,下面是我的初始安全规则:Firebase安全:uid和facebook.id,firebase,facebook-authentication,firebase-security,Firebase,Facebook Authentication,Firebase Security,因此,我正在尝试为我的应用程序构建安全屏蔽。我的用户数据库结构在第一行,下面是我的初始安全规则: /users/[facebook id of user]/[data] { "rules": { "users": { "$user": { ".read": "auth.uid === $user", ".write": "auth.uid === $user" } } } } 我的问题是:是否可以格式化安全规则
/users/[facebook id of user]/[data]
{
"rules": {
"users": {
"$user": {
".read": "auth.uid === $user",
".write": "auth.uid === $user"
}
}
}
}
我的问题是:是否可以格式化安全规则,以便auth.id
与字符串相比较:“facebook:+$user
或者我应该将所有数据库更改为使用原始的auth.uid作为用户ID?到目前为止,我一直使用facebook.id作为用户id
auth.uid
并不等同于facebook:+facebook.id所以不,你不能简单地使用它。如果要在安全规则中唯一标识用户,则需要使用auth.uid
如果您在生产环境中,作为重写所有用户ID的中间步骤,可以将auth.uid添加为字段并引用:
".write": "data.child('uid').val() === auth.uid"
但我不会尝试将其作为永久解决方案,因为随着您的进步,您将遇到更多问题。谢谢!我认为这是必须的,所以我已经将所有的数据库结构更改为userID作为auth.uid!祝你有美好的一天!