Benutzerlogin - aber wie am besten und einfachsten?

Helpseaker

Grünschnabel
Hi,

und zwar bin ich dabei eine Software zu erstellen, die einen Login erfordert.

Programmierungsumgebung:
- Visual C++ 6.0
- MFC und SDI

Und zwar gibt es ja drei Möglichkeiten, das Ganze zu realisieren:
- Datei
- Datenbank
- Registry-Keys

Eine Datenbank wird auf jedenfall bei dem Programm benötigt, um Buchungen zu speichern und bei Bedarf wieder aufzurufen.

Was wäre jetzt der günstigste Weg, den Login zu realisieren, wenn der Benutzer auch die Möglichkeit haben soll, seine Passwort bei Bedarf ändern oder bei Verlust wieder anzeigen zu lassen?

Vielen Dank im Voraus.
 
Hi,
ich benutze dafür eine XML-Datei. Im Verzeichnis der .exe habe ich dabei einen Ordner XML. Der Name ist dabei der Benutzername. In der XML-Datei werden das Passwort und die (eventuellen) Rechte verschlüsselt (mit einer Hash-Funktion) gespeichert. Beim Login wird die entsprechende XML-Datei geladen und das eingegebene Passwort mit der Hash-Funktion verschlüsselt und mit dem Wert in der XML-Datei verglichen. Das hat eine relativ hohe Sicherheit, weil aus den Hash-Werten der Anfangswert nicht rekonstruiert werden kann. Deshalb auch die Notwendigkeit des Verschlüsseln des eingegebenen Passwortes. Und die Rechte werden beim Anlegen der Datei verschlüsselt, damit der User (die Datei ist ja einfach zu finden) da nicht rumspielen kann.

Mfg

langer
 
Kannst du mir da vielleicht eine Hilfe sein und mir das genauer erklären bzw. eine kurze Anleitung geben?

Wäre sehr dankbar dafür.
 
Hi,
was du für eine Datei nimmst, ist eigentlich egal, ich verwende eben XML, weil das erstens universell ist und zweitens von MS unterstützt wird.
Also, du mußt erstmal einen User mitliefern, bei mir ist das Admin, damit man sich überhaupt einloggen kann. Dann kann der Admin weitere User aufnehmen. Dazu öffne ich einen Dialog, in dem der User seinen Namen, das Passwort, die Passwortwiederholung (wegen ev. Schreibfehler) eingibt und der Admin ev. die Rechte festlegt. Beim Schliessen des Dialogs wird das Passwort (bei Übereinstimmung beider Schreibweisen) verschlüsselt und in die Master-XML-Datei eingefügt. Dasselbe passiert mit den Rechten. Danach wird die Datei unter dem Usernamen gespeichert.
Zum Verschlüsseln benutze ich den SHA1. Suche mal über Google nach SHA1, da findest du dann konkrete Implementierungen.
Beim Einloggen öffnet sich ein Dialog, in dem der User seinen Account wählen kann, also seinen Namen aus einer Liste auswählen kann. Dann gibt er sein Passwort in den Dialog ein. Beim Dialog-Schliessen wird die entsprechende Datei geladen, das Passwort verschlüsselt und mit dem in der Datei gespeicherten verschlüsselten Passwort verglichen. Bei Übereinstimmung wird der Zugang freigegeben. Gleichzeitig werden dann noch die Rechte bestimmt.
So meine Variante.
Ich hoffe, das hilft dir weiter.

Mfg

langer
 
Zurück