【发布时间】:2021-09-05 09:47:04
【问题描述】:
我构建了一个电子商务应用程序,它从 firebase 获取所有数据,我手动将这些数据放在一个创建的表单上,用于收集信息并添加到 firebase,我最近了解到任何人都可以删除或更改我的数据因为我的读写规则都是正确的。如何设置只有我可以使用适当的凭据更改我的数据
【问题讨论】:
标签: angular firebase security firebase-realtime-database
我构建了一个电子商务应用程序,它从 firebase 获取所有数据,我手动将这些数据放在一个创建的表单上,用于收集信息并添加到 firebase,我最近了解到任何人都可以删除或更改我的数据因为我的读写规则都是正确的。如何设置只有我可以使用适当的凭据更改我的数据
【问题讨论】:
标签: angular firebase security firebase-realtime-database
这里的关键在于您的声明“使用适当的凭据”。
您首先需要让该人使用 Firebase 身份验证登录。完成此操作后,他们将拥有一个 UID:Firebase 中的唯一用户 ID。
一旦知道他们的 UID,就可以更改数据库的security rules,这样只有一个用户可以写入数据。最简单的形式可以是:
{
"rules": {
".read": true,
".write": "auth.uid === 'theUidOfTheOneUserWhoCanMakeChange'"
}
}
这是一个相当广泛的主题,因此我建议阅读我上面链接的文档,以及 security rules 上的此文档,了解所有支持它们的 Firebase 产品。
【讨论】: