Ssylka

Безопасное хранение секретов в docker-контейнерах

Использование переменных окружения для хранения секретов – небезопасное решение из-за их видимости при docker inspect, в логах приложения и истории docker history. Альтернативой являются Docker Secrets, подходящие для Docker Swarm, где секреты хранятся зашифрованными и доступны контейнерам через файлы /run/secrets. BuildKit позволяет передавать секреты на этапе сборки, но не для рантайма.
Безопасное хранение секретов в docker-контейнерах
Изображение носит иллюстративный характер

HashiCorp Vault предоставляет централизованное хранилище с гибкими политиками доступа, динамическими секретами и возможностью обновления без перезагрузки. Аналогичные возможности доступны в AWS Secrets Manager, Google Secret Manager и Azure Key Vault. Vault интегрируется через Vault Agent или API.

В Docker Compose можно использовать комбинацию Vault и docker-compose.override.yml, предварительно получая секреты с помощью скриптов. Важно не коммитить секреты в исходный код, минимизировать время жизни секретов, сегментировать доступ, вести журналы и шифровать все данные. Обновление секретов без перезагрузки достигается с помощью агентов.


Новое на сайте