当前位置: 首页 > 知识库问答 >
问题:

使用Firebase RemoteConfig存储API密钥可以吗?

蔚和安
2023-03-14

我们试图更好地保护API密钥(想想用来验证客户端到endpoint的令牌)。这将全部在我们的内部网络上,但我们仍然希望确定只有我们的移动客户端可以调用endpoint。

我想我们可以将API键放入Firebase远程配置参数中(在应用程序中内置一个无效的默认值)。但是,远程配置的Firebase文档说:

不要将机密数据存储在远程配置参数键或参数值中。可以解码存储在项目远程配置设置中的任何参数键或值。

感谢任何人提供的关于远程配置的更多信息。

共有1个答案

郎琪
2023-03-14

这取决于您希望保留API密钥的安全性。API密钥允许某人做什么?如果只是将你的应用程序识别到另一个服务,例如YouTube数据API,那么最坏的情况就是恶意用户用完你的资源配额。另一方面,如果密钥允许持有者对重要数据进行一些不可逆的更改,而不需要进一步的身份验证和授权,那么你绝不希望它以任何形式存储在他们的设备上。

您引用的Firebase文档回答了您的问题。一般来说,您不应该在应用程序中存储私钥。请查看此问题的答案以获得详细的解释。

 类似资料:
  • 问题内容: 我使用openssl生成认证密钥。这是我的命令: openssl genrsa -des3 -out enc_key.pem 1024 我导出到cer文件中,然后使用java keytool导入到Java keystore(jks)中。 密钥库听起来不错。我可以从Java应用程序加载密钥库。 问题是客户端连接到服务器(在这种情况下是FTP服务器,而不是Web服务器,而我使用apache

  • <代码>java。安全KeyStore使用KeyStoreSpi实现来提供不同类型的KeyStore。基本OpenJDK支持JKS、JCEKS和PKCS12密钥库类型。前两个实现专有的Sun/Oracle格式,PKCS12是一个公共标准。 我知道JCEKS确实支持对称密钥,PKCS12则不支持。还有哪些实现(如Bouncy Castle)支持对称密钥?开发人员似乎想隐藏此类信息。E、 g.Boun

  • Swagger支持api密钥的安全性,但这似乎仅限于单个参数。 有没有办法定义一组参数(key和secret)作为请求中的参数? 或者,唯一的方法就是跳过安全方案,只将这些参数添加到每个请求中?

  • 我正在构建一个全栈MERN(MongoDB Express React Nodejs)应用程序。我正在使用NPM包Google Maps React在我的网站上显示Google地图。我很难想出一个策略来保护我的前端google maps API密钥。 为了充分理解我的问题,查看下面的Google Maps React组件代码可能会有帮助 可能的解决办法 解决方案A 在我的Mongo数据库中存储密钥

  • 问题内容: 我们可以在密钥存储区中加载多个证书和密钥吗? 是否总是需要仅加载对(即证书和密钥一起)? 如果密钥库具有多个证书和密钥,那么当Java SSL尝试建立作为服务器的连接时,将选择哪个证书和密钥? 问题答案: 尽管这取决于KeyStore类型,但是通常,您可以在单个存储中存储多个私钥和证书。 基于Java的服务器使用哪种密钥和证书组合取决于应用程序的实现方式。许多应用程序允许您使用 别名

  • 问题内容: 我正在使用KeyStore保护我的私钥,但是在以下行中: 被执行,我有这个异常: 我不明白问题出在哪里。 码: 谢谢您的帮助! 问题答案: 更改: 至 现在,您正在将方法中的context参数分配为与全局值相同的值,该值为null。因此,您的上下文实际上没有被存储。