Hi Andreas,
Ich frage mich nur wofür Du 3 Tabellen benötigst? Es würde doch die Tabelle "Benutzer" reichen in der Du auch die Rechte speichern kannst denn die mußt Du sowieso pro Benutzer speichern.
falls implizit eine 1:1-Beziehung zwischen jedem Benutzer und jeder Art von Rechten existiert, würde ich Dir recht geben.
Den Sinn der Tabelle "Sessions" sehe ich nicht, außer vielleicht um zu verhindern das es gleichzeitig mehrere Sessions pro Benutzer gibt.
"verhindern"? Ich hätte jetzt "kontrolliert ermöglichen" gesagt, denn zum Verhindern würde eine zusätzliche Spalte (mit der einzigen gerade legal aktiven Session-ID dieser Benutzerkennung) im Benutzereintrag ausreichen.
Wenn Du jedoch maximal <n> simultane Sessions pro Benutzerkennung erlauben möchtest und <n> selbst wiederum zu dynamisch ist, um es im Datenformat festzubrennen (beispielsweise, weil <n> eine 1:1-Eigenschaft jeder Benutzerkennung ist, oder einfach nur, weil die Tabellenstruktur "schön normalisiert" sein soll), dann dürfte eine solche Session-Tabelle kaum zu vermeiden sein.
Viele Grüße
Michael