是否可以安全/安全地将API密钥等检入存储库?

时间:2017-04-03 02:24:02

标签: node.js git

我将敏感的详细信息(例如,AWS Secret)加载到我的node项目dotenv&一个.env文件,我将其包含在.gitignore中,因为我已经阅读了这个最佳做法。

如果我想将其他人添加到项目中,或者甚至在另一个系统上克隆repo,那么传输这些敏感细节的最有效/最安全的方法是什么?我认为电子邮件/谷歌驱动器已经关闭,但我不确定它是什么。

我的回购是私有的 - 这是否意味着'不签入API密钥'的建议不那么具体?据我所知,任何有权查看回购的人都可能需要相关的API密钥,所以简单地检查它们似乎并不太合理。

1 个答案:

答案 0 :(得分:1)

安全始终是一种方便的权衡。没有真正的绝对。对于访问存储库的任何人以及可以访问密钥的(潜在)git主机,你感觉很酷吗?所有开发人员的计算机都安全且使用磁盘加密吗?密钥可以访问什么? AWS上的一切?您是否相信能够访问回购的人足以保持安全并且不会意外地分享进一步的东西?关键是你需要尝试完全理解秘密可能泄露的方式。

就个人而言,我宁愿将它们置于git之外,并通过usb棒或加密电子邮件将密钥分发给开发人员。而且只针对需要它们的人。只有我们开发人员的一部分实际上需要访问。

如果您认为风险过大,请确保更换所有秘密。不要只是从存储库中删除它们。一旦他们在那里,他们永远在那里。