yii2-vault
Vault integration for Yii2., (*1)
About Vault by HashiCorp
, (*2)
Vault secures, stores, and tightly controls access to tokens, passwords, certificates, API keys, and other secrets in modern computing. Vault handles leasing, key revocation, key rolling, and auditing. Through a unified API, users can access an encrypted Key/Value store and network encryption-as-a-service, or generate AWS IAM/STS credentials, SQL/NoSQL databases, X.509 certificates, SSH credentials, and more., (*3)
How to install
Install from composer, (*4)
composer require starcode-krasnodar/yii2-vault
or add to composer.json, (*5)
// ...
"require": {
// ...
"starcode-krasnodar/yii2-vault": "dev-master",
// ...
}
// ...
Add vault module in your application config, (*6)
<?php
return [
// ...
'modules' => [
// other modules ...
'vault' => [
'class' => 'starcode',
// module config params ...
],
],
// ...
];
CLI for vault module
Module provide CLI for yii2 app:, (*7)
-
vault/client/list
list of vault secrets in path (first argument).
-
vault/client/read
read secret data by path (first argument)
-
vault/client/write
write secret data (first argument path, second JSON-string value)
-
vault/client/delete
delete secret data
Examples
Create new secret, (*8)
php yii vault/client/write secret/path/to/secret/key '{"value": "some secret"}'
Read exist secret, (*9)
php yii vault/client/read secret/path/to/secret/key
# output
Array
(
[value] => some secret
)
Delete secret, (*10)
php yii vault/client/read secret/path/to/secret/key