Die Bereitstellung und Pflege von Schulstammdaten ist eine der schwierigsten Angelegenheiten in der digitalen Schulverwaltung. Wie schafft man es, zu jedem Zeitpunkt, in jedem System, vollständige und aktuelle Nutzerdaten vorliegen zu haben, ohne manuelle und fehleranfällige Pflege zu betreiben? Wir bei Univention haben uns dieser Herausforderung gestellt und haben den UCS@school ID Connector entwickelt, um Schulidentitäten auf mehreren unabhängigen UCS@school-IDMs zu synchronisieren.

Funktion des ID Connectors

Der ID Connector überträgt Nutzerdaten, wie Benutzernamen und Passwort in Echtzeit von einer Haupt-UCS@school-Instanz auf beliebig viele andere UCS@school-Instanzen. Dies erlaubt viele unterschiedliche Einsatzszenarien, doch in diesem Beitrag soll es exemplarisch um die Vernetzung einer Landesverwaltung mit mehreren Träger-Systemen gehen, auf denen jeweils UCS@school installiert sind.


Schaubild: UCS@school ID Connector Synchronisation der Benutzerdaten

In einem solchen Szenario wird das Hauptsystem beispielsweise aus einem landesweiten Schulverwaltungssystem, in dem alle Schüler*innen und Lehrkräfte mit ihren Namen, Schul- und Klassenzugehörigkeiten verzeichnet sind, gespeist. Von dort aus sollen die digitalen Identitäten automatisiert auf die einzelnen Schulträgersysteme übertragen werden, sodass administrative Aufwände reduziert werden. Um dies zu bewerkstelligen, wird auf der UCS@school-Instanz des Landes der ID Connector installiert, welcher Zugang auf die LDAP-Strukturen und damit auf die Nutzerdaten erhält. Die Konfiguration des Connectors erfolgt über eine HTTP API .


Werden nun neue Benutzer oder Gruppen im LDAP erstellt, gelöscht oder modifiziert, wird der ID Connector listener – ein Python Skript des ID Connectors – angestoßen und die ID des geänderten Objektes in einer JSON Datei notiert. So bildet sich eine leichtgewichtige Warteschlange, die von einem Converter abgearbeitet wird. Über die Objekt ID (entryUUID) holt der Converter die aktuellen Informationen aus dem LDAP, erzeugt daraus eine JSON Representation des Objekts und reiht dieses wiederum in einer Warteschlange ein.

Ein weiterer Python Prozess liest die JSON Dokumente nach und nach aus, holt ggf. weitere Daten aus dem LDAP und entscheidet dann an welches Schulträgersystem ein Objekt übermittelt werden soll. Pro Empfängersystem werden die Daten in eigene Ordner separiert. Eine Mapping-Datei – ebenfalls eine JSON Datei, in welcher alle Schulen dem zugehörigen Träger zugewiesen sind – hilft bei der Zuordnung.

Schlussendlich kümmert sich das Kelvin ID Connector Plugin um die Verteilung der Daten an die Träger-Instanzen. Damit die Zielinstanzen eintreffende Daten aufnehmen können, muss dort jeweils die UCS@school Kelvin API vorhanden sein, welche die neuen Daten ins Zielsystem schreibt.


Ob nun alle Attribute einer Identität übermittelt werden oder nur eine Teilmenge, lässt sich frei in Konfigurationsdateien definieren. Ebenso in welche Attribute eine Information in dem Zielsystem geschrieben wird. Zu beachten ist dabei lediglich, dass einige Attribute von der Kelvin API als verpflichtend vorausgesetzt werden und somit enthalten sein müssen. Je Schulträger können so verschiedene Mappings konfiguriert werden und sollten weitere Träger hinzukommen, ist es jederzeit möglich eine weitere Mapping-Datei zu ergänzen.

Fazit: ID Connector für viele Einsatzszenarien geeignet

Der Einsatz des ID Connector sorgt für eine reibungslose Zusammenarbeit zwischen Ländern, Trägern und Schulen. Durch die verlässliche automatische Datenübertragung verringern sich Fehlerpotenziale und es existieren unterschiedliche Datenbestände in den angebundenen Systemen. Das Mapping erlaubt außerdem einen hohen Grad der Individualisierung, der viele Einsatzszenarien ermöglicht.
Wie viele weitere nützliche Apps kann der ID Connector in unserem App Center heruntergeladen werden und ist als Produktbestandteil in der UCS@school-Subskription enthalten. Die vollständige Dokumentation finden Sie unter https://docs.software-univention.de/ucsschool-id-connector/index.html.

Darüber hinaus wird Ihr*e Ansprechpartner*in aus unserem Professional-Services-Team Sie gern weiter zu diesem Thema beraten und mit Ihnen analysieren, ob der ID Connector zu Ihrer Infrastruktur passt.

UCS Core Edition jetzt kostenfrei einsetzen!

Zum Downloadbereich

Marie Aurich ist seit Mai 2022 als Produktmanagerin bei Univention tätig und verantwortlich für die Weiterentwicklung des Open Source Identity Management Systems UCS@school.

Was ist Ihre Meinung? Hinterlassen Sie einen Kommentar!

Kommentare

  1. Danke!
    Wieder ein Schritt, der uns bei der Verwendung einer nicht-MS-Lösung im Bereich von Schulen unterstützt. Weiter so!!!
    Gibt es auch eine ähnliche Lösung um Schülerdaten aus dem Sächsisches Schulverwaltungssystem SaxSVS bzw. LernSax in UCS@School zu übertragen bzw. diese zu synchronisieren?

    Antworten
    • Hallo Herr Glaß,

      vielen Dank für die tolle Frage! Tatsächlich besteht die Möglichkeit SaxSVS und LernSax mit UCS@school zu verbinden, wobei UCS@School zwischen beiden Systemen steht. Die Stadt Chemnitz hat im letzten Jahr einen wunderbaren Vortrag über ihre Lösung gehalten. Den Vortrag gibts auf YouTube zu sehen. Auch auf der Seite von LernSax finden sich weitere Informationen zum Univention Webweaver Connector, der für die Synchronisation mit LernSax zum Einsatzt kommt.

      Viele Grüße,
      Marie Aurich

      Antworten

Deine E-Mail-Adresse wird nicht veröffentlicht.