firebase 队列中的当前用户
current user on firebase queue
我想知道哪个用户在我的工作代码中将任务推送到 firebase 队列。我可以在任务中推送 userId,但这并不安全,任何其他用户都可以推送其他用户的 userId。有没有办法可以访问将任务推送到队列中的用户。
保护您的数据库相当容易,这样用户就只能推送包含他们自己的 UID 的任务。
例如,假设您有这个 JSON 结构:
tasks
task1
creator: "uidOfPankaj"
description: "Whatever other fields your task needs"
task2
creator: "uidOfPuf"
description: "Fields for Frank's task"
您可以使用这些规则确保用户只能在 creator
属性 下使用自己的 UID 推送任务:
{
"rules": {
"tasks": {
"$taskId": {
".write": "newData.hasChildren(['creator', 'description'])",
"creator": {
".write": "newData.val() == auth.uid",
}
}
}
}
}
我建议您阅读 documentation on Firebase security rules and pay special attention to the section on user based security。
我想知道哪个用户在我的工作代码中将任务推送到 firebase 队列。我可以在任务中推送 userId,但这并不安全,任何其他用户都可以推送其他用户的 userId。有没有办法可以访问将任务推送到队列中的用户。
保护您的数据库相当容易,这样用户就只能推送包含他们自己的 UID 的任务。
例如,假设您有这个 JSON 结构:
tasks
task1
creator: "uidOfPankaj"
description: "Whatever other fields your task needs"
task2
creator: "uidOfPuf"
description: "Fields for Frank's task"
您可以使用这些规则确保用户只能在 creator
属性 下使用自己的 UID 推送任务:
{
"rules": {
"tasks": {
"$taskId": {
".write": "newData.hasChildren(['creator', 'description'])",
"creator": {
".write": "newData.val() == auth.uid",
}
}
}
}
}
我建议您阅读 documentation on Firebase security rules and pay special attention to the section on user based security。