Sobes.tech
Senior

Ar žinote būdus, kaip pristatyti paslaptis be Vault Agent Injector? Kaip saugoti šifruotas paslaptis Git?

sobes.tech AI

Atsakymas iš AI

Без использования Vault Agent Injector существуют несколько способов доставки секретов и хранения зашифрованных секретов в Git:

  1. Шифрование секретов перед коммитом в Git

    • Использование инструментов вроде git-crypt или BlackBox, которые позволяют шифровать определённые файлы в репозитории.
    • Ключи шифрования хранятся отдельно и предоставляются только доверенным пользователям.
  2. Использование KMS (Key Management Service)

    • Хранить секреты в зашифрованном виде, используя облачные KMS (AWS KMS, GCP KMS, Azure Key Vault).
    • В CI/CD процессе происходит расшифровка секретов с помощью KMS.
  3. Шифрование с помощью SOPS (Secrets OPerationS)

    • Инструмент от Mozilla, который позволяет шифровать YAML/JSON/ENV файлы с помощью KMS или PGP.
    • Файлы хранятся в репозитории в зашифрованном виде и расшифровываются при деплое.
  4. Доставка секретов через CI/CD

    • Секреты хранятся в защищённых переменных CI/CD систем (GitLab CI, GitHub Actions, Jenkins).
    • Во время сборки/деплоя секреты подставляются в окружение.
  5. Использование HashiCorp Vault API напрямую

    • Вместо агента можно писать код, который напрямую обращается к Vault для получения секретов.

Таким образом, хранение зашифрованных секретов в Git обычно реализуется через инструменты шифрования файлов (git-crypt, SOPS) с управлением ключами отдельно, а доставка секретов — через защищённые каналы и переменные окружения в CI/CD без необходимости использования Vault Agent Injector.