google-cloud-firestore - Firestore 安全规则 - 唯一用户名
问题描述
我正在尝试保护我的应用程序的后端,但我在任何地方都找不到解决方案。文档也无济于事。
我有 2 个集合:用户和用户名;
我希望每个用户都有一个唯一的用户名,他们应该能够更改它。
这是我的数据的样子:
users
-user
-username
username
-uid
这些是我的规则:
match /users/{uid} {
allow write: if request.auth.uid != null && !exists(/username/$(resource.data.username));
}
match /username/{username} {
allow write: if request.auth.uid != null;
}
只有当用户名不存在或者它的 uid 与经过身份验证的用户相同时,我才需要允许写入用户名。
解决方案
推荐阅读
- dictionary - 在ansible playbook的嵌套循环中遍历字典列表
- python - 如何创建两个具有相同输出的单独 python 文件
- javascript - 将 res.data 分配给变量返回 null
- wordpress - 任何人都知道如何在 wordpress 页面中允许查询字符串参数?
- java - 使用流将列表汇总到极限
- itunes - 文件重命名后如何阻止音乐恢复旧文件
- r - 如何将 R Shiny 中的 Dygraphs 保存为 PNG?
- mongodb - 如何将项目推送到数组中的对象内的数组中
- python-3.x - 如何在不对齐按钮的情况下缩放按钮或修复对齐?
- awk - sed 提取多行文本单元