我正在编写一些Firebase云功能,但我需要隐藏私钥,包括Firebase项目管理员。
如果我将此密钥嵌入到我的源代码中并自行上传代码,那么任何人都可以检索源代码并因此检索密钥吗?可以通过Firebase还是Google?
非常感谢
答案 0 :(得分:3)
您的应用用户永远无法访问您的云功能代码。
但Firebase项目中的协作者可以访问它。见Get code from firebase console which I deployed earlier
我认为没有办法隐藏协作者的配置值。由于他们可以查看/部署代码,并且代码需要访问此私钥,因此他们也可以访问密钥。
答案 1 :(得分:2)
也许设置一个环境变量:
答案 2 :(得分:2)
准确回答您的问题:是的,他们可以。
一步一步实现就是比较简单
如果您觉得这种方法有问题,这里有一种让事情更安全的方法:
您可以在已有的基础上进行构建并开始加密这些密钥,然后再将它们添加到代码库或环境变量中。之后,您可以使用加密服务(例如 KMS)在运行时解密这些密钥。在 KMS 本身中,您可以制定更严格的政策,只允许您自己和该功能访问该服务。