2010-04-21 13 views
14

Jetzt arbeitet mein Team an einem Projekt mit einer Windows-Anwendung (C#).So speichern Sie Benutzereinstellungen (Benutzername, Passwort) in einer Windows-Anwendung für den aktuell angemeldeten Benutzer

Die Anwendung verfügt über eine Option zum Speichern des Benutzernamens und des Kennworts auf dem Clientcomputer für den aktuell angemeldeten Benutzer. Der Benutzer kann die Anwendung starten, ohne Benutzernamen und Passwort einzugeben. Bitte überprüfen Sie den Schnappschuss meiner Anforderung.

Bitte schlagen Sie ein gutes Beispiel oder eine Referenz vor.

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

+1

Was ist Ihre Frage? – Peter

+0

Wenn der Benutzer das Kontrollkästchen mit der Bezeichnung "Remember me" anklickt. Die Anwendung muss den Benutzernamen und das Passwort für den aktuellen Login-Benutzer auf dem Client-Computer speichern.so kann der Benutzer die Anwendung ohne Angabe von Benutzername und Passwort erneut starten – amexn

+0

Die einfache [ Lösung vorgeschlagen von Bus] (http://stackoverflow.com/questions/2681580/how-to-store-user-settings-username-password-in-a-windows-application-for-the/2681748#2681748) mit Verschlüsselung auf das Passwort kann einen gewissen Wert haben. – sanbornc

Antwort

0

Wenn Sie nach einer einfachen Lösung, speichern Sie den Benutzernamen und das Passwort in den Benutzereinstellungen funktionieren würde suchen. Dieser Ansatz ist jedoch nicht sehr sicher, da jeder andere Benutzer mit ausreichenden Berechtigungen auf diesem Computer einfach die gespeicherten Einstellungen lesen und Ihre Anmeldedaten stehlen könnte.

20

Um Benutzeranmeldeinformationen einfach und sicher zu speichern, können Sie sie mit der Klasse ConfigurationManager in die Anwendungskonfigurationsdatei schreiben, das Kennwort mit der Klasse SecureString sichern und anschließend mit Tools im Kryptografie-Namespace verschlüsseln.

Edit: Dies könnte helfen: Encrypting Passwords in a .NET app.config File

+0

+1 zum Sichern und Verschlüsseln Niemals das Passwort als eindeutigen String speichern. – Sagar

+0

Ich weiß, das ist ziemlich alt, aber ich habe das gleiche Problem mit einer Frage. wenn ich den benutzernamen und das passwort in der app.config speichern kann, kann ich es zur laufzeit nicht ändern, da die anwendung unter programmdateien gespeichert ist und es möglicherweise zugriffsproblemen in der datei gibt ... wie kann ich einen benutzernamen und ein passwort localy mit der fähigkeit speichern um es zur Laufzeit zu ändern? –

+0

+1 :) Serverseite und Verschlüsselung! – sv88erik

1

Hier ist eine Klasse you can download und möglicherweise verwenden. Es verwendet die Windows-Anmeldeinformations-API und bietet ein Dialogfeld, ähnlich wie das Anmeldedialogfeld in Windows, mit dem Sie Anmeldedaten speichern können.

Es war ein Beweis des Konzepts, das ich tat, aber es wurde nie in einer Produktionsanwendung benötigt. So verwenden Sie auf eigene Gefahr :)

+0

Ich denke, diese Klasse wird * sehr * ähnlich dem Code sein, den Sie im Link @ho finden. – codeConcussion

Verwandte Themen