我使用 Flutter 构建了一个应用程序 (Android/iOS),允许用户配置该应用程序以接收每日通知。用户还可以提交文本字段。用户无需注册和身份验证。
我正在使用 Firestore 存储应用中的数据。
我设计了该应用,以便 Firestore 规则允许任何访问:
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
match /{document=**} {
allow read, write: if true;
}
}
}
为了防止任何人访问我的应用的 Firestore 实例,我实现了应用检查,并启用了强制执行。
我开始收到来自 Google 的消息“[Firebase] 您的 Cloud Firestore 数据库有不安全的规则”。
任何人都可以建议:
- 我应该忽略 Google 的警告吗?
- 当应用不需要时,我是否必须实现用户注册和身份验证?
- 我应该以不同的方式构建我的应用吗?
- 我应该做点别的吗?
谢谢
卢克
最佳答案
- Should I ignore the warnings from Google?
不建议忽略该警告,因为它可能会导致安全问题。
如果您允许任何人访问数据库,那么他们就可以利用并修改或删除您的数据。并且您的数据库仍然不安全
2.Must I implement user registration and authentiation when it's not necessary for the app?
如果不需要为您的应用程序验证用户身份,那么您可以应用一些验证规则来限制某些数据库节点,或者您可以允许 role based access 。通过这种方式,您可以减少安全问题。
@samthecodingman 在类似的 thread 中提供了有关加强数据库以防止安全问题的多种方法的详细信息。
关于flutter - 不安全的 Firestore 规则和应用程序检查 - 未经身份验证的数据库访问的正确方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73301254/