变更日志
社区贡献:dotenv-vault-rs
感谢 Rust 开发者和 Dotenv 社区成员 Mark Lagae,您现在可以使用 .env.vault
文件与 Rust!
您可以在 minebomber/dotenv-vault-rs 找到它。我们在所有 Rust 指南 中都使用它。
python-dotenv-vault CVE-2023-38325
[email protected]
将 cryptography 升级到 41.0.3
或更高版本以修复 高危 CVE-2023-38325。
社区贡献:dotenv-vault-laravel
感谢 Laravel 专家和 Dotenv 社区成员 David Cochrum,您现在可以使用 .env.vault
文件与 Laravel!
您可以在 davidcochrum/dotenv-vault-laravel 找到它。我们在所有 Laravel 指南 中都使用它。
完整编辑模式
现在您可以从 UI 中完全编辑您的 .env
文件。这比编辑单个键更危险,但有时您只想完全粘贴一个预先存在的 .env
文件。谨慎使用。
转移所有权
需要将组织的所有权转移到其他团队成员吗?现在可以了。
您可以在 组织设置 页面中的 危险区域 找到转移表单。
添加了 PHP 支持
我们添加了 php 对 .env.vault 文件的支持。
文档添加功能
文档 现在包含一个部分,您可以在其中查看和更好地理解功能。
组织活动提要(beta/高级版)
查看团队的推送、拉取、秘密更改等的历史记录。
四个新的快速入门指南
我们在 Dotenv 的 文档 中添加了四个新的快速入门指南。
我的活动提要(beta)
您的帐户现在包含一个您最新操作的活动提要。查看您推送、拉取、登录等的记录。
博客上线
我们已经上线了我们的博客。您可以在 dotenv.org/feed.xml 获取 RSS 提要。
实验性暗黑模式
您现在可以切换到暗黑模式。目前它处于实验阶段,所以您的体验可能会有所不同。
比较环境
您现在可以从单个页面比较环境。
- 查看秘密差异并发现是否有任何秘密缺失。
- 直接转到某个秘密
- 只需点击几下即可在不同环境之间复制秘密。
专用部署页面
您的每个项目现在都有一个专用的部署页面。
- 查看您的 .env.vault 文件
- 查看您的解密密钥
- 查看有关如何使用 .env.vault 文件安全地部署秘密的说明、语言库和指南。
编辑引号格式
在 UI 中编辑环境变量的引号格式。
点击您秘密旁边的编辑按钮,然后点击高级设置,最后在右上角编辑引号格式。
Dotenv 16.1.0 发布
重大版本发布,对 .env.vault
文件提供一流的支持。
dotenv RC 候选版本 2
[email protected] 的 RC 候选版本 2 已发布。它包含大量附加功能。
-
populate
命令 - 修复了在 Replit 等平台上无法解决 fs 错误的问题。
- 接受 URL 作为路径
- 添加了
.env.vault
支持
西班牙语 README
我们添加了一个西班牙语的 README。感谢 Francisco Hernandez 的贡献。
访问 README-es.md 获取更多详细信息。
Windows 安装程序
您更喜欢将 dotenv-vault 作为 Windows 上的可执行文件安装,而不是使用 npx?现在可以了。
访问 /install 获取更多详细信息。
Homebrew 二进制文件
您更喜欢使用 homebrew 安装 dotenv-vault,而不是使用 npx?现在可以了。
$ brew install dotenv-org/brew/dotenv-vault
然后直接在您的 CLI 上使用这些命令
dotenv-vault help
访问 /install 获取更多详细信息。
[email protected]
现在需要 Node 16(及更高版本)才能使用 dotenv-vault 1.22(及更高版本)。
如果您使用的是无法升级的旧版 Node,请通过 homebrew 或 windows 安装程序或类似方式安装 dotenv-vault。
GitHub Pages
我们将我们的 www 网站迁移到了 GitHub Pages。这包括所有文档。
任何人都可以在这里 建议编辑。
Golang .env.vault 支持
如果您是 Golang 开发者,您现在可以使用 .env.vault
文件进行部署。
安装 godotenvvault
go get github.com/dotenv-org/godotenvvault
并在您的应用程序中尽快导入并配置它
package main
import (
"log"
"os"
"github.com/dotenv-org/godotenvvault"
)
func main() {
err := godotenvvault.Load()
if err != nil {
log.Fatal("Error loading .env file")
}
s3Bucket := os.Getenv("S3_BUCKET")
secretKey := os.Getenv("SECRET_KEY")
// now do something with s3 or whatever
}
访问 github.com/dotenv-org/godotenvvault 获取更多详细信息。
NodeJS .env.vault 支持
dotenv 正在获得对解密 .env.vault 文件的一流原生支持。
它目前发布为 RC 候选版本。发布后,将弃用 dotenv。
dotenv-vault 本地命令
您现在可以运行以下三个命令来生成自己的 .env.vault 文件,而无需依赖 dotenv.org 来执行此操作。它通过完全在本地管理所有秘密来工作。
- npx dotenv-vault local build
- npx dotenv-vault local decrypt
- npx dotenv-vault local keys
升级到 [email protected] 以使用它们。您可以在 此处 阅读有关这些命令的更多信息。
新网站
我们重新设计了 www 网站,以更好地描述使用 dotenv-vault 的好处。
我们的目标是更好地解释围绕 .env.vault 的创新以及它如何使开发者、DevOps 团队和 CSO 受益。
GitHub 附加组件
在每次环境更改时自动构建您的加密 .env.vault 文件。
每次准备好部署新的秘密更改时运行 npx dotenv-vault build
可能会很麻烦。使用此 自动化附加组件 让 GitHub 为您完成此操作。
计费改进
计费团队会很高兴。我们添加了
- 附在计费电子邮件上的发票
- 使用您的计费地址(在设置中设置)生成的发票
Dotenv VSCode Rust 支持
在 dotenv-vscode 中添加了对 Rust 的支持。
已更新至 0.20.0。
Dotenv VSCode 现在对以下语言具有语法、自动隐藏、自动完成和代码内秘密窥视功能
- JavaScript/Node
- Ruby
- Python
- PHP
- Go
- Java
- C#
- Rust
DOTENV_KEY 旋转,用于 dotenv-vault-rails
在 dotenv-vault-rails 中添加了对旋转 DOTENV_KEY 的支持。
更新至 0.10.0 或更高版本以支持在 Ruby 和 Rails 中旋转密钥。
更智能的加密构建
现在,npx dotenv-vault build
仅在有更改时才会重新生成自身。
这提高了安全性并改善了 DX。
它通过最大程度地减少发生 nonce 冲突的可能性来提高安全性 - 这会泄露您的 DOTENV_KEY。(请注意,这仍然非常罕见。您需要重建 .env.vault 文件数十亿次才能发生这种情况。尽管如此,我们更喜欢最大程度地减少这种可能性。)
它通过遵循最小惊讶原则来改善 DX。只有在更改值后,您才会看到 .env.vault 文件发生更改。
python-dotenv-vault 进一步扩展
python-dotenv-vault 已扩展对以下内容的支持
- 逗号分隔的 DOTENV_KEY 功能(用于密钥旋转)
- 多环境支持
这些更改使 python-dotenv-vault 与 dotenv 具有同等的功能。
python-dotenv-vault
已将对 .env.vault 文件的解密支持添加到 Python。如果您使用的是 Flask、Django、FastAPI 或普通 Python,您就可以使用 Dotenv Vault。
在 python-dotenv-vault 中查看并告诉您的 Python 朋友。
旋转 Dotenv 密钥
使用以下命令旋转您的 DOTENV_KEY
$ npx dotenv-vault rotatekey production
然后
- 通过逗号追加新值来更新 DOTENV_KEY
- 重建并部署您的 .env.vault 文件
- 通过删除旧值来更新 DOTENV_KEY
查看文档 获取更多信息。支持 NodeJS 库。Ruby 和 Python 支持即将推出。
新的集成
我们添加了一些新的集成。我们接下来应该添加什么?
使用 Turnstile 进行垃圾邮件保护
我们将我们的蜜罐垃圾邮件保护机制替换为 Cloudflare Turnstile。它在捕获垃圾邮件方面更加可靠,而且体验仍然良好 - 没有令人讨厌的验证码识别交通标志。
新的文档
我们已经更新了我们的 /docs 网站。它使用 Jekyll 构建。这样我们就可以轻松地 在 GitHub 上公开 - 方便编辑。
无处不在的集成
无处不在的集成™ 是我们对集成的全新方法。它适用于您可以部署代码的任何地方。不再需要协调 API 调用的脆弱集成。相反,构建并加密您的本地 .env.vault 文件,将其提交到代码,并部署。没有其他类似的功能。
$ npx dotenv-vault build
$ git commit -am "Add .env.vault"
$ git push
无限项目
您现在可以创建无限数量的项目。
- 创建无限数量的项目
- 为每个项目创建无限数量的秘密
- 使用 dotenv-vault 访问这些秘密
多个环境
在多个环境中管理您的秘密。
- 开发、CI、预发布和生产环境
- 通过 UI 和 dotenv-vault 在多个环境中管理秘密。