我最近使用Firebase构建了一个应用程序作为数据存储,并使用安全规则对其进行保护,只有用户才能读取和编辑他们的数据,这些数据一切正常。
但现在我想构建一个管理部分来列出用户并在必要时更新详细信息,但我遇到的问题是我无法访问他们的数据,因为我不是用户。我是否可以对用户或管理员允许读写权限?
更新
令牌生成
var tokenGenerator = new FirebaseTokenGenerator(authSecret);
var token = tokenGenerator.createToken({admin: true});
安全规则
".read": "auth.admin == true || otherauthmthod"
答案 0 :(得分:5)
如果您更新安全规则以查找auth.admin
位,则上述方法将起作用。或者,可能更容易一点,就是生成一个 admin 令牌,这将允许您完全跳过安全规则的执行。这可以通过以下方式完成:
var token = tokenGenerator.createToken({ any: "data" }, { admin: true });
有关详细信息,请参阅https://github.com/firebase/firebase-token-generator-node。