Hallo zusammen,
ich bin auf der Suche nach ein paar Tips, wie ich eine halbwegs vernünftige Benutzerverwaltung in mein Programm integrieren kann. Geht das irgendwie oder ist Java dafür nicht sonderlich gut geeignet?
Also vorab - ich habe mit PHP/MySQL usw. schon häufig mit Benutzern und deren Rechten rumhantiert, nur sind dort die Infos auf einem Server gespeichert und da kommt normalerweise niemand ran.
Wenn ich aber für eine Applikation Benutzerrechte vergebe, muss ich die ja irgendwo lokal speichern. Also ist das erste Problem: Wie soll so eine Datei aussehen? Ich könnte eine XML verwenden, aber da kann jeder nach Lust und Laune editieren und zumindest Einträge löschen, selbst wenn die Passwörter verschlüsselt sind. Also irgendeine Binärdatei verwenden?
Und wie ist da ein vernünftiger Ansatz? Auf die Datei muss ja prinzipiell jeder Benutzer zugreifen können um "seine" Rechte auslesen zu können, darf diese aber auch nicht manipulieren können. Und mit einem im Programmcode hinterlegten Master-Passwort zu arbeiten ist bei Java vermutlich auch nicht sonderlich sicher, vor allem nicht wenn es sich um ein quelltextoffenes Programm handelt.
Gibts da also überhaupt einen vernünftigen Schutz oder kann ich das gleich vergessen (zumindest ohne externe Datenbanken oder so)? Also es geht mir nicht um geheime Bankdaten oder so, sondern lediglich ein halbwegs sicherer Manipulationsschutz, damit sich Leute nicht ohne weiteres Admin-Rechte holen können beispielsweise.
ich bin auf der Suche nach ein paar Tips, wie ich eine halbwegs vernünftige Benutzerverwaltung in mein Programm integrieren kann. Geht das irgendwie oder ist Java dafür nicht sonderlich gut geeignet?
Also vorab - ich habe mit PHP/MySQL usw. schon häufig mit Benutzern und deren Rechten rumhantiert, nur sind dort die Infos auf einem Server gespeichert und da kommt normalerweise niemand ran.
Wenn ich aber für eine Applikation Benutzerrechte vergebe, muss ich die ja irgendwo lokal speichern. Also ist das erste Problem: Wie soll so eine Datei aussehen? Ich könnte eine XML verwenden, aber da kann jeder nach Lust und Laune editieren und zumindest Einträge löschen, selbst wenn die Passwörter verschlüsselt sind. Also irgendeine Binärdatei verwenden?
Und wie ist da ein vernünftiger Ansatz? Auf die Datei muss ja prinzipiell jeder Benutzer zugreifen können um "seine" Rechte auslesen zu können, darf diese aber auch nicht manipulieren können. Und mit einem im Programmcode hinterlegten Master-Passwort zu arbeiten ist bei Java vermutlich auch nicht sonderlich sicher, vor allem nicht wenn es sich um ein quelltextoffenes Programm handelt.
Gibts da also überhaupt einen vernünftigen Schutz oder kann ich das gleich vergessen (zumindest ohne externe Datenbanken oder so)? Also es geht mir nicht um geheime Bankdaten oder so, sondern lediglich ein halbwegs sicherer Manipulationsschutz, damit sich Leute nicht ohne weiteres Admin-Rechte holen können beispielsweise.