Files
org.ccalm.jwt/HashiCorp_Vault.md
2025-02-26 09:12:45 +05:00

4.3 KiB
Raw Blame History

Загрузить в HashiCorp Vault настройки можно так:

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
  2. Распакуйте архив и добавьте путь к vault.exe в PATH:
    • Кликните ПКМ → Этот компьютер → Свойства → Дополнительные параметры системы.
    • В Переменные среды добавьте путь к папке с vault.exe.
  3. Откройте cmd или PowerShell и проверьте установку командой:
    vault --version
    
    Если всё ОК, увидите версию Vault. Примерно такую: Vault v1.18.4 (503be623a3697e8c10c254dc87d26492c46753e1), built 2025-01-29T13:57:54Z

📌 2. Запуск Vault-сервера (разработческий режим)

Чтобы локально запустить Vault в dev-режиме (без авторизации), выполните:

vault server -dev

После запуска он покажет root-токен (сохраните его!):

Unseal Key: 9OSMJSPNCs9IT/H5OzLz17jW/vogeCAWQbXy2K7LRPQ=
Root Token: hvs.JDIyKgDMagA0WyIhLFQ4mAjZ

Теперь Vault работает по адресу:

http://127.0.0.1:8200

📌 3. Экспорт токена (чтобы не вводить каждый раз)

Откройте PowerShell и выполните:

$env:VAULT_ADDR="http://127.0.0.1:8200"
$env:VAULT_TOKEN="hvs.JDIyKgDMagA0WyIhLFQ4mAjZ"

(Замените hvs.JDIyKgDMagA0WyIhLFQ4mAjZ на свой токен.)

Теперь можно работать с Vault без ввода токена каждый раз.


📌 4. Запись значений в Vault на Windows

Если нужно с версионированием то Используйте команду:

vault kv put secret/org-ccalm-jwt jwt.secret=my-secret-value db.user=admin db.pass=123456

Если у вас KV v1, используйте:

vault write secret/org-ccalm-jwt jwt.secret=my-secret-value db.user=admin db.pass=123456

📌 5. Проверка сохранённых данных

Чтобы посмотреть, что записано в Vault:

vault kv get secret/org-ccalm-jwt

Если всё настроено правильно, вы увидите примерно такой вывод:

====== 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

Удаление данных:

vault kv delete secret/org-ccalm-jwt

Полное уничтожение (без возможности восстановления):

vault kv destroy -versions=1 secret/org-ccalm-jwt

🎯 Итог

Установили Vault CLI
Запустили Vault сервер (vault server -dev)
Экспортировали VAULT_ADDR и VAULT_TOKEN
Записали настройки в Vault
Проверили данные

Теперь можно интегрировать Vault в Spring Boot 🚀