Выбор ответа Middle ConfigMap и Secret обновлено

Секреты и GitOps

Вопрос

Все манифесты хранятся в git и применяются Argo CD. Как управлять паролем базы, чтобы его не было в репозитории в открытом виде?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: Держать в Vault и синхронизировать External Secrets Operator, или SealedSecret/SOPS в git. В git попадает либо ссылка на секрет во внешнем хранилище (ExternalSecret), либо зашифрованный объект, который расшифрует только контроллер в кластере (Sealed Secrets) или инструмент с ключом (SOPS). base64 не защита, ConfigMap для…

Варианты ответа

  1. Хранить Secret в git как есть: base64 скрывает значение, а доступ к репозиторию и так ограничен
  2. Хранить пароль в ConfigMap и ограничить RBAC-права на чтение этого ConfigMap в namespace
  3. Передавать пароль аргументом командной строки контейнера из CI, минуя манифесты в git
  4. Держать в Vault и синхронизировать External Secrets Operator, или SealedSecret/SOPS в gitправильный ответ

Разбор

В git попадает либо ссылка на секрет во внешнем хранилище (ExternalSecret), либо зашифрованный объект, который расшифрует только контроллер в кластере (Sealed Secrets) или инструмент с ключом (SOPS). base64 не защита, ConfigMap для секретов не предназначен, а аргументы командной строки видны в описании пода и ps.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.