vsitnikov/php-vault-client

Hashicorp Vault php library

dev-master 2019-12-18 19:29 UTC

This package is auto-updated.

Last update: 2025-04-19 04:30:33 UTC


README

Attention! This project is in development, do not use it, everything can change completely.

Create class

Initialization parameters
$params = [
    "server" => "server.ru",
    "port"   => 8200,
    "secret" => "secret",
    "auth" => [
        "method"   => vault::AUTH_USERPASS,
        "username" => "my_login",
        "password" => "my_password",
    ]
];
Initialize abstract class
vault::init($params);
Create new class identical on abstract class settings
$vault_class1 = vault::new();
Modify settings abstract class
vault::init(['port' => 8200]);

Multiple instances

Create new class with new settings, based on abstract class settings
$vault_class2 = vault::new(['server' => "newserver.ru"], true);
Create new class with new settings, based on $vault_class1 settings
$vault_class3 = $vault_class1::new(['server' => "oldserver.ru"]);

or

$vault_class3 = $vault_class1->new(['server' => "oldserver.ru"]);

Usage

Set default path
vault::setDefaultPath("/ps/data/apps/mondb/unit_test");
Get data from full path (path begin from slash)
$result = vault::get("/data/where/read/test_data");
Get data from relative (for default path or full path if default path not exists) path (path NOT begin from slash or http)
$result = vault::get("test_data");
Get data with personal query settings
$result = vault::get("test", ['response' => vault::RESPONSE_CODE | vault::RESPONSE_DEBUG]);