Vault и альтернативы
Vault — не единственный инструмент; разбираем, чем он отличается от популярных альтернатив и где они уместнее.
Управление секретами — спектр инструментов: от облачных управляемых сервисов до подходов «зашифрованный файл в git». Vault — самый универсальный, но не всегда самый простой.
Выбор зависит от среды, требований к динамике и готовности эксплуатировать инфраструктуру. Сравним Vault с тремя характерными альтернативами.
AWS Secrets Manager
Управляемый облачный сервис: хранит секреты, умеет ротацию через Lambda, интегрирован с IAM. Главный плюс — не нужно эксплуатировать: ни unseal, ни кластера, ни апгрейдов.
| Аспект | Vault | AWS Secrets Manager |
| эксплуатация | сами (или HCP) | управляемый |
| мультиоблако/он-прем | да | привязка к AWS |
| динамические секреты | широкий набор движков | ограниченнее, через Lambda |
| transit/PKI/SSH | есть | нет такого охвата |
Если вы целиком в AWS и вам хватает статики с ротацией — Secrets Manager проще. Если нужны мультиоблако, transit, PKI, богатая динамика — Vault.
Sealed Secrets
Инструмент для Kubernetes: позволяет безопасно хранить зашифрованные секреты прямо в git. Контроллер в кластере расшифровывает их в обычные k8s Secret. Это GitOps-подход: секрет шифруется публичным ключом контроллера, и зашифрованный SealedSecret не страшно коммитить.
Ниша узкая, но удобная: декларативные секреты в репозитории манифестов. Минусы — это по-прежнему статика, без динамических кредов, transit, аудита обращений и централизованного отзыва. Vault решает гораздо больше, но требует отдельной инфраструктуры.
SOPS
SOPS (Secrets OPerationS) шифрует значения в YAML/JSON-файлах, используя ключи из KMS/age/PGP. Файл лежит в git зашифрованным, а расшифровывается при деплое тем, у кого есть ключ. Это «git как хранилище» с понятным diff'ом по структуре.
SOPS лёгок и не требует сервера, но это снова статика: нет динамики, leasing, аудита чтения и мгновенного отзыва. Хорош для конфигов и небольших команд, проигрывает Vault в безопасности секретов в рантайме.
Как выбирать
- Динамические креды, transit, PKI, мультиоблако → Vault.
- Целиком AWS, не хочется эксплуатации → AWS Secrets Manager (или HCP Vault как управляемый Vault).
- GitOps в Kubernetes, статика в манифестах → Sealed Secrets.
- Шифрование конфигов в git, малая команда → SOPS.
На практике инструменты сочетают: SOPS/Sealed Secrets для bootstrap-секретов и Vault для динамики и рантайма.
Частые ошибки
- Брать Vault ради одной статики — переусложнение; хватило бы Secrets Manager или SOPS.
- Ждать от Sealed Secrets/SOPS динамики и аудита — это статические подходы.
- Игнорировать стоимость эксплуатации Vault — кластер, unseal, апгрейды требуют людей.
Итог
- Vault — самый универсальный: динамика, transit, PKI, мультиоблако, но требует эксплуатации.
- AWS Secrets Manager управляемый, но привязан к AWS и беднее по охвату.
- Sealed Secrets и SOPS — лёгкая статика для git/GitOps без динамики и аудита чтения.