这个问题被问了很多,但我仍然不知道该怎么做才能使每周从Firebase收到的警告消失...
您的Cloud-Firestore数据库的规则不安全
您可以猜到我的规则是所有人都可以读写。
我的问题是我实际上需要它。在注册过程中,我需要访问所有用户的电子邮件和用户名,以检查当前选定的用户是否可用。用户注册后,他就可以搜索其他用户并创建/删除/更改自己的文件。
我不太了解如何摆脱安全性问题。威胁在哪里?
答案 0 :(得分:1)
正如我在随后的评论中所说,如果您的用户只能创建/删除/更新他自己的文件,那么您的规则将不会被读/写为true。据我了解,您需要所有用户都能够阅读,但您希望他们只写自己的文档。 这样做的方法是,将文档ID与用户ID相同,然后使用以下规则检查其是否有效。
match /users/{userId} {
allow write: if request.auth.uid == userId;
allow read: true;
}
答案 1 :(得分:0)
所以,终于正确了。使用此解决方案,每个人都可以 read ,而用户只能 write 他们自己的东西。
这是我的代码:
handleSubmit = () => {
this.props.onSubmit({
...this.state, // Changed Position
id: this.state.name.toLocaleLowerCase().replace(/ /g, "-"),
type: "SC",
allgemein: {...this.state.allgemein,spieler: "TEST"},
});
this.setState(this.getInitState());
};