Sto scrivendo test automatici per un'applicazione web che verrà eseguita periodicamente durante la notte e sto riscontrando un problema di sicurezza moderato.
Per rendere completi i test, spero di includere dati in tempo reale come input di test piuttosto che fare affidamento esclusivamente su dati fittizi generati appositamente per questi test (ciò renderebbe il test sostanzialmente più robusto). Tuttavia, questa è una sfida perché questi test sono archiviati su un server Git pubblico (alla mia azienda) e devono essere universalmente accessibili. Tuttavia, non tutti i dipendenti dispongono delle autorizzazioni per visualizzare i dati in tempo reale utilizzati in questi test. Di conseguenza sto cercando di trovare un modo per nascondere questi dati in tempo reale in modo che possa essere utilizzato in fase di esecuzione dall'automazione (in questo caso RobotFramework che esegue Selenium), ma non può essere visualizzato / accessibile da un utente che abbassa Git contenente repository.
Speravo di crittografare i dati memorizzati e di decrittografarli solo al runtime dell'automazione dei test. Tuttavia, ciò richiederebbe che la suite di automazione del test disponga di credenziali per decrittografare i dati crittografati, il che, in primo luogo, vanifica lo scopo della crittografia. Questi test automatici dovranno essere eseguiti automaticamente durante la notte, il che impedisce a un utente umano di inserire la password per decrittografare i dati.
Di conseguenza, mi chiedo se ciò che sto cercando di fare sia concettualmente possibile e come potrei farlo. Il mio miglior pensiero è forse quello di trovare un modo per fornire credenziali di decrittazione all'agente che esegue i test, ma questo è logisticamente complicato (e anche l'agente bob potrebbe dover essere pubblicamente accessibile) e sono curioso di sapere se c'è un altro modo.
Non sono un esperto in sicurezza (anche se capisco le basi) e quindi ogni suggerimento è benvenuto.
Grazie