为 Yii2 的 Vault 集成

0.2.0 2016-07-28 12:53 UTC

This package is not auto-updated.

Last update: 2024-09-14 19:09:31 UTC


README

为 Yii2 的 Vault 集成。

关于 HashiCorp 的 Vault

Vault

Vault 通过保护、存储并严格控制对令牌、密码、证书、API 密钥和其他机密在现代计算中的访问来提高安全性。Vault 处理租赁、密钥吊销、密钥轮换和审计。通过统一的 API,用户可以访问加密的键/值存储和网络加密即服务,或生成 AWS IAM/STS 凭据、SQL/NoSQL 数据库、X.509 证书、SSH 凭据等。

安装方法

从 composer 安装

composer require starcode-krasnodar/yii2-vault

或在 composer.json 中添加

  // ...
  "require": {
    // ...
    "starcode-krasnodar/yii2-vault": "dev-master",
    // ...
  }
  // ...

在您的应用程序配置中添加 vault 模块

<?php
return [
    // ...
    'modules' => [
        // other modules ...
        'vault' => [
            'class' => 'starcode',
            // module config params ...
        ],
    ],
    // ...
];

vault 模块的 CLI

模块为 yii2 应用提供 CLI

  • vault/client/list 列出路径(第一个参数)中的 vault 机密列表。
  • vault/client/read 通过路径(第一个参数)读取机密数据
  • vault/client/write 写入机密数据(第一个参数为路径,第二个为 JSON 字符串值)
  • vault/client/delete 删除机密数据

示例

创建新的机密

php yii vault/client/write secret/path/to/secret/key '{"value": "some secret"}'

读取现有的机密

php yii vault/client/read secret/path/to/secret/key

# output
Array
(
    [value] => some secret
)

删除机密

php yii vault/client/read secret/path/to/secret/key