2009-06-29 25 views
1

Ich habe eine C# Winforms App mit einem Formular für Benutzereinstellungen. Ein Administratorkonto sollte in der Lage sein, eine Dropdownliste mit Benutzernamen anzuzeigen, die in einer Sicherheitstabelle gespeichert sind und dem Administrator ermöglichen, die Voreinstellungen dieses Benutzers zu ändern. Alles ist gut und gut an dieser Front, abgesehen von der Tatsache, dass sowohl Benutzernamen und Passwörter verschlüsselt in der Datenbank gespeichert sind. Ich habe Funktionen für die Verschlüsselung/Entschlüsselung, aber wie es jetzt steht, ist die Combobox mit dem Benutzernamen Feld der Tabelle Benutzer verbunden. Gibt es eine Möglichkeit, die Daten durch meine Entschlüsselungsfunktion zu filtern, bevor sie an die Combobox gebunden werden?Datenbindung an eine verschlüsselte Zeichenfolge?

Dies ist im Moment nicht so eine große Sache, und könnte leicht mit einer anderen Methode als Bindung direkt ersetzt werden, aber in Zukunft muss ich viele weitere Felder auf die gleiche Weise tun, so würde ich gerne finden eine Möglichkeit, verschlüsselte Daten zu verwenden und zu verwenden.

Vielen Dank für Ihre Hilfe im Voraus!

+0

Im Idealfall sollten Passwörter nicht verschlüsselt oder anderweitig in der Datenbank gespeichert werden. Ein kryptografisch gesicherter, gesalzener Einweg-Hash ist weitaus idealer. – Alan

+0

Gut bewusst. :) Leider nehme ich an dieser Stelle nur Sicherheit in Anspruch, nicht dafür verantwortlich, wie wir es tatsächlich tun. Irgendwann aber ist der Plan, eine Neufassung zu machen und ich werde es dann definitiv wieder auflegen. – Totty

Antwort

2

Sie könnten eine ITypedList schreiben, die Ihre Datenquelle wickelt und liefert kundenspezifische PropertyDescriptors, die die Daten in GetValue und verschlüsseln sie in SetValue entschlüsseln.

+0

Hatte eine ähnliche Lösung in einem Projekt, das kürzlich Linq zu Sql mit einer benutzerdefinierten Eigenschaft in der Teilklasse Entität verwendet. Obwohl es bei der Arbeit mit großen Datenmengen etwas langsam sein könnte, war ich mit der Gesamtleistung zufrieden. –

Verwandte Themen