opção [C #] “Lembrar senha”
Pergunta
Eu preciso implementar uma opção "Lembrar senha" no meu programa, ele trabalha com protocolos cliente-servidor que exigem a senha inteira para ser passada no processo loggin, não apenas hashes, assim que eu preciso para armazenar a senha toda localmente . Eu procurei em todo o lugar, mas eu não encontrou nenhuma resposta conclusiva ou nenhuma resposta em tudo. Mas desde mail clientes, Internet Navegadores, clientes de mensagens instantâneas fazê-lo, ele não deve ser impossível ...
afirmativo, qual é o melhor método?
Graças
Solução
1) apenas não fazê-lo. Não importa o quão boa a sua segurança não armazenamento senhas ainda é melhor.
2) Se você Have para fazê-lo, considerar janelas de armazenamento seguro
Outras dicas
Eu usaria o CredentialsUI. Há um artigo no MSDN explicando como usá-lo em .NET.
Estou bastante certeza de que ele é o que é usado por clientes de email modernos, navegadores Internet etc Ele fornece uma opção para salvar suas credenciais, criptografada usando DPAPI.
Eu criei um C # wrapper classe que facilita a utilização de aplicativos gerenciados.
Aqui está uma questão relacionada. do Windows equivalente do OS X Keychain?
A sua aplicação tem de obter o passwort em texto puro em algum momento. Você só pode tornar mais difícil para os atacantes. É uma troca de segurança / esforço.
.NET fornece o chamado recurso 'Isolado Armazenamento', onde você pode armazenar esses dados. Em este artigo MSDN também referências são dadas como o armazenamento isolado pode ser criptografado para proteger os dados armazenados.