Hey,
boah, du hast mir ja die ganze Lösung ganz detailliert niedergeschrieben. Echt vielen Dank.
Ich vermute mal, dass du irgendein DBMS im Hintergrund hast, mit dem du arbeitest.
Üblich bei solchen Konstellationen sind dann Kreuztabellen (heißen die so?).
Wir haben diese in der Schule immer als "Zwischentabellen" bezeichnet :-)
Deine Lösung ist natürlich sehr gut. Wichtig bei der Programmierung naher ist zu beachten, falls eine liste.5 einer Gruppe und zusätzlichen bestimmtne Personen etwas erlaubt, dass es nicht zu überschneidungen kommt:
Bsp. us3r ist in gruppe foobar. Die liste.5 berechtigt nun die Gruppe zum lesen und schreiben, aber us3r nur zum lesen. Da müsste ich mir dann ein ehierarchie überlegen, was entweder überwiegt oder man einfach sinnvollerweise dann immer die höchsten, bzw. besten Rechte nimmt.
Vielen Dank nochmals. Ich spiele deinen Ansatz mal mit ein paar Beispielen durch. Übersichtlich sieht es aus. Ich versuche mich auch hineinzusteigern, wie die administration in Zukunft aussehen könnte, bei vielen Benutzern. (Ich kenne es vom meinem Praktikum, dass oft ein Chaos bei der Rechteverwaltung herscht. Eine Person ist in vielen Gruppen vertreten, die Gruppen haben wiederum bestimmte Rechte. Es kam dann oft vor, dass bestimmte Gruppen untereinander ähnliche Rechte hatten aber doch an manchen Punkten verschieden, so dass der Chaos vorprogrammiert ist, wenn man 1000-2000 User verwaltet :-)
Grüße