一尘不染

JavaScript向公众公开Firebase apiKey是否安全?

javascript

在web应用指南规定我应该把给定的apiKey在我的HTML初始化火力地堡:

// TODO: Replace with your project's customized code snippet
<script src="https://www.gstatic.com/firebasejs/3.0.2/firebase.js"></script>
<script>
  // Initialize Firebase
  var config = {
    apiKey: '<your-api-key>',
    authDomain: '<your-auth-domain>',
    databaseURL: '<your-database-url>',
    storageBucket: '<your-storage-bucket>'
  };
  firebase.initializeApp(config);
</script>

这样一apiKey来,每个访问者都可以接触到。该密钥的目的是什么,真的意味着要公开吗?


阅读 584

收藏
2020-04-22

共1个答案

一尘不染

此配置代码段中的apiKey只能识别您在Google服务器上的Firebase项目。知道它不是安全风险。实际上,他们有必要知道它,以便他们与Firebase项目进行交互。使用Firebase作为其后端的每个iOS和Android应用程序中也包含相同的配置数据。

从这个意义上讲,它与数据库URL非常相似,后者在同一代码段中标识了与您的项目关联的后端数据库https://<app- id>.firebaseio.com。有关为何这不构成安全风险的问题,包括使用Firebase的服务器端安全规则,以确保只有授权用户才能访问后端服务。

2020-04-22