password net letras generar generador create contraseñas contraseña codigos aleatorios aleatorias c# .net windows security passwords

net - generar contraseñas c#



Almacenamiento de contraseñas de Windows (2)

La respuesta está aquí:

¿Cómo almacenar contraseñas en la aplicación Winforms?

Estoy escribiendo (en C # con .NET 3.5) una aplicación administrativa que sondeará varios sistemas Windows para varios bits de datos. En muchos casos, utilizará WMI, pero en algunos casos puede necesitar leer el registro remoto o ejecutar remotamente algún comando o script en el sistema sondeado. Este sondeo se realizará a intervalos periódicos, por lo general todas las noches, pero se puede configurar para que ocurra más (o menos) con frecuencia. Por lo tanto, la encuesta podría realizarse cada 10 minutos o tan raramente como una vez al mes. Tiene que suceder de forma automatizada, sin intervención humana.

Estas funciones requerirán acceso de nivel administrativo a los sistemas encuestados. Ahora, espero que en la mayoría de los casos de uso, habrá un dominio, y la aplicación de sondeo se puede ejecutar como un servicio con privilegios de administrador de dominio (o equivalente), lo que significa que no tengo que preocuparme por almacenar contraseñas: la configuración del administrador la aplicación definirá el nombre de usuario / contraseña del servicio a través de los mecanismos estándar de Windows.

Pero siempre hay algunas ovejas negras por ahí. El programa puede ejecutarse en entornos sin dominio, o en los casos en que algunos sistemas sondeados no son miembros del dominio. En estos casos, tendremos que definir un nombre de usuario y una contraseña, almacenarlos de forma segura y luego invocar este par usuario / pase en el momento en que sondeamos el sistema. Así que tenga en cuenta que, en este caso, el programa que se está escribiendo es el usuario que envía la contraseña al sistema de autenticación.

No estoy seguro de si necesitaré usar un hash reversible que luego descifraré en texto plano en el momento del uso, o si hay algún mecanismo de Windows que me permita almacenar y luego volver a utilizar el hash solamente. Obviamente, el segundo mecanismo es preferible; Me gustaría que mi programa nunca conozca el valor del texto sin formato de la contraseña o que lo sepa por el menor tiempo posible.

Necesito sugerencias para formas inteligentes y seguras de lograr esto.

¡Gracias por mirar!


Parece que su programa debe suplantar a un usuario que no sea el contexto bajo el cual ya se está ejecutando. Sin embargo, parece un proceso bastante automatizado, pero si no lo es, ¿no puede simplemente pedirle al administrador que ingrese su nombre de usuario y contraseña en el momento en que se está sondeando esta computadora ''oveja negra''?