05.09.2022
Zeitwart hat ein sehr differenziertes Rechte- und Rollensystem, mit dem auch eine sehr komplexe Organisation wie eine Hochschule oder ein großes Unternehmen abgebildet werden kann. In solch einer großen Organisation kann es mehrere Tausend Nutzer geben, die ebenso viele Buchungsmöglichkeiten haben. Typischerweise haben aber nicht alle Nutzer Zugriff auf alle Ressourcen. Es gibt Teilgruppen von Nutzern die Teilgruppen von Ressourcen buchen dürfen, beispielsweise sollen Studenten eines bestimmten Studiengangs bestimmte PC-Arbeitsplätze buchen können, Mitarbeiter bestimmte Besprechungsräume oder Mitglieder der Geschäftsleitung einen Firmenwagen mit gehobener Ausstattung.
Diese vielen unterschiedlichen Berechtigungen lassen sich sehr schlecht und unbefriedigend in einer aufwendigen und fehleranfälligen 1-zu-1-Beziehung pflegen. Bei 1.000 Nutzern und 1.000 Ressourcen wären es schon 1.000.000 mögliche Beziehungen.
Zeitwart nutzt zum einen ein Rollensystem. Jeder Nutzer kann beliebig vielen Rollen angehören, zum Beispiel Student, Mitarbeiter oder Mitglied der Geschäftsleitung. In dem Beispiel hat die Nutzerin Clara Clever die Rollen Mitarbeiter und Geschäftsleitung. Auch die administrativen Rechte werden über Rollen vergeben, so gibt es auch die klassische Adminrolle. Es können beliebig viele Rollen erstellt werden.
Während die Nutzer in Rollen organisiert werden, werden die Ressourcen in Organisationseinheiten zusammengefasst. Auch hier gilt, dass jede Ressource beliebig vielen Organisationseinheiten angehören kann. In dem Beispiel sind alle PCs innerhalb eines PC-Pools, alle Besprechungsräume und alle Firmenwagen mit gehobener Ausstattung zusammengefasst.
Die Rechte werden nun in Zeitwart ausschließlich zwischen den Rollen und den Organisationseinheiten definiert, niemals zwischen einzelnen Nutzern und einzelnen Ressourcen. Die Rolle Student kann Buchungsrechte auf die Organisationseinheit PC-Pool bekommen. Somit kann jeder Nutzer, der die Rolle Student besitzt, einen PC in diesem Pool buchen.
Neben dem Recht zu buchen, können Buchungsregeln erstellt werden, in denen definiert wird, unter welchen Bedingungen Mitglieder einer Rolle die PCs buchen können: zum Beispiel Öffnungszeiten, maximal 3 Buchungen pro Woche und mindestens 24 Stunden vor jeder Buchung. Die Rolle „Mitarbeiter“ kann in diesem Beispiel, ohne Einschränkung auf die PCs zugreifen.
Die einzelnen Organisationseinheiten können zusätzlich noch in einer Baumstruktur hierarchisch organisiert werden. Beispielsweise lassen sich mehrere PC-Pools in einer gemeinsamen Organisationseinheit PC-Pools zusammenfassen. Werden nun Buchungsregeln wie etwa die Öffnungszeiten in dieser Organisationseinheit definiert, gelten sie automatisch für alle darunter liegenden Ressourcen. Natürlich lassen sich dann auch wieder Ausnahmen definieren, die Öffnungszeiten könnten in einem der Pools andere sein. Auch die Rechtevergabe zwischen den Rollen und den Organisationseinheiten berücksichtigt die hierarchische Struktur: hat eine Rolle das Recht zur Buchung für PC-Pools gelten sie für alle darunter liegenden PC zu den jeweils definierten Buchungsregeln.