Cerberus

一个 Swift 编写的 Vault 客户端 (显然是为 Linux 平台准备的).

状态

  1. 连接到正在运行的 Vault
  2. 获取 Vault 的 sealed 状态和健康状态
  3. 设置 Vault Token
  4. 检索当前 Token 的信息。
  5. 使用解封装的 Token 检索密钥 (获取通用密钥)
  6. 续订 Token (延长租约)
  7. 从解封装的 secret_idrole_id 获取 Token (AppRole 认证).
  8. 自动周期性 Token 续订

路线图

  1. 解封装密钥
  2. 自定义 TLS 支持

Postgres 密钥

待定

RabbitMQ 密钥

待定

运行测试

要求: Docker

运行 ./Scripts/test.sh. 集成测试将在一个容器中启动 Vault 实例,获取凭据,并在另一个 Linux 容器中使用这些凭据运行测试。

开发

./Scripts/start_vault.sh 将启动一个 Vault 实例,在本地端口 8200 上公开它,并将其配置为与集成测试中使用的相同状态。 您可以将打印的变量传递给单元测试,无论它们是在 Xcode 中运行还是在命令行中运行。