Tengo un código como este en una aplicación de winforms que estaba escribiendo para consultar el cupo de almacenamiento del buzón de un usuario.¿Cómo almacenar contraseñas en la aplicación Winforms?
DirectoryEntry mbstore = new DirectoryEntry(
@"LDAP://" + strhome,
m_serviceaccount,
[m_pwd],
AuthenticationTypes.Secure);
No importa qué enfoque que trataron (como SecureString
), soy fácilmente capaz de ver la contraseña (m_pwd) ya sea utilizando la pestaña del reflector o el uso de cadenas de explorador de procesos para el ejecutable.
Sé que podría poner este código en el servidor o reforzar la seguridad mediante mecanismos como delegación y otorgando solo los privilegios necesarios a la cuenta de servicio.
¿Alguien puede sugerir una forma razonablemente segura de almacenar la contraseña en la aplicación local sin revelar la contraseña a los piratas informáticos?
Hashing no es posible ya que necesito saber la contraseña exacta (no solo el hash para hacer coincidir). Los mecanismos de cifrado/descifrado no funcionan, ya que dependen de la máquina.
¿Hay algún ejemplo en la web sobre cómo se hace esto? – karlipoppins
@m_oLogin: vea una de mis otras respuestas [aquí] (http://stackoverflow.com/questions/154430/persistent-storage-of-encrypted-data-using-net/154687#154687) –