هذا المشروع مفتوح المصدر مدعوم من المجتمع. للإبلاغ عن مشكلة أو مشاركة فكرة، استخدم المشكلات ؛ وإذا كان لديك اقتراح لإصلاح المشكلة، فيرجى تضمين هذه التفاصيل أيضًا. بالإضافة إلى ذلك، استخدم طلبات السحب للمساهمة في إصلاحات الأخطاء الفعلية أو التحسينات المقترحة. نحن نرحب ونقدر كل المساهمات. هل لديك أسئلة أو ترغب في مناقشة شيء ما مع فريقنا؟ انضم إلينا على سلاك !
VCert عبارة عن مكتبة Go وSDK وأداة مساعدة لسطر الأوامر مصممة لتبسيط إنشاء المفاتيح وتسجيل هويات الأجهزة (المعروفة أيضًا باسم شهادات ومفاتيح SSL/TLS) التي تتوافق مع سياسة أمان المؤسسة باستخدام منصة Venafi Trust Protection Platform أو Venafi Control Plane. أو فينافي اليراع.
راجع VCert CLI لـ Venafi Trust Protection Platform أو VCert CLI لـ Venafi Control Plane أو VCert CLI لـ Venafi Firefly لبدء استخدام الأداة المساعدة لسطر الأوامر.
يتم اختبار إصدارات VCert باستخدام أحدث إصدار من Trust Protection Platform. يجب أن تكون الوظائف العامة لأحدث إصدار من VCert متوافقة مع Trust Protection Platform 17.3 أو أعلى. تتطلب الحقول المخصصة وتتبع المثيلات TPP 18.2 أو أعلى، وتتطلب مصادقة الرمز المميز TPP 20.1 أو أعلى.
قم بتكوين بيئة Go الخاصة بك وفقًا لـ https://golang.org/doc/install.
تحقق من تعيين متغير بيئة GOPATH بشكل صحيح
تنزيل الكود المصدري:
go get github.com/Venafi/vcert/v5
أو قبل Go 1.13
git clone https://github.com/Venafi/vcert.git $GOPATH /src/github.com/Venafi/vcert/v5
انتقل إلى الإصدار 1.11 مع تمكين وحدات go أو انتقل إلى الإصدار 1.13 وما فوق وتأكد من الاستنساخ خارج $GOPATH/src
git clone https://github.com/Venafi/vcert.git
أنشئ أدوات مساعدة لسطر الأوامر لأنظمة التشغيل Linux وmacOS وWindows:
make build
للحصول على نماذج التعليمات البرمجية للاستخدام البرمجي، يرجى مراجعة الملفات الموجودة في مجلد الأمثلة.
main.go
الخاص بك، قم بإجراء إعلانات الاستيراد التالية: import (
"github.com/Venafi/vcert/v5"
"github.com/Venafi/vcert/v5/pkg/certificate"
"github.com/Venafi/vcert/v5/pkg/endpoint"
)
&vcert.Config
الذي يحدد تفاصيل اتصال Venafi. تم تصميم الحلول عادةً للحصول على تلك التفاصيل من مخزن الأسرار أو ملف .ini أو متغيرات البيئة أو معلمات سطر الأوامر.NewClient
للفئة vcert باستخدام كائن التكوين.&certificate.Request
.GenerateRequest
الخاص بالعميل.RequestCertificate
الخاص بالعميل.RetrieveCertificate
الخاص بالعميل.vcert.Config
NewListener
مع قائمة المجالات كوسيطات. على سبيل المثال ("test.example.com:8443", "example.com")
net.Listener
الذي تم الحصول عليه كوسيطة لخوادم http.Serve
المضمنة أو خوادم https الأخرى.العينات في حالة يمكنك من خلالها إنشاء/تنفيذها باستخدام الأوامر التالية (بعد تعيين متغيرات البيئة التي تمت مناقشتها لاحقًا):
go build -o cli ./example
go test -v ./example -run TestRequestCertificate
View
، Read
، Write
، Create
، Revoke
(لإجراء الإلغاء)، Private Key Read
(لإجراء الالتقاط عندما يتم إنشاء خدمة CSR)تتبع متطلبات تعيين قالب CA بواسطة السياسة أفضل ممارسات Venafi طويلة الأمد والتي تلبي أيضًا هدف التصميم الخاص بنا للحفاظ على عملية طلب الشهادة بسيطة لمستخدمي VCert. إذا كنت تحتاج إلى القدرة على تحديد قالب CA مع الطلب، فيمكنك استخدام واجهات برمجة التطبيقات TPP REST ولكن يرجى العلم أن هذا يتعارض مع توصيات Venafi.
اختبارات الوحدة:
make test
تتطلب اختبارات التكامل لمنصة Trust Protection Platform وVenafi Control Plane الوصول إلى هذه المنتجات. يتم استخدام متغيرات البيئة لتحديد الإعدادات المطلوبة بما في ذلك بيانات الاعتماد. يتوفر مفتاح Venafi Control Plane API وأجزاء قيمة المنطقة (أي Application Name
Issuing Template API Alias
) بسهولة في واجهة الويب.
export TPP_URL=https://tpp.venafi.example/vedsdk
export TPP_USER=tpp-user
export TPP_PASSWORD=tpp-password
export TPP_ZONE= ' somesuggested_policy '
export TPP_ZONE_RESTRICTED= ' somelocked_policy '
export TPP_ZONE_ECDSA= ' someecdsa_policy '
make tpp_test
export CLOUD_URL=https://api.venafi.cloud/v1
export CLOUD_APIKEY=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
export CLOUD_ZONE= ' My ApplicationPermissive CIT '
export CLOUD_ZONE_RESTRICTED= ' Your ApplicationRestrictive CIT '
make cloud_test
تستخدم اختبارات الأداة المساعدة لسطر الأوامر ملفات ميزات Cucumber & Aruba.
لإجراء اختبارات لجميع الميزات بالتوازي:
make cucumber
لإجراء اختبارات لميزة محددة فقط:
make cucumber FEATURE=./features/basic/version.feature
الميزات المتوفرة هي:
basic
config
enroll
format
gencsr
renew
revoke
عند التشغيل، سيتم تنفيذ هذه الاختبارات في حاوية Docker الخاصة بها باستخدام إصدار Ruby من Cucumber.
سيقدم التشغيل التجريبي المكتمل تقريرًا عن عدد سيناريوهات الاختبار والخطوات التي تم اجتيازها أو فشلها أو تم تخطيها.
للحصول على شرح تفصيلي حول قواعد اللعبة وكيفية إنشائها، يرجى التحقق من هنا: Readme Playbook
ترحب Venafi بمساهمات مجتمع المطورين.
git clone [email protected]:youracct/vcert.git
git checkout -b your-branch-name
git commit -am ' Added some cool functionality '
git push origin your-branch-name
حقوق الطبع والنشر © Venafi، Inc. جميع الحقوق محفوظة.
تم ترخيص VCert بموجب ترخيص Apache، الإصدار 2.0. راجع الترخيص للحصول على نص الترخيص الكامل.
يرجى توجيه الأسئلة/التعليقات إلى [email protected].