Как я могу безопасно сохранить свои секретные ключи и пароль в моей системе контроля версий?

Я сохраняю важные настройки, такие как имена хостов и порты серверов разработки и производства, в моей системе контроля версий. Но я знаю, что этоbad practice хранитьsecrets (например, закрытые ключи и пароли базы данных) в хранилище VCS.

Но пароли - как и любой другой параметр - похоже, они должны быть версионными. И чтоis правильный способ держать версию паролей под контролем?

Я предполагаю, что это будет включать в себя сохранениеsecrets в своих «настройках секретов» файл и имеющийthat файл зашифрован и с контролем версий. Но какие технологии? И как это сделать правильно? Есть ли лучший способ сделать это?

Я задаю вопрос в целом, но в моем конкретном случае я хотел бы хранить секретные ключи и пароли дляDjango/Python использование сайтаgit а такжеgithub.

Кроме того,ideal Решение сделало бы что-нибудь волшебное, когда я нажал / потянул с помощью git - например, если файл зашифрованных паролей изменился, запускается скрипт, который запрашивает пароль и расшифровывает его на место.

РЕДАКТИРОВАТЬ: Для ясности яam спрашивая о том, где хранитьproduction секреты.

Ответы на вопрос(17)

Ваш ответ на вопрос