ไลบรารีไคลเอนต์ PHP สำหรับบริการ Hashicorp Vault ไคลเอนต์นี้เป็นไปตามข้อมูลคำขอและการตอบสนองเท่ากับเอกสารไคลเอนต์ Hashicorp Vault
อย่าลังเลที่จะเปิดคำขอดึงเพื่อเพิ่มการปรับปรุงหรือการใช้งานที่ขาดหายไป
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 ใช้อะแดปเตอร์ไคลเอนต์ HTTP ที่สอดคล้องกับ PSR-18 เช่น "php-http/curl-client": "^1.7"
AuthenticationProviderInterface ผู้ให้การรับรองความถูกต้องจาก /authentication/provider/*
$apiHost HASHICORP VAULT REST ปลายทาง URL
การใช้คำขอจำนวนมากยังต้องทำซ้ำผ่านการตอบสนองและการโทรหา hasErrors ภายใน MetaData ของแต่ละรายการจำนวนมากเพื่อให้แน่ใจว่าได้รับการประมวลผลสำเร็จ
วิธีการเรียกใช้ไลบรารีจะทำให้เกิดข้อยกเว้นแสดงว่ามีการให้ข้อมูลที่ไม่ถูกต้องหรือเกิดข้อผิดพลาด HTTP หรือพบข้อผิดพลาดจุดสิ้นสุดทั่วไปของ Vault
VaultException
ข้อยกเว้นรูททั่วไปที่ทุกข้อยกเว้นในไลบรารีนี้ขยายจาก
VaultHttpException
ข้อยกเว้นจะถูกโยนลงเมื่อมีบางสิ่งในการจัดการ HTTP จะทำให้เกิดข้อผิดพลาด
VaultAuthenticationException
จะถูกโยนทิ้งเมื่อ API Endpoint Authentication ล้มเหลว
VaultResponseException
จะถูกโยนลงบนข้อผิดพลาดรหัสสถานะ 5xx
InvalidRouteException
การเรียกจุดสิ้นสุด Vault API ที่ไม่ถูกต้อง/ไม่ถูกต้อง/ปิดใช้งานจะส่งข้อยกเว้นนี้
InvalidDataException
ข้อยกเว้นระบุการตรวจสอบความถูกต้องของเซิร์ฟเวอร์ที่ล้มเหลว
KeyNameNotFoundException
จะถูกโยนทิ้งเมื่อพยายามขอปลายทาง API ซึ่งชื่อคีย์ - ที่ระบุไว้ใน URL - จะไม่มีอยู่