Деплой и инфра
Secrets at deploy: тест на воспроизведение
Воспроизведение из памяти эффективнее перечитывания. Для каждого промпта проговорите или запишите полный ответ по памяти прежде, чем открыть модельный — именно усилие припоминания закрепляет модель угроз.
Восстановите ключевые механизмы юнита — гигиена образа, ловушка base64, etcd at rest, инъекция env против файлов, sealed secrets для GitOps и dynamic rotation — не подглядывая в урок.
- 01Почему secret никогда не должен попадать на этапе сборки и почему удаление его в позднем слое Dockerfile не помогает?
- 02Коллега говорит: «наши Kubernetes Secrets безопасны, потому что значения закодированы в base64». Точно поправьте его и назовите настоящие защиты.
- 03Что именно защищает включение etcd encryption at rest и в какую ловушку многие команды попадают сразу после включения?
- 04Почему многие команды инъецируют secrets как смонтированные файлы, а не переменные окружения, и что это даёт?
- 05GitOps-команде нужно закоммитить что-то, чтобы Argo CD применил. Сравните base64 Secret, ConfigMap и Sealed Secret для этого.
- 06Опишите лестницу обращения с секретами, которую применяет senior, от самого безопасного, и объясните, почему dynamic короткоживущие credentials стоят на сильном конце.
Если вы смогли восстановить каждый ответ по памяти, у вас есть спина юнита: secret попадает внутрь на деплое или в рантайме и никогда в образе; base64 — это кодирование, не шифрование; для etcd нужно настроить encryption at rest и переписать существующие Secrets; file mounts сужают поверхность утечки и ротируют на месте там, где env-переменные текут и замораживаются; Sealed Secrets дают коммитируемый GitOps-артефакт; а dynamic короткоживущие credentials делают украденный secret бесполезным до истечения срока.