Bibliothèque client PHP pour le service Hashicorp Vault. Ce client suit les données de demande et de réponse égales à la documentation du client Vault Hashicorp.
N'hésitez pas à ouvrir les demandes de traction pour ajouter des améliorations ou des fonctionnalités manquantes.
composer require mittwald/vault-php
// setting up independent http client
$ httpClient = new Client ();
// setting up vault auth provider
$ auth = new Token ( ' foo ' );
// creating the vault request client
$ client = new VaultClient (
$ httpClient ,
$ auth ,
' http://127.0.0.1:8200 '
);
// selecting the desired secret engine
// e.g. Transit Secret Engine
$ api = new Transit ( $ client );
// calling specific endpoint
$ response = $ api -> listKeys ();
//reading results
var_dump ( $ response -> getKeys ());
//...
//...
//Profit... public function __construct(
HttpClient $ httpClient ,
AuthenticationProviderInterface $ authProvider ,
string $ apiHost
) HttpClient prend chaque adaptateur client HTTP conforme PSR-18 comme "php-http/curl-client": "^1.7"
AuthenticationProviderInterface Authentication Provider de /authentication/provider/*
$apiHost hashicorp vault repos de repos de repos
L'utilisation de demandes en vrac nécessite également de parcourir la réponse et d'appeler hasErrors dans les MetaData de chaque élément en vrac pour s'assurer qu'il a été traité avec succès.
Les méthodes d'appel de la bibliothèque lanceront des exceptions, indiquant partout où des données non valides ont été fournies ou des erreurs HTTP se sont produites ou des erreurs de point de terminaison génériques de Vault sont rencontrées.
VaultException
Exception de racine générique d'où chaque exception de cette bibliothèque s'étend.
VaultHttpException
L'exception sera lancée lorsque quelque chose à l'intérieur de la manipulation HTTP entraînera une erreur.
VaultAuthenticationException
Sera lancé lorsque l'authentification des points de terminaison API échoue.
VaultResponseException
Sera lancé sur les erreurs de code d'état 5xx.
InvalidRouteException
L'appel d'un point de terminaison de l'API Vault non valide / non existant / désactivé lancera cette exception.
InvalidDataException
L'exception indique une validation de charge utile du serveur défaillant.
KeyNameNotFoundException
Sera lancé lorsque vous essayez de demander un point de terminaison de l'API où le nom de clé - qui est indiqué dans l'URL - n'existera pas.