linkorb/vault

Vault: 将机密数据存储在版本控制中

v1.0.1 2016-05-14 14:28 UTC

This package is auto-updated.

Last update: 2024-08-29 04:39:53 UTC


README

在版本控制中安全存储机密信息(密码、ssl证书、密钥)

安装 Vault

Vault 是一个小的 CLI 应用程序,您可以通过在 composer.json 文件中添加以下行将其添加到您的项目中:

"require": {
    "linkorb/vault": "~1.0"
}

运行 composer update 以安装新的项目依赖项

使用 Vault

Vault 与两个目录一起工作

  • vault 目录(默认 vault/):此目录以加密形式存储机密信息
  • secure 目录(默认 secure/):此目录包含未加密的机密文件,以便您的应用程序可以使用它。此目录将不会提交到版本控制,并且应添加到您的 .gitignore 文件中。

要开始,请创建这两个目录,并在您的 secure/ 目录中放置一个机密文件。

输入以下命令,以加密 secure/ 目录中的所有文件,并将它们存储在 vault/ 目录中

vendor/bin/vault encrypt

Vault 将要求输入用于加密的密码。

现在,您可以使用以下命令检查存储在保险库中的哪些文件:

vendor/bin/vault ls

要输出保险库中单个文件的文本内容,运行:

vendor/bin/vault cat test.txt

将您的 secure/ 目录添加到 .gitignore,并将 vault/ 目录中的文件提交。

要在另一台计算机上使用文件,使用 git pull 获取 vault/ 目录中的新文件,然后运行以下命令以将其解密到新的本地 secure/ 目录:

vendor/bin/vault decrypt

Vault 将再次要求输入密码,并将文件逐个提取到 secure/ 目录中,以便可以使用它们。

如果您对 secure/ 目录中的文件进行了任何更改,请确保再次运行 vault encrypt 以更新 vault/ 中的内容,以便可以将它们发送到您的版本控制系统。

待办事项

  • 通过 Vaultfile 配置 vault/secure/ 目录
  • 允许配置使用的加密方法
  • 添加一个 diff 命令,以检查保险库和 secure 目录之间的更改

许可证

MIT。有关详细信息,请参阅许可证文件

由 LinkORB 工程团队提供


请查看我们在 linkorb.com/engineering 上的其他项目。

顺便说一句,我们在招聘!