Senior
Weet je manieren om geheimen te leveren zonder Vault Agent Injector? Hoe bewaar je versleutelde geheimen in Git?
sobes.tech AI
Antwoord van AI
Без использования Vault Agent Injector существуют несколько способов доставки секретов и хранения зашифрованных секретов в Git:
-
Шифрование секретов перед коммитом в Git
-
Использование KMS (Key Management Service)
- Хранить секреты в зашифрованном виде, используя облачные KMS (AWS KMS, GCP KMS, Azure Key Vault).
- В CI/CD процессе происходит расшифровка секретов с помощью KMS.
-
Шифрование с помощью SOPS (Secrets OPerationS)
- Инструмент от Mozilla, который позволяет шифровать YAML/JSON/ENV файлы с помощью KMS или PGP.
- Файлы хранятся в репозитории в зашифрованном виде и расшифровываются при деплое.
-
Доставка секретов через CI/CD
- Секреты хранятся в защищённых переменных CI/CD систем (GitLab CI, GitHub Actions, Jenkins).
- Во время сборки/деплоя секреты подставляются в окружение.
-
Использование HashiCorp Vault API напрямую
- Вместо агента можно писать код, который напрямую обращается к Vault для получения секретов.
Таким образом, хранение зашифрованных секретов в Git обычно реализуется через инструменты шифрования файлов (git-crypt, SOPS) с управлением ключами отдельно, а доставка секретов — через защищённые каналы и переменные окружения в CI/CD без необходимости использования Vault Agent Injector.