安全
.env
.env 文件格式是良好的 DSX 的核心,从 2012 年 Heroku 引入 以及 2013 年 dotenv node 模块(以及其他库)普及以来一直如此。
.env 文件格式从开发人员开始的地方开始 - 开发阶段。它被添加到每个项目中,但**不提交**到源代码控制。这为开发人员提供了一个安全的单一位置来存储敏感的应用程序密钥。
你能相信在引入 .env 文件之前,几乎所有开发人员都将他们的密钥作为硬编码字符串存储在源代码控制中吗?那仅仅是 10 年前的事!
示例
以下是一个 .env 文件的示例
# example .env file
STRIPE_API_KEY=scr_12345
TWILIO_API_KEY=abcd1234
它故意保持简单,因为作为安全专业人员,我们知道复杂性是安全的敌人。
你可以在这里(或其他实现这里、这里、这里)了解更多关于它的工作原理。它是保护开发密钥的黄金标准,已被全球数百万开发人员验证和信赖。
但世界已经发生了变化,开发人员管理密钥的规模远远超过十年前。如今,在机器、环境和团队成员之间安全地共享 .env 文件变得很困难。因此,开发人员经常通过 Slack、电子邮件、短信和便签来共享密钥。这不可扩展,而且存在安全风险。对于 CTO 或 CSO 来说,这是一个他们不应该承担的风险。
扩展 .env
幸运的是,这种情况正在改变。我们一直在扩展 .env 文件格式以支持安全共享。
.env 文件格式仍然是安全的核心。但我们添加了两个新的扩展。它们不是必需的。它们是可选的,但我们强烈建议团队使用它们。它们是
- .env.vault 扩展
- .env.me 扩展
在下一组安全文档中,您可以了解这些扩展如何与 .env 文件一起使用以显著提高安全性。这是应用程序密钥安全领域的一次重大飞跃,与最初的 .env 文件格式一样,我们已经努力减少复杂性以提高安全性。