usar net leer example crear configuracion archivo app c# .net winforms email-integration

c# - net - ¿Cuál es el mejor mecanismo para almacenar la configuración de autenticación en una aplicación WinForms?



crear un archivo app.config en c# (2)

Tengo una aplicación que enviará correos electrónicos autenticados usando System.Net.Mail y System.Net.NetworkCredential mi pregunta es ¿cómo debo almacenar la contraseña que se necesita para crear un objeto NetworkCrednetial?

La aplicación no tiene un inicio de sesión, pero podría configurar una opción que permita al usuario ingresar sus credenciales de correo electrónico (en casi todos los casos, este será su inicio de sesión de Windows). No puedo usar Active Directory porque no todos los clientes lo usan.

Pude obtener la contraseña del usuario y luego conservarla en el registro de usuarios, un archivo o una base de datos. Obviamente tendré que encriptarlo. No estoy muy familiarizado con el cifrado, por lo que se apreciarán algunos indicadores si la gente piensa que es el mejor mecanismo.

Mi preferencia sería evitar tener que almacenar algo, así que, de todos modos, puedo tener que almacenar las credenciales, tal vez puedo obtenerlo desde el inicio de sesión actual o en otro lugar.


También puede usar la IU de Credenciales de Win32: existe una cantidad de ejemplos para usar esto desde .NET, incluido este en MSDN .


Para almacenar un nombre de usuario y contraseña (en Windows) use el DPAPI . La interfaz de .Net es las clases ProtectedData y ProtectedMemory.

Pero primero, podría probar si UseDefaultCredentials o DefaultNetworkCredentials funciona para su entorno.