didmos_Core

Core

didmosV2Framework

didmos Core besteht aus verschiedenen Komponenten, die gemeinsam die Verwaltung von Objekten, Benutzer*innen und Gruppen, einschließlich der Erstellung, Löschung und Änderung solcher Objekte ermöglichen. Wie die meisten anderen didmos-Module, ist Core vollständig in Python geschrieben und greift dabei gegenwärtig auf das weit verbreitete Django-Framework zurück. Dieses erlaubt Entwickler*innen ein teilweise automatisiertes Schreiben von App-Codes, was den Entwicklungsprozess nicht nur vereinfacht, sondern auch erheblich beschleunigt – und das ganz ohne Qualitätseinbußen.

Core stellt SCIM-v2-Endpunkte sowie Endpunkte für die Verwaltung und Abfrage von Zugriffskontrollinformationen (Policy Decision Point) und die Implementierung mehrstufiger Workflows zur Verfügung, die als REST-Aufrufe umgesetzt worden sind.
Als Daten-Backend verwendet didmos Core einen LDAP-Server, der als Metadirectory fungiert. Darum ist didmos Core letztendlich eine Webservice-Schnittstelle, um in einen LDAP-Server schreiben und ihn auslesen zu können. Der Vorteil gegenüber dem direktem LDAP-Zugriff besteht darin, dass zusätzlich Business-Logiken implementiert werden können. Da SCIM wesentlich einfacher zu implementieren ist als LDAP, können über didmos Core auch schlanke JavaScript-basierte Frontends auf LDAP-Daten zugreifen.

Aufbau und Funktionen

Die Abbildung zeigt, wie die verschiedenen Komponenten von didmos Core mit dem Metadirectory und dem didmos Authenticator interagieren.

PDP (Policy Decision Point): Der zentrale PDP verwaltet an zentraler Stelle die Zugriffskontrolle auf Ressourcen über die Zuweisung von mit Zugriffsrechten verbundenen Rollen, die ebenfalls hier definiert und gepflegt werden können.

LUI2-Backend: Das Backend kommuniziert über die SCIM-v2-REST-Schnittstelle mit dem LUI-Frontend und implementiert und koordiniert die Businesslogik.

Tasks: Mit der Tasks- App in Core können auch mehrstufige Anfrage- und Genehmigungsprozesse implementiert werden. Eine Anfrage wird hierbei als LDAP-Objekt gespeichert und anschließend dem Entscheider angezeigt, welcher solche Anfragen entweder genehmigen oder ablehnen kann. Hierzu kann z. B. auch ein Vier-Augen-Prinzip definiert werden. Nach der Entscheidung werden die entsprechenden automatisierten Prozesse angestoßen.
Mit einer Anfrage kann u. a. folgendes beantragt werden:

  • NeuesBenutzerkonto (=Registrierung und Genehmigung)
  • Gruppenmitgliedschaft
  • Rolle
  • Mail-Alias

LDAP-Metadirectory: In dem Metadirectory, das zugleich die Persistenzschicht bildet, werden alle relevanten Daten des IAM-Systems gespeichert. Durch das hochflexible LDAP-Datenmodell können beliebige Datenobjekte in didmos Core verwaltet werden. Auch die gesamte Konfiguration von didmos wird in Form von LDAP-Objekten im Metadirectory administriert.

Menü