منصوبے کے بارے میں

Vault HashiCorp کا ایک رازوں کے انتظام کا ٹول ہے۔ راز (secret) سے مراد کوئی بھی چیز ہے جس تک رسائی آپ سختی سے کنٹرول کرنا چاہتے ہیں، جیسے API کلیداں، پاس ورڈز، سرٹیفکیٹس، اور اسی طرح کی اسناد۔ Vault کسی بھی راز کے لیے ایک متحد انٹرفیس فراہم کرتا ہے جبکہ سخت رسائی کنٹرول اور تفصیلی آڈٹ لاگ پیش کرتا ہے۔ README میں بیان کردہ اہم خصوصیات: - محفوظ رازوں کا ذخیرہ: Vault صوابدیدی کلید/قدر کے جوڑے ذخیرہ کرتا ہے اور ڈیٹا کو مستقل اسٹوریج پر لکھنے سے پہلے خفیہ کرتا ہے، لہٰذا خام اسٹوریج تک رسائی رازوں کو پڑھنے کے لیے کافی نہیں ہوتی۔ یہ ڈسک، Consul اور دیگر بیک اینڈز پر لکھ سکتا ہے۔ - متحرک راز: Vault AWS یا SQL ڈیٹا بیس جیسے سسٹمز کے لیے طلب پر راز پیدا کر سکتا ہے۔ مثال کے طور پر، کوئی ایپلیکیشن S3 بکٹ کے لیے اسناد کی درخواست کر سکتی ہے، اور Vault طلب پر درست اجازتوں کے ساتھ AWS کلیدی جوڑا پیدا کرتا ہے، پھر لیز کی میعاد ختم ہونے کے بعد خودکار طور پر اسے منسوخ کر دیتا ہے۔ - ڈیٹا کی خفیہ کاری: Vault ڈیٹا کو ذخیرہ کیے بغیر خفیہ اور غیر خفیہ کر سکتا ہے، جس سے سیکیورٹی ٹیمیں خفیہ کاری کے پیرامیٹرز متعین کر سکتی ہیں جبکہ ڈویلپرز اپنی خفیہ کاری خود ڈیزائن کیے بغیر خفیہ کردہ ڈیٹا کو SQL ڈیٹا بیس جیسی جگہوں پر ذخیرہ کر سکتے ہیں۔ - لیز اور تجدید: ہر راز ایک لیز سے منسلک ہوتا ہے؛ لیز کے اختتام پر Vault خودکار طور پر راز کو منسوخ کر دیتا ہے، اور کلائنٹ بلٹ ان تجدید APIs کے ذریعے لیز کی تجدید کر سکتے ہیں۔ - منسوخی: Vault ایک ایک راز یا رازوں کے درختوں کو منسوخ کرنے کی حمایت کرتا ہے، مثال کے طور پر کسی مخصوص صارف کے پڑھے گئے تمام راز یا کسی خاص قسم کے تمام راز، جو کلیدی گردش (key rolling) اور حملے کے بعد سسٹم کو مقفل کرنے میں مدد دیتا ہے۔ README دستاویزات، ابتدائی رہنمائی، سبق آموز مواد، اور HashiCorp کے لرننگ پلیٹ فارم پر ایک سرٹیفیکیشن امتحان کی طرف اشارہ کرتا ہے، نیز مختلف زبانوں میں ایپلیکیشنز سے Vault کے ساتھ تعامل کے لیے مثالی ریپوزٹریز اور ایک نمونہ ایپلیکیشن بھی۔ ترقی کے لیے، Vault Go میں لکھا گیا ہے۔ README Go انسٹال کرنے اور GOPATH/GOBIN سیٹ کرنے، GOPATH سے باہر ریپوزٹری کلون کرنے، اور `make bootstrap` کے ساتھ بوٹسٹریپ کرنے کی وضاحت کرتا ہے۔ ڈیولپمنٹ بلڈز `make` یا `make dev` سے تیار کی جاتی ہیں، اور UI بلڈ `make static-dist dev-ui` سے۔ ٹیسٹ `make test` کے ذریعے چلتے ہیں (Docker درکار ہے)، اور پیکیج مخصوص ٹیسٹ TEST متغیر کے ساتھ چلائے جا سکتے ہیں۔ قبولیت ٹیسٹ `make testacc` کے ساتھ چلتے ہیں اور یہ حقیقی وسائل پیدا، تبدیل یا تباہ کر سکتے ہیں، لہٰذا انہیں احتیاط سے چلانا چاہیے۔ ریپوزٹری `sdk/helper/testcluster/docker` پیکیج استعمال کرتے ہوئے ایک تجرباتی Docker پر مبنی ٹیسٹنگ میکانزم کی بھی دستاویز کرتی ہے، جس میں حسب ضرورت بائنریز اور Enterprise لائسنس کے اختیارات شامل ہیں۔ ریپوزٹری دو قابل درآمد لائبریریاں شائع کرتی ہے، `github.com/hashicorp/vault/api` اور `github.com/hashicorp/vault/sdk`۔ README نوٹ کرتا ہے کہ مرکزی Vault پروڈکٹ کو بطور انحصار درآمد کرنا ایک تعاون یافتہ استعمال کی صورت نہیں ہے۔ سیکیورٹی کے مسائل کو ذمہ داری سے security@hashicorp.com پر ظاہر کیا جانا چاہیے۔