Proyek sumber terbuka ini didukung komunitas. Untuk melaporkan masalah atau berbagi ide, gunakan Issues ; dan jika Anda memiliki saran untuk memperbaiki masalah ini, harap sertakan detailnya juga. Selain itu, gunakan Permintaan Tarik untuk menyumbangkan perbaikan bug aktual atau usulan peningkatan. Kami menyambut dan menghargai semua kontribusi. Punya pertanyaan atau ingin mendiskusikan sesuatu dengan tim kami? Bergabunglah dengan kami di Slack !
VCert adalah pustaka Go, SDK, dan utilitas baris perintah yang dirancang untuk menyederhanakan pembuatan kunci dan pendaftaran identitas mesin (juga dikenal sebagai sertifikat dan kunci SSL/TLS) yang mematuhi kebijakan keamanan perusahaan dengan menggunakan Venafi Trust Protection Platform atau Venafi Control Plane atau Venafi Kunang-kunang.
Lihat VCert CLI untuk Venafi Trust Protection Platform atau VCert CLI untuk Venafi Control Plane atau VCert CLI untuk Venafi Firefly untuk memulai dengan utilitas baris perintah.
Rilis VCert diuji menggunakan Trust Protection Platform versi terbaru. Fungsi umum rilis VCert terbaru harus kompatibel dengan Trust Protection Platform 17.3 atau lebih tinggi. Bidang Khusus dan Pelacakan Instans memerlukan TPP 18.2 atau lebih tinggi, dan Otentikasi Token memerlukan TPP 20.1 atau lebih tinggi.
Konfigurasikan lingkungan Go Anda sesuai dengan https://golang.org/doc/install.
Verifikasi bahwa variabel lingkungan GOPATH diatur dengan benar
Unduh kode sumber:
go get github.com/Venafi/vcert/v5
atau sebelum Go 1.13
git clone https://github.com/Venafi/vcert.git $GOPATH /src/github.com/Venafi/vcert/v5
Gunakan versi 1.11 dengan modul go diaktifkan atau gunakan versi 1.13 dan yang lebih baru, pastikan untuk mengkloning di luar $GOPATH/src
git clone https://github.com/Venafi/vcert.git
Bangun utilitas baris perintah untuk Linux, macOS, dan Windows:
make build
Untuk contoh kode penggunaan terprogram, harap tinjau file di folder contoh.
main.go
Anda, buat deklarasi impor berikut: import (
"github.com/Venafi/vcert/v5"
"github.com/Venafi/vcert/v5/pkg/certificate"
"github.com/Venafi/vcert/v5/pkg/endpoint"
)
&vcert.Config
yang menentukan detail koneksi Venafi. Solusi biasanya dirancang untuk mendapatkan detail tersebut dari brankas rahasia, file .ini, variabel lingkungan, atau parameter baris perintah.NewClient
dari kelas vcert dengan objek konfigurasi.&certificate.Request
.GenerateRequest
klien.RequestCertificate
klien.RetrieveCertificate
klien.vcert.Config
NewListener
dengan daftar domain sebagai argumen. Misalnya ("test.example.com:8443", "example.com")
net.Listener
yang didapat sebagai argumen ke http.Serve
bawaan atau server https lainnya.Sampel berada dalam keadaan di mana Anda dapat membuat/mengeksekusinya menggunakan perintah berikut (setelah mengatur variabel lingkungan yang dibahas nanti):
go build -o cli ./example
go test -v ./example -run TestRequestCertificate
View
, Read
, Write
, Create
, Revoke
(untuk tindakan pencabutan), dan Private Key Read
(untuk tindakan pengambilan ketika CSR dihasilkan layanan)Persyaratan agar Templat CA ditetapkan berdasarkan kebijakan mengikuti praktik terbaik Venafi yang telah lama ada yang juga memenuhi tujuan desain kami untuk menjaga proses permintaan sertifikat tetap sederhana bagi pengguna VCert. Jika Anda memerlukan kemampuan untuk menentukan Templat CA dengan permintaan tersebut, Anda dapat menggunakan TPP REST API tetapi harap diperhatikan bahwa ini bertentangan dengan rekomendasi Venafi.
Tes unit:
make test
Uji integrasi untuk Trust Protection Platform dan Venafi Control Plane memerlukan akses ke produk tersebut. Variabel lingkungan digunakan untuk menentukan pengaturan yang diperlukan termasuk kredensial. Kunci Venafi Control Plane API dan fragmen nilai zona (yaitu Application Name
Issuing Template API Alias
) sudah tersedia di antarmuka web.
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
Tes utilitas baris perintah menggunakan file fitur Mentimun & Aruba.
Untuk menjalankan pengujian semua fitur secara paralel:
make cucumber
Untuk menjalankan pengujian hanya untuk fitur tertentu:
make cucumber FEATURE=./features/basic/version.feature
Fitur yang tersedia adalah:
basic
config
enroll
format
gencsr
renew
revoke
Saat dijalankan, pengujian ini akan dijalankan di container Dockernya sendiri menggunakan Mentimun versi Ruby.
Uji coba yang telah selesai akan melaporkan jumlah skenario pengujian dan langkah-langkah yang lolos, gagal, atau dilewati.
Untuk penjelasan detail mengenai playbook dan cara pembuatannya, silakan cek di sini: Readme Playbook
Venafi menyambut baik kontribusi dari komunitas pengembang.
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
Hak Cipta © Venafi, Inc. Semua hak dilindungi undang-undang.
VCert dilisensikan di bawah Lisensi Apache, Versi 2.0. Lihat LISENSI untuk teks lisensi lengkap.
Silakan arahkan pertanyaan/komentar ke [email protected].