Actualmente estoy administrando y refabricando una pieza de software que se ha utilizado en mi empresa durante más de una década. Uno de los elementos de esta aplicación es una especie de modo de administrador o usuario avanzado que proporciona elementos como entrada adicional / interna, así como la capacidad de desactivar los límites de entrada.
Históricamente, este modo se ha activado colocando un archivo con un nombre específico en un lugar específico en el directorio del sistema de Windows (ambos codificados en la aplicación), el archivo se llamaba 'something.DLL', a pesar de que estaba vacío Archivo ASCII y no un dll.
Así que recientemente agregué un código y una pequeña forma modal que permite al usuario ingresar una contraseña de administrador para activar esta funcionalidad. Es una contraseña establecida, no específica del usuario. Cuando se ingresa la contraseña correcta, hace lo mismo al crear un 'archivo de clave' en el directorio raíz de las aplicaciones para que el programa pueda iniciarse en modo administrador si ese archivo está presente.
Ahora, al gerente del departamento para el que es principalmente este software no le gusta mucho esa idea. Él piensa que si solo tenemos una contraseña simple y preestablecida, se 'saldrá' fácilmente, y no quiere que los usuarios inexpertos accedan a esas funciones adicionales.
Entonces, mi pregunta es, ¿qué otros métodos existen para proporcionar este tipo de acceso que sería algo más seguro? Soy solo yo cuando se trata de mantener y administrar este software, por lo que cualquier cosa que no esté casi completamente integrada o automatizada no ayudaría (como enviar solicitudes de 'claves de licencia' o algo similar).
Notas: Esta aplicación está escrita en VB.NET (.NET 4.0), y actualmente estoy planeando usar la implementación de hacer clic una vez cuando finalice la nueva versión.