2010-04-21 14 views
14

Ahora mi equipo está trabajando en un proyecto que involucra una aplicación de Windows (C#).Cómo almacenar la configuración del usuario (nombre de usuario, contraseña) en una aplicación de Windows para el usuario que inició sesión actualmente

La aplicación tiene una opción para guardar el nombre de usuario y la contraseña en la máquina del cliente para el usuario con sesión iniciada actualmente. El usuario puede iniciar la aplicación sin ingresar el nombre de usuario y la contraseña. Por favor, compruebe la instantánea de mi requerimiento.

Por favor, sugiera un buen ejemplo o referencia.

Alt text http://www.freeimagehosting.net/uploads/0ff58473e0.jpg

+1

¿cuál es su pregunta? – Peter

+0

Cuando el usuario hace clic en la casilla de verificación con la etiqueta "Recordarme". La aplicación debe almacenar nombre de usuario y contraseña en el equipo cliente para el usuario actual de inicio de sesión. De esta manera, el mismo usuario puede iniciar la aplicación sin dar nombre de usuario y contraseña – amexn

+0

solución sugerida por Bus] (http://stackoverflow.com/questions/2681580/how-to-store-user-settings-username-password-in-a-windows-application-for-the/2681748#2681748) con encriptación en la contraseña puede tener algún valor. – sanbornc

Respuesta

0

Si usted está buscando una solución sencilla, ahorrando el nombre de usuario y contraseña en la configuración del usuario funcionaría. Sin embargo, este enfoque no es muy seguro porque cualquier otro usuario con privilegios suficientes en esta máquina podría simplemente leer la configuración guardada y robar sus datos de inicio de sesión.

20

Para conservar las credenciales del usuario de forma fácil y segura, puede escribirlas en el archivo de configuración de la aplicación utilizando la clase ConfigurationManager, proteger la contraseña con la clase SecureString y cifrarla con herramientas en el espacio de nombres Criptografía.

Editar: Esto podría ayudar: Encrypting Passwords in a .NET app.config File

+0

+1 para asegurarlo y encriptarlo Nunca guarde la contraseña como una cadena clara. – Sagar

+0

sé que esto es bastante viejo, pero tengo el mismo problema con una pregunta. si guardo el nombre de usuario y la contraseña en app.config no puedo cambiarlo en tiempo de ejecución porque la aplicación está almacenada en archivos de programa y podría haber problemas de acceso al archivo ... ¿cómo puedo almacenar un nombre de usuario y contraseña localmente con la capacidad? para cambiarlo en tiempo de ejecución? –

+0

+1 :) ¡Servidor y encriptación! – sv88erik

1

Aquí está una clase you can download y posiblemente usar. Utiliza la API de credenciales de Windows y proporciona un diálogo, muy parecido al diálogo de credenciales en Windows, que le permite guardar credenciales.

Fue una prueba de concepto que hice, pero nunca fue necesario en una aplicación de producción. Así que use bajo su propio riesgo :)

+0

Creo que esta clase será * muy * similar al código que encontrarás en el enlace @ho posted. – codeConcussion

Cuestiones relacionadas