Niente più password nei file YAML. Dynamic secrets, PKI interna, transit encryption, audit log nativo.
VAULT · open sourceHashiCorp Vault è il sistema di secret management più adottato a livello enterprise. Indirizza il problema che ogni azienda ha: dove finiscono le password? (Spoiler: in git, in confluence, sulle stickies del monitor.)
Storage backend cifrato (Consul, Postgres, Raft), auth method per ogni identità (K8s ServiceAccount, AWS IAM, AD, OIDC, AppRole, tokens), secret engine per ogni use case (KV statico, DB dynamic, PKI, transit encryption, SSH certificates, AWS STS).
Lo deployiamo HA su 3 nodi (Raft consensus), sealed/unsealed con auto-unseal su KMS Clodino Cloud, integrato con K8s via Vault Agent Injector o External Secrets Operator. Audit log su SIEM cliente.
Non solo password storage: rotation, PKI, encryption-as-a-service.
Credenziali DB generate al volo, TTL breve, revocate automaticamente. No più password lunghe.
Certificate authority per servizi interni. mTLS gratis, niente Let's Encrypt per ogni service.
Encryption-as-a-service: le app cifrano via API senza gestire chiavi. Rotation senza re-encrypt.
K8s SA, AWS IAM, AD, OIDC, AppRole. Ogni identità, un metodo nativo.
Vault Agent Injector annota i pod, monta i secret come file/env. Trasparente per le app.
Ogni richiesta loggata cifrata. Export su SIEM, retention per compliance.
› deployment.yaml metadata: annotations: vault.hashicorp.com/agent-inject: "true" vault.hashicorp.com/role: "checkout-api" vault.hashicorp.com/agent-inject-secret-db.txt: \ "database/creds/checkout-readwrite" vault.hashicorp.com/agent-inject-template-db.txt: | DB_USER={{ .Data.username }} DB_PASS={{ .Data.password }} › Container starts: › /vault/secrets/db.txt populated › DB user: v-kubernet-checkou-AbCd1234XyZ (TTL 1h) › rotation 5m before expiry · transparent
Setup Vault HA + External Secrets + dynamic secret DB + integrazione GitLab CI.