In seinem Vortrag im Technik Track des Univention Summit gibt Daniel Tröder aus dem Entwickler-Team von Univention einen Überblick, wo sich Univention auf die Reise zu einem neuen Rollen- und Rechtemodell in UCS und UCS@school gemacht hat und wie weit die Entwicklung dabei schon gekommen ist.
Außerdem geht Daniel auf die neue Autorisierungskomponente „Guardian“ ein, mit der Administrierende in Zukunft über Benutzer-Rollen und deren Berechtigungen ihre eigene Version von UCS@school und dessen Verhalten individuell gestalten können.
Rückwärts denken vorwärts handeln - Requirements Reverse Engineering bei Syst...
Status des Rollen- und Rechtemodells in UCS und UCS@school - Daniel Tröder - Univention Summit 2024
1. Status des Rollen- und
Rechtemodells in UCS und
UCS@school
Daniel Tröder, Univention
2. Agenda
» Begriffsklärung
» Entwicklung 2023: RAM in UCS@school
» Komponente „Guardian“
» Entwicklung 2024: Guardian in UCS, UCS@school und openDesk / nubus
» Ideen und Fragen
3. Identifikation, Authentifikation und Autorisierung
» Identifikation (identification): Feststellung der Identität eines Objekts oder einer Person.
» Authentifikation (authentification): Nachweises der Identität eines Computersystem-Benutzers.
» Autorisierung (authorization): Gewährung von Zugangsrechten/Privilegien zu Ressourcen.
(Wikipedia)
4. Begriffsklärung (RBAC)
» Role-based access control (RBAC)
» Rolle darf Aktion auf Objekt.
» Admin darf Join die Computer.
» Admin darf Administrieren die Mailingliste.
» Lehrende dürfen Beenden die Klassenarbeiten.
» Lehrende dürfen Lesen die Klassenarbeiten.
5. Begriffsklärung (RBAC)
» Role-based access control (RBAC)
» Rolle darf Aktion auf Objekt.
» Admin darf Join die Computer.
» Admin-Nord darf Join die Computer wenn an Standort Nord.
» Admin darf Administrieren die Mailingliste.
» Lehrende dürfen Beenden die Klassenarbeiten.
» Lehrende dürfen Lesen die Klassenarbeiten.
6. Begriffsklärung (RBAC)
» Role-based access control (RBAC)
» Rolle darf Aktion auf Objekt.
» Admin darf Join die Computer.
» Admin-Nord darf Join die Computer wenn an Standort Nord.
» Admin darf Administrieren die Mailingliste.
» Admin2 darf Administrieren die Mailingliste wenn Domain standort2.example.com ist.
» Lehrende dürfen Beenden die Klassenarbeiten.
» Lehrende dürfen Lesen die Klassenarbeiten.
7. Begriffsklärung (RBAC)
» Role-based access control (RBAC)
» Rolle darf Aktion auf Objekt.
» Admin darf Join die Computer.
» Admin-Nord darf Join die Computer wenn an Standort Nord.
» Admin darf Administrieren die Mailingliste.
» Admin2 darf Administrieren die Mailingliste wenn Domain standort2.example.com ist.
» Lehrende dürfen Beenden die Klassenarbeiten.
» Lehrende dürfen Beenden die Klassenarbeit wenn sie sie selbst gestartet haben.
» Lehrende dürfen Lesen die Klassenarbeiten.
8. Begriffsklärung (RBAC)
» Role-based access control (RBAC)
» Rolle darf Aktion auf Objekt.
» Admin darf Join die Computer.
» Admin-Nord darf Join die Computer wenn an Standort Nord.
» Admin darf Administrieren die Mailingliste.
» Admin2 darf Administrieren die Mailingliste wenn Domain standort2.example.com ist.
» Lehrende dürfen Beenden die Klassenarbeiten.
» Lehrende dürfen Beenden die Klassenarbeit wenn sie sie selbst gestartet haben.
» Lehrende dürfen Lesen die Klassenarbeiten.
» Lehrende dürfen Lesen die Klassenarbeit wenn sie die Klasse selbst unterrichten.
9. Begriffsklärung (ABAC)
» Role-based access control (RBAC)
» Rolle darf Aktion auf Objekt.
» Attribute-based access control (ABAC):
» Akteur mit Attribut=Wert darf Aktion auf Objekt mit Attribut=Wert
[bei Systemzustand].
10. Begriffsklärung (ABAC)
» Role-based access control (RBAC)
» Rolle darf Aktion auf Objekt.
» Attribute-based access control (ABAC):
Akteur mit
User-Objekt, Token-Payload, HTTP-Header-Daten, …
Attribut=Wert, [..] attribut1=Wert & attribut2=Wert & attribut3=Wert ...
darf Aktion auf Lesen, Schreiben, Passwort-Reset, Upload, Firewall-Allow/Deny...
Objekt mit LDAP-Objekt/-Attribut, Klassenarbeit, Verzeichnis, Netzwerk-Port...
Attribut=Wert, [..] attribut4=Wert & attribut5=Wert & attribut6=Wert ...
[bei Systemzustand]. Uhrzeit, Akkuladung, Netzwerkverbindung, ...
11. Begriffsklärung (ABAC)
» Attribute-based access control (ABAC):
» Akteur mit Attribut=Wert darf Aktion auf Objekt mit Attribut=Wert
[bei Systemzustand].
» Beispiele:
» Akteur mit job=teacher und school=<A> und class=<B> darf Lesen
die Klassenarbeiten mit author_school=<A> und author_class=<B>.
Lehrende dürfen nur die Arbeiten ihrer Klassen lesen.
→
» Akteur mit admin=dns:sub:<dom> darf administrieren die Domains mit parent=<dom>.
DNS-Administration auf bestimmte Subdomains beschränken.
→
» Akteur mit backup=mail:<domain> darf Backups erstellen
vom Mailstorage mit path=/<domain> wenn time>22:00 und time<06:00.
Backups nur von bestimmten Domains und nur Nachts erlauben.
→
23. Entwicklung 2024: Guardian in openDesk / nubus und UCS@school
» UCS Portal
» UCS UMC Module
» UDM REST API
» UCS@school Module
» In Entwicklung
» nubus / openDesk
Provisioning
» In Entwicklung
» 3rd Party Apps?
28. Provisioning in nubus & openDesk
» In UCS: „listener / notifier“
» LDAP Daten von Docker Apps beschränkbar mit LDAP ACLs
» In nubus und openDesk: „Provisioning“
» LDAP Daten von Docker Apps beschränkbar mit Guardian Regeln
30. Ideen und Fragen
» Join von Rechnern in Zweigstelle
» Rolle zum Management von Shared-IMAP-Foldern und Mailinglisten
» Rolle zum Anlegen von A-Records unterhalb einer bestimmen Subdomain
» Elternrolle in Schulen
» Vertretungsregelung (zeitgesteuert)
» Rolle zum Erteilen von Rechten in der Wordpress App
» WLAN-Freigabe je nach Geburtsdatum
» Rolle die erlaubt eine bestimmte App per UMC neu zu starten
» Teilen Sie uns Ihre Ideen und Bedarfe mit!
» Es gibt einen Demo-Point mit einer Guardian-Installation sowie Beipiel-App zum
Anfassen!