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

注意:为了说明这不是Firebase API密钥,这可能更像是令牌......客户端应用拥有的东西以及服务器端点验证的东西。使用Firebase RemoteConfig来存储API密钥可以吗?

我们正试图做得更好,以确保API密钥(用于验证客户端到端点的认证令牌)。这都将在我们的内部网络上,但我们仍然希望确保只有我们的移动客户端可以调用端点。

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

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

我不确定这是否仅指与应用程序捆绑在一起的默认值,或者它是否也用于远程加载的值。一旦我们拥有密钥,我们就可以通过我们的MDM提供商对其进行加密并将其存储在设备上。

此外,是将远程配置数据传输到应用程序加密或完成明文?

感谢任何人都可以提供有关远程配置的更多信息。

回答:

这取决于你想保持你的API密钥的安全性。 API密钥允许某人做什么?如果仅仅是将您的应用识别为其他服务(例如YouTube Data API),那么可能发生的最糟糕的情况是恶意用户使用该资源的配额。另一方面,如果密钥允许持有者在没有进一步的身份验证和授权的情况下对重要数据做出一些不可逆转的更改,那么您绝不希望它以任何形式存储在他们的设备上。

来自Firebase文档的引用可以解答您的问题。一般来说,你不应该在你的应用中存储私钥。请查看this question的解答以获得详细解释。

使用Firebase的Remote Config几乎比在应用程序包中传送密钥更安全。无论哪种方式,数据都以用户的硬件结束。然后,一个恶意的人可以在理论上访问它,不管我们可能认为这是多么困难。另外,我不能肯定地说(你应该可以很容易地测试这个),但我高度怀疑远程配置值是以纯文本形式发送的。 Google默认通过https执行所有操作。

以上是 使用Firebase RemoteConfig来存储API密钥可以吗? 的全部内容, 来源链接: utcz.com/qa/261288.html

回到顶部