vault-plugin-secrets-qdrant adalah plugin Hashicorp Vault yang memperluas lemari besi dengan mesin rahasia untuk Qdrant untuk Auth JWT.
Ini mampu menghasilkan Token Qdrant Credentials/JWT yang ditandatangani dengan kontrol akses granular.
Peran disimpan dalam lemari besi dan dapat dicabut kapan saja.
Token JWT yang dihasilkan bersifat sesaat dan tanpa kewarganegaraan; Mereka tidak disimpan dalam lemari besi tetapi dapat terikat pada peran dan tidak valid ketika peran dihapus.
Plugin ini juga dapat membuat/memperbarui/menghapus data peran ke server qdrant
Mesin Rahasia Qdrant menghasilkan kredensial JWT secara dinamis.
Plugin mendukung beberapa sumber daya, termasuk: Config, Role dan JWT.
Harap baca dokumentasi Qdrant resmi untuk memahami konsep token dan akses serta proses otentikasi.
Tangan yang penuh dengan sumber daya dapat didefinisikan dalam plugin Vault:
Sumber Daya config Tipe Mewakili Konfigurasi Instance Database untuk Rahasia.
| Jalur entitas | Keterangan | Operasi |
|---|---|---|
| qdrant/config | Daftar instance | daftar |
| qdrant/config/ | Kelola Config Config | Tulis, baca, hapus |
Sumber daya role tipe mewakili konfigurasi peran database untuk rahasia.
| Jalur entitas | Keterangan | Operasi |
|---|---|---|
| qdrant/peran/ | Daftar peran untuk | daftar |
| Qdrant/Role // | Kelola Konfigurasi Peran Contoh | Tulis, baca, hapus |
Sumber daya Type jwt mewakili Token JWT Database.
| Jalur entitas | Keterangan | Operasi |
|---|---|---|
| qdrant/jwt // | Menghasilkan token untuk peran | membaca |
Ada argumen yang dapat diteruskan ke jalur untuk config/ (instance database), role/ .
| Kunci | Jenis | Diperlukan | Contoh | Keterangan |
|---|---|---|---|---|
| url | bool | BENAR | Qdrant: 6334 | Alamat URL instance Qdrant (Protokol GRPC) |
| sig_key | rangkaian | BENAR | Key Secret | Kunci rahasia untuk menandatangani dan memverifikasi (API-Key Server) token. |
| sig_alg | rangkaian | BENAR | HS256 | Algoritma untuk memecahkan kode token. |
| jwt_ttl | rangkaian | BENAR | 300 -an | TTL default misalnya token (dapat ditimpa dalam peran) |
| tls | bool | PALSU | BENAR | Jika diatur ke True - Vault akan membuka koneksi TLS GRPC ke Qdrant |
| ca | rangkaian | PALSU | eyjhbgc ... | BASE64 Ditkodekan CA CA CERT UNTUK TLS |
Catatan: Saat Anda menghapus konfigurasi instan, semua peran terkait akan secara otomatis dihapus dari instance Qdrant.
| Kunci | Jenis | Diperlukan | Contoh | Keterangan |
|---|---|---|---|---|
| jwt_ttl | rangkaian | PALSU | 300 -an | TTL misalnya token |
| klaim | json | BENAR | Atribut Akses dan Filter (lihat Qdrant Doc) |
Catatan: Sinkronisasi Peran Vault dengan Koleksi Instance Qdrant sys_roles secara otomatis
Contoh claims
{
"claims":{
"value_exists": {
"collection": "sys_roles",
"matches": [
{ "key": "role", "value": "write2" }
]
},
"access": [
{
"collection": "my_collection",
"access": "r"
}
]
}
}
Untuk menggunakan plugin ini, Anda perlu mendaftarkannya dengan Vault. Konfigurasikan server Vault Anda untuk memiliki konfigurasi plugins_directory yang valid.
Catatan: Anda mungkin ingin mengatur api_addr ke alamat mendengarkan Anda dan disable_mlock ke true dalam konfigurasi vault untuk dapat menggunakan plugin.
Unduh rilis stabil terbaru dari halaman rilis dan masukkan ke plugins_directory dari server Vault Anda.
Untuk menggunakan plugin Vault, Anda memerlukan jumlah SHA256 plugin.
Contoh Cara Mendaftarkan Plugin:
SHA256SUM=$(sha256sum vault-plugin-secrets-qdrant | cut -d' ' -f1)
vault plugin register -sha256 ${SHA256SUM} secret vault-plugin-secrets-qdrant
vault secrets enable -path=qdrant vault-plugin-secrets-qdrant Catatan: Anda dapat menggunakan bendera -tls-skip-verify jika Anda menggunakan sertifikat yang ditandatangani sendiri.
$ make $ make setup-env$ make tests$ make e2e$ make teardown-env$ make cleanKontribusi kode sangat disambut .
git checkout -b AmazingFeature )git push origin AmazingFeature )main .