Mandantenfähigkeit
Die imc Learning Suite ist ein rollenbasiertes Lernmanagementsystem, bei dem die Nutzer Gruppen zugewiesen werden, um Berechtigungen für Funktionen und Objekte zu erhalten. Die Ebene über den Gruppen ist die Ebene der Mandanten, und alle Nutzer müssen mindestens einem Mandanten zugewiesen werden, wobei ihr Master-Mandant viele wichtige Einstellungen der Plattform bestimmt. Dieser Artikel gibt einen detaillierten Überblick über die Anwendungsfälle, die Funktionalität und die Konfigurationsmöglichkeiten von Mandantenfähigkeit. Da es sich um ein äußerst umfassendes Lernmanagementsystem mit einer großen Bandbreite an Funktionen und fortgeschrittener Konfiguration handelt, werden in diesem Artikel nur die Funktionen behandelt, die von der mandantenfähigen Konfiguration direkt betroffen sind.
Was bedeutet Mandantenfähigkeit?
Eine Multi-Mandanten-Konfiguration bezieht sich im Wesentlichen auf die Verwendung einer Learning Suite-Instanz, um mehrere Kunden oder Zielgruppen durch eine logische Trennung zu bedienen; dies wird gemeinhin als „Multi-Tenancy“ bezeichnet. Bei einer Multi-Mandanten-Konfiguration teilen sich mehrere Kunden (die normalerweise miteinander verbunden sind) dieselbe Datenbank und denselben Content-Server. Eine logische Trennung wird durch fortschrittliche Multi-Mandanten-Konfigurationseinstellungen in vielen Funktionen und den Einsatz von leistungsstarken Zugriffskontrolllisten (Freigaben) erreicht. Es gibt viele imc-Kunden mit mandantenfähigen Systemen; meist Muttergesellschaften mit mehreren Tochtergesellschaften oder ein Verband, der seinen Mitgliedsorganisationen einen gebrandeten LMS-Bereich zur Verfügung stellt.
Vorteile der Mandantenfähigkeit
Der Hauptvorteil eines Multi-Mandanten-Systems liegt in erster Linie in den Kosteneinsparungen durch geringere Architekturgebühren. Es gibt noch weitere Vorteile, darunter:
Kürzere Projektimplementierungszeit für einzelne Mandanten, wenn ein bestehendes System erweitert wird;
Separate Designs, URLs und öffentliche Startseiten pro Kunde;
Geringere Projektkosten, Einrichtungsgebühren und möglicherweise Lizenzgebühren;
Flexibilität mit mehreren Schnittstellen wie Single Sign-On;
Verwendung von konfigurierten Objekten;
Gemeinsame Nutzung von Lerninhalten zwischen Mandanten; und
Möglichkeit, Nutzer zwischen verwandten Clients zu verschieben, wenn sie die Organisation wechseln.
Wann sollte eine Trennung nach Mandanten erfolgen?
Bevor eine logische Trennung nach Mandanten vorgenommen wird, muss zunächst festgestellt werden, ob eine mandantenfähige Konfiguration wirklich erforderlich ist, denn diese kann zeitnah erfolgen und ist oft nicht notwendig. Eine einfache Anforderung an interne und externe Nutzer lässt sich beispielsweise mit getrennten Gruppen erfüllen. Im Folgenden finden Sie eine Liste von Szenarien, in denen eine mandantenfähige Konfiguration erforderlich ist:
Unterschiedliche Nutzergruppen benötigen unterschiedliche Designs (Farbschemata, Logo usw.), da jeder Mandant ein eigenes Design unterstützen kann;
Unterschiedliche Nutzergruppen benötigen unterschiedliche Nutzerprofile mit unterschiedlichen persönlichen Attributen;
Mehrere SAML- oder OIDC-Authentifizierungsschnittstellen sind erforderlich, da jeder Mandant nur eine der Schnittstellen unterstützen kann;
Der Wunsch, in einem System, das in vielen Ländern eingesetzt wird, die Plattformsprachen pro geografischer Region zu beschränken;
Mehrere URLs und öffentliche Zugangsseiten sind erforderlich; und
Unterschiedliche Systemtexte müssen für verschiedene Gruppen angezeigt werden.
Mandantenübergreifende Überlegungen
Aus funktionaler Sicht ist der Großteil der Funktionen und Schnittstellen in der imc Learning Suite darauf ausgelegt, mandantenspezifische Szenarien zu unterstützen. Das bedeutet, dass jeder Mandant in einem logisch getrennten Multi-Mandanten-System eine eigene Konfiguration und eigene Schnittstellen haben kann, um sich von anderen Mandanten zu unterscheiden; je größer jedoch die Konfigurationsanforderungen sind, desto größer ist der Aufwand und desto höher die Kosten. Es gibt jedoch einige Einschränkungen bei plattformweiten Konfigurationseinstellungen wie SCIM-API und Nutzer-Provisionierung, bei denen nur eine Konfiguration möglich ist. Die größte Überlegung für eine logische Trennung ist, dass es einen Standard-Mandanten und einen Systembesitzer / Systemadministrator mit voller Sichtbarkeit geben muss; letzterer wäre im Allgemeinen für kundenseitige Supportanfragen und die Koordinierung von Patch-Updates mit dem imc-Supportteam verantwortlich.
Auswirkung für den Nutzer
Aus Sicht der Lernenden gibt es bei einem logisch getrennten Mehrmandantensystem keine wirklich erkennbaren Unterschiede im Vergleich zu einem eigenständigen Ein-Mandantensystem. Das System wäre in Bezug auf das Design der Oberfläche, den Texten der Plattform, die Felder des Nutzerprofils, die System-E-Mails, den Inhalt des Katalogs, das Dashboard und die Nachrichtenelemente spezifisch für die jeweilige Organisation. Selbst wenn ein Nutzer mehreren Mandanten zugewiesen wäre, gäbe es immer noch einen Master-Mandanten, der das Standarddesign und die Profileinstellungen festlegt, aber je nach Konfiguration könnte es zusätzliche Kataloge und sogar Dashboards geben.
In Bezug auf die Erfahrung des Administrators gibt es einige wichtige Unterschiede zu einem logisch getrennten System. Zum einen gibt es bei vielen nutzerbezogenen Funktionen ein Auswahlfeld „Mandantenkontext“, mit dem ausgewählt werden kann, ob die Änderungen „global“ oder mandantenspezifisch sein sollen. Zu den Funktionen mit dem 'Mandantenkontext' gehören 'Nutzer', 'Nutzerlisten', 'Profile' und 'Mitarbeiter'. Superadministratoren oder Systemadministratoren im Standardsystemmandanten können Änderungen für jeden Mandantenkontext, einschließlich des globalen, konfigurieren, aber Administratoren in Untermandanten können nur Änderungen für ihren eigenen Mandanten konfigurieren.
Die einzige Funktion, auf die Administratoren von Unterclients nicht zugreifen sollten, ist der Bereich „Einstellungen > Konfiguration“, da dieser Hunderte von plattformweiten Einstellungen enthält, die sich auf alle Clients auswirken können. Es wird empfohlen, dass die Einstellungen hier von imc verwaltet werden, insbesondere jene, die sich auf Schnittstellen wie SAML, LDAP, SCIM und csv-Batch-Importe beziehen. Alle anderen Funktionen berücksichtigen eine starke Kontrolle der Zugriffsrechte mit Clearances, um festzulegen, welche Nutzer, Gruppen oder Clients auf jedes Objekt in verschiedenen Stufen zugreifen können.
Zugangskontrollliste / Freigaben
Die Zugriffskontrolle wird durch die Funktion „Freigaben“ geregelt, die den Grad des Zugriffs einzelner Nutzer, Gruppen und Kunden auf ein beliebiges Objekt festlegt, egal ob es sich um Lerninhalte, Schulungskataloge, Berichte, Dashboards oder Nutzer handelt. Für die verschiedenen Objekttypen gibt es unterschiedliche Freigabemöglichkeiten, aber die Mindestzugriffsrechte für alle Objekte umfassen Ausführen/Anzeigen, Bearbeiten und Löschen. In einer logisch getrennten Multi-Mandanten-Umgebung ist die Konfiguration von Freigaben, insbesondere von Standardfreigaben, von entscheidender Bedeutung für eine erfolgreiche Einrichtung. Freigaben können automatisch durch konfigurierte Geschäftsregeln oder manuell durch Administratoren bei der Erstellung von Objekten erteilt werden. In den administrativen Funktionen ist es möglich, Zugriffsrechte für Objekte über das Symbol „Freigabe“ anzuzeigen oder zuzuweisen. Bei der Erstellung eines Objekts erhält der Ersteller die volle, uneingeschränkte Freigabe. Bei der manuellen Zuweisung von Freigaben an andere Nutzer kann der Ersteller nur einzelne Nutzer und Gruppen auswählen, für die er eine Freigabe zur Ansicht im LMS hat.
Rollenkonzept
Die imc Learning Suite ist ein rollenbasiertes System, in dem den Nutzern Rollen zugewiesen werden (dargestellt durch Gruppen), die ihnen Rechte für Funktionen und Objekte geben. Um die Navigation einfach zu halten, kann ein Nutzer, der mehr als nur einer Rolle zugewiesen ist, zwischen den Rollen wechseln, indem er auf das Symbol „Rollenwechsel“ kann eine beliebige Anzahl von rollenbasierten Gruppen mit nur einer Funktion bis hin zu einer Systemadministratorgruppe mit Zugriff auf alle Funktionen konfiguriert werden. Wenn ein Nutzer mehreren Rollen zugewiesen ist, erhält er die Summe aller Zugriffsrechte, für die die zugewiesenen Gruppen Zugriffsrechte und Freigaben haben. Bei logisch getrennten Mehrmandantensystemen ist die Konfiguration zusätzlicher Nutzergruppen oder Rollen sehr wichtig, um eine klare Aufteilung der Nutzerzuordnung und der Zugriffsrechte zu gewährleisten. Dies ermöglicht die Verwendung von eindeutigen Navigationen für jeden Mandanten, die automatische Zuweisung von Berechtigungen an Mandantenadministratoren für Objekte oder Nutzer, die für diesen Mandanten erstellt wurden.
Was ist bei einer Mehr-Mandanten-Konfiguration zu beachten?
Eine mandantenfähige Konfiguration kann für ein einfaches Szenario relativ klein oder bei komplexen Anforderungen recht groß sein. Die Kernaufteilung ist weitgehend durch Clearance-Funktionalität und Geschäftsregeln erreichbar, um zu bestimmen, welche Objekte oder Nutzer im System für wen und auf welcher Ebene sichtbar sind. Darüber hinaus gibt es zahlreiche Funktionen, die kundenspezifisch konfiguriert werden können, um eine einzigartige Umgebung zu schaffen. Im Folgenden sind die Bereiche aufgeführt, die bei einer grundlegenden und einer erweiterten Multi-Mandanten-Konfiguration zu berücksichtigen sind:
Grundlegende Konfigurationen
Aktivieren der Funktion „Multi-Mandanten-Kontext“ in der Funktion „Konfiguration > Client“.
Erstellen des Mandanten und Konfigurieren der Einstellungen einschließlich der Mandanten-Untereinstellungen.
Erstellen von Gruppen und Definieren von Zugriffsnavigations- und Funktionsprivilegien.
Definition von Standard-Zugriffsrechten für Objekte in der Funktion „Konfiguration > Freigaben“.Manuelles Erteilen von Freigaben für neue Administratorgruppen für „Typ“-Objekte (z. B. Kurstypen, Medientypen).
Manuelle Vergabe von Berechtigungen für andere wichtige Objekte (z. B. Kursräume, Stornierungsgründe, Panels usw.) an neue Administratorengruppen.
Konfigurieren von kundenspezifischen persönlichen Attributen und Nutzerprofilen (falls erforderlich).
Erstellen von Geschäftsregeldateien in der Client-Funktion, um Nutzer zu Gruppen zuzuordnen und Freigaben für Nutzer zu erteilen.
Erstellung von Panels und Dashboards (intern, extern).
Erstellung von Katalogen.
Erstellung neuer Navigationspunkte von Dashboards und Katalogen.
Aktualisierung des Navigationszugangs zu neuen Dashboards und Katalogen für neue Gruppen.
Erweiterte Konfigurationen
Neues Skin-Design für den Client.
Unterschiedliche öffentliche URLs, die ein SSL-Zertifikat erfordern.
Nutzerimporte (CSV, SCIM) - möglicherweise mit SFTP-Einrichtung.
Import von BU-Gruppen (XML oder CSV).
Schnittstellen (SAML, OIDC, LDAP usw.).
Aktualisierungen von Nutzerlisten.
Aktualisierungen von Systemtexten.
Konfiguration von Veranstaltern und Verknüpfung mit dem Mandanten.
Branding von Anmeldemeldungen und Benachrichtigungen.
Erstellung von Auslösern für Anmeldungsnachrichten.
Whitelisting von E-Mail-Absendern für SMTP-Relay.
Testen
Bei jeder logischen Multi-Mandanten-Trennung ist das Testen ein sehr wichtiger Schritt, um sicherzustellen, dass alle Objekte in Bezug auf Zuweisung und Zugriffsrechte richtig konfiguriert wurden. Im Folgenden finden Sie eine Liste der wichtigsten Tests, die für eine Basiskonfiguration durchgeführt werden müssen:
Ist die Portalseite unter der konfigurierten URL oder dem konfigurierten Parameter erreichbar?
Ist das SSL-Zertifikat korrekt angewendet, wenn eine eigene Domain verwendet wird?
Wird das richtige Dashboard und Design angezeigt?
Wird der Systemname (projectTitle) in der Browser-Registerkarte aktualisiert?
Sind die gewünschten Login-Optionen aktiviert? Z.B. Lokale Anmeldung und/oder SSO
Wenn „Registrieren“ aktiviert ist, wird der neue Nutzer bei der Selbstregistrierung in der richtigen Kunden- und Lernergruppe angelegt?
Werden Benachrichtigungen über die Einrichtung eines Kontos gesendet?
Wenn ja, werden die Benachrichtigungen zur Kontoerstellung vom richtigen Absender verschickt?
Werden neu angelegte Nutzer über das Backend der richtigen Kunden- und Lerngruppe zugewiesen?
Hat die neue Administratorengruppe eine Freigabe für die neuen Nutzer?
Wird beim Einloggen mit einem Lernerkonto des neuen Kunden das:
Wird das Dashboard korrekt geladen?
Wird der Katalog angezeigt?
Sieht die Navigation richtig aus?
Sehen die persönlichen Profilattribute korrekt aus?
Wenn Sie sich mit einem Administratorkonto des neuen Kunden anmelden, wird dann das Symbol:
Rollenwechsel-Symbol angezeigt?
Sehen die verfügbaren Navigationsoptionen richtig aus?
Zeigt das Nutzermenü die dem neuen Kunden zugewiesenen Nutzer an?
Die Freigabe ermöglicht die Bearbeitung der neuen Nutzer.
Das Menü Organisationsstruktur und Gruppen zeigt die neuen Gruppen an?
Gruppen erlauben es dem Administrator, Nutzer zu bearbeiten und zuzuweisen?
Das Menü Kursvorlagen zeigt die Kurstypen an, wenn Sie auf „Erstellen“ klicken?
Das Menü „Medien“ zeigt die Medientypen an, wenn Sie auf „Erstellen“ klicken?
Neu erstellte Objekte erhalten automatisch die Freigabe für die Administratorgruppe?
Inhaltsfunktionen zeigen nicht ungewollt Inhalte anderer Kunden an?
Menü „Berichte“ in der Kategorie „Verwaltung“ zeigt Berichte an?
Admin > Zuweisungen > Katalog-Menü zeigt die richtigen Kataloge an?
Kataloge erlauben dem Administrator die Zuordnung von Inhalten und Freigaben?
Dashboard-Seiten-Menü zeigt die richtigen Dashboards an?
Im Menü Portalseiten können die Dashboards des Kunden bearbeitet werden
Der Umfang der durchgeführten Tests ist sehr wichtig und kann genauso viel Zeit (wenn nicht sogar mehr) in Anspruch nehmen wie die eigentliche Multi-Client-Konfiguration.
Zusammenfassung
Es ist nun hoffentlich klar, was eine logische Multi-Mandanten-Trennung ist, wann eine Multi-Mandanten-Konfiguration tatsächlich benötigt wird, welche Konfigurationen für eine grundlegende Multi-Mandanten-Einrichtung erforderlich sind und welche Möglichkeiten es für eine erweiterte Einrichtung gibt.
Bei den oben aufgeführten Konfigurationsmöglichkeiten handelt es sich ausschließlich um solche, bei denen eine direkte Mehrmandantenfähigkeit in der Funktion oder eine Konfigurationsanforderung besteht. Es gibt viele weitere Funktionsbereiche, die von den Client-Administratoren weiter konfiguriert werden können, die in diesem Dokument absichtlich nicht behandelt werden, da sie als allgemeine Konfigurationen gelten. Eine mandantenfähige Konfiguration ist zwar technisch möglich, sollte aber aufgrund der Komplexität und des Umfangs der Möglichkeiten in Zusammenarbeit mit dem imc Consulting Team erfolgen.