Login-Screen (Authentifizierung und Authorisierung)

continue

Grünschnabel
Hallo,
Ich frage mich was die übliche Vorgangsweiße beim erstellen eines UserLoginScreens für die eigene Desktopapplication ist.
Einfach eine eigene DB Tabelle erstellen wo die registrierten user abgelegt werden und dort User und jeweiliges Passwort(natürlich verschlüsselt) abspeichern?
Wenn sich ein User X in die Applikation anmeldet soll er als User X jederzeit identifizierbar sein in der anwendung. Das heißt er hat, wenn er kein Administrator ist nur diese und jene rechte...
Wie halte ich das am besten fest? Ein einfacher Ansatz was mir einfallen würde: Ich erstelle Mir eine statische Klasse wo die entsprechenden statischen Felder gesetzt werden... oder ein statisches Enum. so kann dann bei jeder Aktion des Users nachgeprüft werden ob er Admin, oder user oder sonst was ist .
Wie geht man das am besten an? lg
edit: konkret soll das ganze mit swt/jface/eclipse-rcp realisiert werden....
 
Hallo,

also ich würde es mit einer DB-Tabelle machen. In der Tabelle speicherst du UserName, PW (z.B. md5 verschlüsselt), Rolle, Rechte ...
Das eingegeben Passwort verschlüsselst du dann auch md5 und gleichst es mit dem Wert in der DB ab. Dann speicherst du dir den User
in einem Objekt deiner "User"-Klasse. Die enthält Username, Rolle, Rechte ...

Grüße
 
Hallo, danke das klingt vernünftig.
Die Rechte im UserObjekt wären dann einfach Konstanten ?
Und über die statische Userklasse kann man auf den eingeloggten User und letztendlich auf die Konstanten zugreifen?
so in etwa?
 
Für die Rechte solltest du dir eine eigene Klasse machen; beim Einloggen wird eine Instanz dieser Klasse aus den Angaben erstellt, die in deiner Datenbank hinterlegt sind, und dem jeweiligen User-Objekt zugewiesen. Die einzelnen Rechte werden dann jeweils durch ein bool-Member dieser Klasse dargestellt. Auf diese Weise kannst du dann auch flexibel auf Änderungen und/oder Erweiterungen des Rechte-Modells reagieren, ohne deinen ganzen Code umkrempeln zu müssen.
 
Zurück