Загрузить в HashiCorp Vault настройки можно так: ```sh vault kv put secret/org-ccalm-jwt \ jwt.secret=my-secret-value \ db.user=admin \ db.pass=123456 ``` Разбор параметров: 1. vault kv put – команда для записи ключей и значений в KV-хранилище Vault. 2. secret/org-ccalm-jwt – путь к секрету. * secret/ – это backend-хранилище (оно должно быть включено в Vault). * org-ccalm-jwt – имя секрета, под которым сохраняются параметры. 3. jwt.secret=my-secret-value – ключ jwt.secret со значением my-secret-value. 4. db.user=admin – ключ db.user со значением admin. 5. db.pass=123456 – ключ db.pass со значением 123456. # 🚀 Установка и настройка HashiCorp Vault на Windows ## 📌 1. Установка HashiCorp Vault 1. **Скачайте Vault CLI** с официального сайта: 🔗 [https://developer.hashicorp.com/vault/downloads](https://developer.hashicorp.com/vault/downloads) 2. Распакуйте архив и **добавьте путь к `vault.exe` в `PATH`**: - Кликните **ПКМ → Этот компьютер → Свойства → Дополнительные параметры системы**. - В **Переменные среды** добавьте путь к папке с `vault.exe`. 3. Откройте **cmd** или **PowerShell** и проверьте установку командой: ```sh vault --version ``` Если всё ОК, увидите версию Vault. Примерно такую: Vault v1.18.4 (503be623a3697e8c10c254dc87d26492c46753e1), built 2025-01-29T13:57:54Z --- ## 📌 2. Запуск Vault-сервера (разработческий режим) Чтобы локально запустить Vault в **dev-режиме** (без авторизации), выполните: ```sh vault server -dev ``` После запуска он покажет **root-токен** (сохраните его!): ```plaintext Unseal Key: 9OSMJSPNCs9IT/H5OzLz17jW/vogeCAWQbXy2K7LRPQ= Root Token: hvs.JDIyKgDMagA0WyIhLFQ4mAjZ ``` Теперь Vault работает по адресу: ```sh start http://127.0.0.1:8200 ``` --- ## 📌 3. Экспорт токена (чтобы не вводить каждый раз) Откройте **PowerShell** и выполните: ```sh $env:VAULT_ADDR="http://127.0.0.1:8200" $env:VAULT_TOKEN="hvs.JDIyKgDMagA0WyIhLFQ4mAjZ" ``` (Замените `hvs.JDIyKgDMagA0WyIhLFQ4mAjZ` на свой токен.) Теперь можно работать с Vault без ввода токена каждый раз. --- ## 📌 4. Запись значений в Vault на Windows Значения разделенные пробелами можно записать в вольт так: ```sh vault kv put secret/kz-istransit-jwt server.ssl.key-store-password=MFNX344yh4 ``` Выдаст примерно такое: ======== Secret Path ======== secret/data/kz-istransit-jwt ======= Metadata ======= Key Value --- ----- created_time 2025-02-24T12:49:45.7630328Z custom_metadata deletion_time n/a destroyed false version 1 --- ## 📌 5. Проверка сохранённых данных Чтобы посмотреть, что записано в Vault: ```sh vault kv get secret/kz-istransit-jwt ``` Если всё настроено правильно, вы увидите примерно такой вывод: ```plaintext ====== Metadata ====== Key Value --- ----- created_time 2025-02-24T12:00:00Z version 1 ====== Data ====== Key Value --- ----- db.pass 123456 db.user admin jwt.secret my-secret-value ``` --- ## 📌 6. Удаление данных из Vault Удаление данных: ```sh vault kv delete secret/org-ccalm-jwt ``` Полное уничтожение (без возможности восстановления): ```sh vault kv destroy -versions=1 secret/org-ccalm-jwt ``` --- ## 🎯 Итог ✅ Установили Vault CLI ✅ Запустили Vault сервер (`vault server -dev`) ✅ Экспортировали `VAULT_ADDR` и `VAULT_TOKEN` ✅ Записали настройки в Vault ✅ Проверили данные Теперь можно интегрировать Vault в Spring Boot 🚀