„Kennwort speichern“ Option [C #]
Frage
Ich brauche eine „Kennwort speichern“ Option in meinem Programm zu implementieren, funktioniert es mit Client-Server-Protokollen, die das gesamte Passwort REQUIRE im loggin Prozess übergeben wird, nicht nur Hashes, so brauche ich das gesamte Passwort lokal speichern . Ich suchte überall, aber ich fand keine schlüssige Antwort oder keine Antwort überhaupt. Aber da E-Mail-Clients, Internet-Browser, IM-Clients es tut, sollte es nicht unmöglich sein ...
ja, was ist die beste Methode?
Danke
Lösung
1) nicht Just do it. Egal, wie gut Ihre Sicherheit nicht Speichern Passwörter ist noch besser.
2) Wenn Sie Haben , es zu tun, betrachten Fenster sichere Speicherung
Andere Tipps
würde ich die CredentialsUI verwenden. Es ist ein Artikel auf MSDN zu erklären, wie es in .NET zu verwenden.
Ich bin ziemlich sicher, dass es ist, was von modernem E-Mail-Clients verwendet wird, Internet-Browser etc. Es bietet eine Option, Ihre Anmeldeinformationen zu speichern, verschlüsselte DPAPI verwenden.
Ich habe eine C # Wrapper-Klasse erstellt, die es einfach macht, von verwalteten Anwendungen verwenden.
Hier ist eine weitere Frage. Windows-äquivalent von O X-Schlüsselbund?
Ihre App haben das Passwort im Klartext zu einem bestimmten Zeitpunkt zu bekommen. Sie können nur für die Angreifer erschweren. Es ist eine Sicherheit / Aufwand Kompromisses.
.NET bietet die so genannte ‚Isolated Storage‘ -Funktion, wo man solche Daten speichern kann. In diesem MSDN-Artikel auch Hinweise gegeben werden, wie die isolierten Speicher verschlüsselt werden, um die gespeicherten Daten zu sichern.