Die Zugriffsrechte bei Terminen einerseits und den anderen Bereichen andereseits sind unterschiedlich komplex. Dies liegt daran, dass es vor allem bei Terminen Sinn macht, dass beliebige Teilnehmer einzelne Datenbereiche des Termines ändern können (z.B. Kommentare abgegeben können), ohne gleich den gesamten Termin (insbesondere z.B. die Teilnehmerliste) zu ändern.
Jeder Bearbeiter einer Aufgabe hat automatisch das Leserecht auf diese Aufgabe. Dies wird durch ein r hinter seinem Namen im Änderungsdialog der Aufgabenverwaltung angezeigt. Durch Klick auf den Namen können dort die Rechte geändert werden.
In diesem Dialog können jedem Bearbeiter weitere Rechte zugewiesen werden und zwar das Änderungsrecht, symbolisiert durch ein w, und das Recht, die Aufgabe zu löschen, symbolisiert durch ein d.
Jeder Bearbeiter einer Teilaufgabe eines Projektes hat automatisch das Leserecht auf das Projekt. Im Änderungsdialog des Projektes können dann - wie bei den Aufgaben, weitere Rechte (Änderungsrecht = w und Löschrecht = d) bearbeitet werden.
Jeder Bearbeiter eines Projektes kann in der Übersicht alle Teilaufgaben sehen und erhält somit auch alle dort angezeigten Informationen über Teilaufgaben, die er nicht selbst bearbeitet. Er kann diese Teilaufagben jedoch nicht öffnen, sei es im Änderungsdialog oder im Ansichtsdialog..
Die Zugriffsrechte sind bei Adressen nur vorläufig geregelt. Das Zugriffsmodell soll noch verfeinert werden. Im Moment werden die Zugriffsberechtigungen über den Eigentümer geregelt. Jede Adresse hat einen Eigentümer. Dies kann:
Wenn man Zugriff auf einen Termin hat, so hat man alle Rechte an dieser Adresse, d.h. man darf sie einsehen, ändern und löschen.
Die Zugriffsrechte auf einen Termin werden sehr fein gesteuert. Man kann einem Teilnehmer Lese- und Änderungsberechtigung getrennt für vier Bereiche geben. Zusätzlich noch das Recht den Termin zu löschen. Die vier Bereiche sind:
Zugriff auf die Erinnerer erfordert Berechtigung in den Bereichen Zeiten und Orte und der Teilnehmerliste. Jeder Teilnehmer bekommt solche Rechte für einen Termin gesetzt. Diese werden in der Teilnehmerliste durch eine Zeichenkette dargestellt, wie z.B.
Die erste Gruppe bezeichnet die Leseberechtigung (r=), die zweite die Berechtigung zu Äderungen (w=). Ein gesetzter Buchstabe bedeutet (s.o.), dass dieses Recht dem Teilnehmer eingeräumt wird, ein "-", dass es nicht eingeräumt wird. Der Buchstabe d steht für das Recht, den Termin zu löschen.
Die Zugriffsrechte können nicht allein, durch die im Termin gesetzten Rechte definiert sein. Zum einen sind so nicht die Rechte dritter an einem Termin definiert (dürfen sie sich ihn ansehen, was dürfen sie sich ansehen) zum anderen sind die weitergehenden Rechte der Administratoren nicht eingeflochten. Die führen dazu, dass sich die Zugriffsrechte nicht allein aus den in dem Termin definierten Rechten ergeben.
Hinzu kommen Rechte, die jeder Nutzer an "meinem" Kaledender hat. Welche dies sind, kann ich in den benuzereigenen Voreinstellungen festlegen. Ausserdem kann ich dort bestimmten Gruppen mehr Rechte zuweisen.
Dann gibt es Rechte, die ich als Mitglied einer Gruppe an einem Termin habe, wenn diese Gruppe eingeladen ist.
Und schliesslich kommen die Rechte der Administratoren zusammen
Wie diese Rechte genau miteinander kombiniert werden, dazu einen Auszug aus meiener eigenen Entwicklungsokumentation:
Rechtequellen: A) USER-Permissions ==================== 1) UserDatePermission : Ist ein User in einem Termin eingetragen, so ersetzen die dort geseztten Rechte die GroupDatePermission und UserCalPermission. Der Initiator eines Termins hat immer volle Rechte, unabhängig davon, was in der Teilnehmerliste eingetragen ist. 2) GroupDatePermission : Ist ein User in einer (oder mehreren) Gruppen, die in einem Termin eingetragen sind, so hat er die durch logisches ODER susammengefassten Rechte aller Gruppen, die an dem Termin teilnehmen und in der er Mitglied ist. 3) UserCalGroupPermission: Sind Betrachter und Kalendereigentümer gemeinsam in einer Gruppe, und hat der Kalendereigentümer für diese Gruppe erweiterte Rechte gesetzt, so gelten diese als UserCalGroupPermission. Sind Betrachter und Kalendereigentümer in meheren gemeinsam, so werden die Rechte aller dieser Grupen ver-Odert. 4) UserCalPermission : Jeder Calender hat Rechte, die für alle Nuzter gelten, die darauf zugreifen. Ausnahme: Bei User-Kalendern hat der Eigentümer immer alle Rechte. User-Kalender und Raum-Kalender kennen nur einen Rechte-Wert. Bei Gruppen-Kalendern wird zwischen Mitgliedern und Nichtmitgliedern unterschieden. 5) Zusammenfassung der Teilrechte. Wenn UserDatePermission gesetzt sind, gelten diese, Wenn GroupDatePermission gesetzt sind, gelten diese. Wenn UserCalGroupPermission gesetzt sind, werden diese mit den UserCalPermission ver-Odert Sonst gelten UserCalPermission, diese sichern für den eigenen Kalender immer rü------ . UserCalPermission und UserCalGroupPermission werden in den User-Prefs festgelegt. B) Administratorrechte ====================== 1) GroupAdminPermissions Jeder Termin ist einer Gruppe zugeordnet. Alle Admins dieser Gruppe haben bei diesem Termin als GroupAdminPermissions die Administratorrechte dieser Gruppe, 2) MasterAdminPermissions Die Admistratoren der Gruppe Nr. 0 haben bei allen Terminen die Administratorrechte der Gruppe Nr. 0. Die Administratorrechte werden mit den User-Rechten ver-Odert.