Attualmente sto gestendo e ri-factoring un software che è stato utilizzato nella mia azienda da oltre un decennio. Uno degli elementi di questa applicazione è una sorta di modalità admin o power-user che fornisce elementi quali input aggiuntivi / interni e la possibilità di disattivare i limiti di input.
Storicamente questa modalità è stata attivata inserendo un file con un nome specifico in una posizione specifica nella directory di sistema di Windows (entrambi i quali erano codificati nell'applicazione), il file si chiamava "qualcosa.DLL", anche se era vuoto File ASCII e non una dll.
Di recente ho quindi aggiunto del codice e un piccolo modulo modale che consente all'utente di inserire una password dell'amministratore per attivare questa funzionalità. È una password impostata, non specifica dell'utente. Quando viene immessa la password corretta, fa la stessa cosa creando un "file chiave" nella directory principale dell'applicazione in modo che il programma possa avviarsi in modalità admin se quel file è presente.
Ora al manager del dipartimento per cui questo software è principalmente destinata questa idea non piace così tanto. Pensa che se abbiamo solo una semplice password preimpostata che "uscirà facilmente", e non vuole che gli utenti inesperti accedano a queste funzionalità extra.
Quindi la mia domanda è: quali altri metodi ci sono per fornire questo tipo di accesso che sarebbe un po 'più sicuro? Praticamente sono solo io quando si tratta di mantenere e gestire questo software, quindi tutto ciò che non è quasi completamente integrato o automatizzato non sarebbe di aiuto (come l'invio di richieste di "chiavi di licenza" o qualcosa di simile).
Note: questa applicazione è scritta in VB.NET (.NET 4.0) e al momento sto pianificando di utilizzare la distribuzione click-once al termine della nuova versione.