Abbiamo un grande codice legacy che funziona per grandi società che si connettono a più database remoti / locali.
I file di configurazione con IP, nome e password per la connessione a diversi database ora vengono gestiti manualmente. Abbiamo questi file in git, ma le nostre password ruotano su una pianificazione diversa rispetto alla nostra implementazione, quindi dobbiamo modificare direttamente le configurazioni sui nostri server (produzione, UAT, testing, sviluppo).
Questo è un compito davvero noioso e gli errori vengono visualizzati regolarmente. Diversi server sono collegati a diversi database e la connessione più volte con password errata bloccherà l'id.
Stiamo pensando di creare un servizio per distribuire i file di configurazione nei server. L'idea è che ogni mezzanotte alcuni script bash sul server accedano a questo servizio e riscrivano i file di configurazione con i dati forniti da questo servizio.
Quindi, abbiamo solo bisogno di memorizzare il nome del server (per comunicare al servizio, di quale configurazione abbiamo bisogno) e la chiave SSH per connettersi al servizio.
La domanda è: questa è una buona soluzione? Vedo il problema che quando una chiave SSH viene compromessa, tutte le nostre password sono disponibili. C'è qualche altro modo più standard per risolvere il nostro problema?