← Katalog
E I A C

Vault

Security-as-Code

Zarządzanie sekretami, szyfrowaniem i dostępem — z kodu i API.

★ 32 000 BUSL-1.1 #security#secrets#encryption#hashicorp

Vault centralizuje sekrety (klucze API, hasła, certyfikaty) i udostępnia je aplikacjom przez API, zamiast trzymać je w plikach czy zmiennych środowiskowych. Potrafi generować sekrety dynamicznie i krótkożyciowo (np. czasowe dane dostępowe do bazy), szyfrować dane „as a service” oraz egzekwować polityki dostępu. Konfigurację — politykę, silniki sekretów, role — opisujesz deklaratywnie, więc bezpieczeństwo też staje się kodem.

Kiedy używać

  • Chcesz wyeliminować sekrety z repo i plików konfiguracyjnych.
  • Potrzebujesz krótkożyciowych, automatycznie rotowanych poświadczeń.
  • Egzekwujesz dostęp do sekretów politykami (least privilege).

Przykład użycia

vault kv put secret/eiac/db password="s3cret"
vault kv get -field=password secret/eiac/db
# polityka dostępu jako kod
path "secret/data/eiac/*" {
  capabilities = ["read"]
}

Aplikacja uwierzytelnia się (np. tokenem K8s) i pobiera sekret w runtime — nic nie ląduje w repo.

Warto wiedzieć

  • Provisioning Vaulta zautomatyzujesz Terraform/OpenTofu (provider Vault).
  • Dynamiczne sekrety mocno ograniczają „blast radius” wycieku.
  • Otwarta alternatywa po zmianie licencji na BUSL: OpenBao (fork MPL-2.0).