Javascript 如何防止在浏览器控制台中使用firebase.database()?

Javascript 如何防止在浏览器控制台中使用firebase.database()?,javascript,database,firebase,security,firebase-realtime-database,Javascript,Database,Firebase,Security,Firebase Realtime Database,我在javascript中使用firebase存在安全问题。用户只需打开浏览器的控制台,键入firebase.database.ref.oncevalue,data=>console.logdata.val;并获取所有数据库数据。我能阻止它吗 你可以让它变得更难,但不是不可能。即使没有使用已知全局变量访问加载到浏览器中的SDK,确定的用户也可以直接调用API端点,也可以通过 如果需要安全性,应该使用with来确定谁可以读取和写入哪些数据。安全规则是在服务器端评估的,因此无法规避。这取决于fire

我在javascript中使用firebase存在安全问题。用户只需打开浏览器的控制台,键入firebase.database.ref.oncevalue,data=>console.logdata.val;并获取所有数据库数据。我能阻止它吗

你可以让它变得更难,但不是不可能。即使没有使用已知全局变量访问加载到浏览器中的SDK,确定的用户也可以直接调用API端点,也可以通过


如果需要安全性,应该使用with来确定谁可以读取和写入哪些数据。安全规则是在服务器端评估的,因此无法规避。

这取决于firebase/数据库规则的配置。 您应该为未经身份验证的用户禁用读取

它应该是这样的:

"rules": {
  ".read": "auth != null",
  ".write": "auth != null"
}
实际上,在不实现Firebase身份验证的情况下,您可以从任何可以运行JavaScript的东西(包括浏览器控制台)访问Firebase数据库