Skip to main content
Skip table of contents

14.23 Technische Updates

Die technischen Updates der zugrundeliegenden Architektur und der Sicherheitsfunktionen sind nachfolgend aufgeführt:

Neuimplementierung der Navigation (Phase 3)

Überblick: Mit der Aktualisierung der Navigation wurde die Umstellung der Frontend-Seiten (ILP) von Angular auf React fortgesetzt, um ein besseres Design und mehr Sicherheit zu ermöglichen. In diesem Update wurden die Frontend-Funktionsseiten aktualisiert, um den Zugriff über Deeplinks unter Berücksichtigung von Zugriffsrechten (ACL) zu ermöglichen. Dadurch wird sichergestellt, dass eine Seite leer geladen wird, wenn der angemeldete Nutzer keine Zugriffsrechte für die Navigation hat.

Nutzen und Anwendungsfälle: Die Neuimplemetierung der Navigation sorgt für ein moderneres Erlebnis, sicheren Code und erweiterte Suchmöglichkeiten.

Zielgruppe: Lernende und Führungskräfte

Einrichtung und Zugriff: Es gibt eine neue Einstellung im Design, um zwischen der alten Angular- und der neuen React-Navigation umzuschalten; allerdings sollte das Design bei Bedarf zunächst vom imc Design-Team überprüft werden. Diese Einstellung ist in der Funktion Design verfügbar, indem Sie ein Design bearbeiten und den Tab Beschreibung überprüfen. Aktivieren Sie die Checkbox Neue Navigation aktivieren.

(DE)_Neue_Navigation_aktivieren_checkbox.png

Neue Checkbox: Neue Navigation aktivieren

Anmerkungen und Einschränkungen: Der Standardwert ist nicht angekreuzt, d. h. es wird Angular verwendet. Nur in der Kubernetes-Architektur implementiert. Benutzer können über Deep-Links auf Seiten zugreifen, obwohl sie keine Zugriffsrechte auf die Navigation haben, die Seiten zeigen jedoch leere Inhalte.

Test: Überprüfen Sie durch Bearbeiten eines aktiven Entwurfs, ob die Checkbox Neue Navigation aktivieren deaktiviert ist. Aktivieren Sie die Checkbox und klicken Sie auf den Speichern-Button. Melden Sie sich in einem anderen Browser an und prüfen Sie die Funktionen und die Navigation des Lernenden; falls ein Fehler auftritt, kehren Sie zum vorherigen Browser zurück, deaktivieren Sie die Checkbox und klicken Sie auf Speichern.

Risikobewertung: Hoch

Neuer Endpunkt für IDM zum Anfordern von Zugriffstokens

Überblick: Für Mandanten, die die Learning Suite als Headless LMS mit eigenem Frontend nutzen, ermöglicht ein neuer IDM-Endpunkt das Anfordern von Zugriffstoken für Nutzer. Der Nutzer wird über eine SAML-Anfrage identifiziert, und in der Rückmeldung ist das Zugriffstoken enthalten.

Nutzen und Anwendungsfälle: Das bereitgestellte Zugriffstoken kann weiter verwendet werden, um mehrere API-Aufrufe in der Sitzung durchzuführen. In einem Headless-Szenario vereinfacht dies beispielsweise die Verbindung und das anschließende direkte Anfordern weiterer Inhalte wie das Aufrufen von WBT-Inhalten (SCORM).

Zielgruppe: Technische Administratoren

Einrichtung und Zugriff: Im Vorfeld ist eine SAML-Konfiguration mit der entsprechenden Entity-ID erforderlich. Nachfolgend finden Sie ein Beispiel für einen Aufruf des Endpunkts:

JSON
curl --request POST \
  --url 'https://customerurl/idm/saml/SSO/alias/mySamlEntityId?grant_type=urn%3Aietf%3Aparams%3Aoauth%3Agrant-type%3Asaml2-bearer&redirect_uri=http%3A%2F%2Flocalhost%3A8080%2Fils&client_id=ILP&client_secret=mySecret' \
  --header 'Content-Type: application/x-www-form-urlencoded' \
  --data 'assertion=PHNhbWxwOlJlc3Bvb......=='

Anmerkungen und Einschränkungen: Dies ist eine Standard-API, die die Kubernetes-Architektur und eine SAML-Schnittstelle erfordert. SAML ist ein lizenziertes Add-on-Modul.

Test: Erfordert eine aktive SAML-Konfiguration und den Aufruf des POST auf der Grundlage der obigen Angaben. Wenn die SAML-Antwort gültig ist, überprüft werden konnte und der Nutzer übereinstimmt, wird ein gültiges Zugriffstoken zurückgegeben.

Risikobewertung: Niedrig

imc Platform Connectivity Service Registry

Überblick: Als Schlüsselelement des imc Platform Connectivity (IPC) Frameworks wurde ein neues Service Registry entwickelt. Microservices werden mit Arco DSL aktualisiert, um in der Service Registry registriert zu werden und die DNS-Ermittlung nach Name oder ID zu unterstützen. Die Antwort auf eine Suchanfrage enthält Informationen darüber, wo ein Webdienst in einem Netzwerk zu finden ist. Zusätzlich zur DNS-Ermittlung unterstützt IPC auch die API-Ermittlung, bei der alle Dienste Ressourceninformationen bereitstellen, die die Web-API-Endpunkte mit den entsprechenden Informationen zum Anfrage- und Antworttyp darstellen.

Nutzen und Anwendungsfälle: Zunächst wird die Service Registry von den imc Hosting- und Support-Teams genutzt, um zu überwachen, dass die bestellten Microservices (z.B. Channels, IDM) aktiv sind. Diese Erweiterung hilft imc, effizient sicherzustellen, dass alle bestellten Services wie erwartet funktionieren.

Zielgruppe: imc Support- und Hosting-Teams

Einrichtung und Zugriff: Nicht erforderlich

Anmerkungen und Einschränkungen: Teil des imc Hosting-Services

Prüfung: Nicht erforderlich

Risikobewertung: Niedrig

Erweiterung der Kursvorschau-Funktion

Überblick: Ein Update für Headless-LMS-Szenarien bietet eine direkte Link-Kursvorschau. Durch Hinzufügen von startPreview=true zur course.jsf wird die Vorschau eines Kurses geöffnet.
Beispiel:
https:/yourlms/ilp/pages/course.jsf?courseId=998763&startPreview=true#!/courseroom/course

Die Vorschau enthält zusätzlich einen Button Vorschau schließen, mit dem der Browser-Tab der Vorschau geschlossen und die Cookie-Sitzung gelöscht wird.

Nutzen und Anwendungsfälle: Administratoren, die keinen direkten Zugriff auf die Verwaltungsfunktion der Learning Suite-Kurse haben, können über einen direkten Link eine Vorschau des Kurses sehen.

Zielgruppe: Content-Administratoren

Einrichtung und Zugriff: Das Update ist ausschließlich für Headless-Szenarien implementiert, bei denen Kurse über die API in der Learning Suite erstellt werden.

Anmerkungen und Einschränkungen: Die Kursvorschau weist die folgenden Einschränkungen auf:

  • Das Hinzufügen von Inhalten über die Kursvorschau ist nicht möglich.

  • Die Vorschau wird für Kurse mit dem Planungsstatus Storniert nicht unterstützt.

Die folgenden Komponenten werden für die Vorschau nicht unterstützt:

  • Die kollaborative Gruppenarbeit im OJT wird nicht unterstützt, da dafür die Identifizierung der Gruppe erforderlich ist, die für einen Administrator/Tutor nicht möglich ist.

  • Externe LTI 1.1

  • Externe LTI 1.3

  • GoToWebinar

  • Openmeeting

  • Adobe Connect-Aufzeichnung

  • Vitreo-Besprechung

  • Webex-Besprechung

  • Unterkurse

  • AICC WBTs

Test: Die Prüfung erfolgt über einen direkten Link.

Risikobewertung: Niedrig

Kurs, Kursvorlage, Feedback und Test-ACL über API senden

Überblick: Bisher gab es keine API für die Freigabe von Kursen, Kursvorlagen, Feedbackformularen und Tests. Neue APIs können nun Freigaben ähnlich wie die kürzlich eingeführten Medienfreigaben handhaben (siehe nachfolgende Abbildung).

(DE)_Freigabe-API_für_Objekte.png

Freigabe-API für Objekte

2 REST-API-Aufrufe für Kurs-ACL basierend auf der Anforderungsbeschreibung, analog weitere 4 API-Aufrufe für Tests und Feedbacks (für Tests, Testreihen und Feedbacks)

  • GET /lms/tests/{courseId}/clearances PATCH /lms/tests/{courseId}/clearances

  • GET /lms/tests/{testId}/clearances PATCH /lms/tests/{testId}/clearances

  • GET /lms/feedback/{feedbackId}/clearances PATCH /lms/feedback/{feedbackId}/clearances.

Nutzen und Anwendungsfälle: Kunden, die RESTful APIs zur Automatisierung der Erstellung von Lerninhalten verwenden, können Freigaben verwenden. Auf diese Weise kann eingeschränkt werden, welche Gruppen oder einzelne Nutzer den Inhalt anzeigen und bearbeiten können.

Zielgruppe: Content-Administratoren

Einrichtung und Zugriff: Der Antwortkörper für die GET-Methode kann wie bei der Medienfreigabe-API verwendet werden.
Beispiel:

CODE
{
    "mediaClearanceList": [
        {
            "objectType": "GROUP",
            "objectId": "1",
            "name": "Platform Administrator",
            "isOwner": "true",
            "aclGrantTypes": [
                "VERSION",
                "EDIT",
                "DELETE",
                "EXEC",
                "NOTIFICATION",
                "EDITACL"
            ]
        },
        {
            "objectType": "USER",
            "objectId": "110587",
            "name": "Admin, Test 5",
            "isOwner": "true",
            "aclGrantTypes": [
                "VERSION",
                "EDIT",
                "DELETE",
                "EXEC",
                "NOTIFICATION",
                "EDITACL"
            ]
        }
    ]
}

Der Anforderungskörper für die PATCH-Methode kann der gleiche sein wie der für die Medienfreigabe-API.
Beispiel:

CODE
{
    "operationList": [
        {
            "operationType": "ADD",
            "objectType": "USER",
            "objectId": "701262",
            "isOwner": "false",
            "aclGrantTypes": [
                "EXEC",
                "EDIT",
                "DELETE",
                "EDITACL",
                "VERSION",
                "NOTIFICATION"
            ]
        },
        {
            "operationType": "UPDATE",
            "objectType": "USER",
            "objectId": "701262",
            "isOwner": "true"
        },
        {
            "operationType": "DELETE",
            "objectType": "USER",
            "objectId": "701262"
        }
    ]
}

Anmerkungen und Einschränkungen: Vorlagen-/Typobjekte wie Kurstypen, Kursvorlagen und Test- und Feedbackvorlagen sind nicht enthalten. Es ist auch wichtig zu beachten, dass die API zum Erstellen von Kursen die componentId des Kurses und nicht die objectId zurückgibt; daher verwenden die beiden oben genannten APIs die courseId als componentId.

Test: Erfordert die Verwendung einer API, um zunächst Inhalte zu erstellen. Verwenden Sie dann die neuen APIs, um Freigaben auf das Inhaltsobjekt anzuwenden.

Risikobewertung: Niedrig

Neue API zum Abrufen der PERSON_ID über LOGIN

Überblick: Es wurde ein neuer API-Endpunkt (GET) entwickelt, um die Werte des Benutzerattributs PERSON_ID unter Verwendung der Werte des Attributs LOGIN abzurufen. Damit können Sie eine unbegrenzte Anzahl von Datensätzen gleichzeitig abrufen, indem Sie mehrere LOGIN-Werte eingeben.

(DE)_Beispiel_für_die_API_zum_Abrufen_von_PERSON_ID.png

Beispiel für eine API zum Abrufen der PERSON_ID

Nutzen und Anwendungsfälle: Ermöglicht es externen Systemen, die imc PERSON_ID für jeden Nutzer einfach zu extrahieren und zu speichern, wenn der LOGIN bekannt ist. Dies ist nützlich, da die PERSON_ID das persönliche Attribut ist, das von vielen Standard-IMC-APIs benötigt wird, um Nutzerschulungsdaten abzurufen oder zu aktualisieren.

Zielgruppe: Externe Systemadministratoren

Einrichtung und Zugriff: Keine Einrichtung erforderlich

Anmerkungen und Einschränkungen: Der Endpunkt kann nicht für andere eindeutige Nutzerattribute als Parameter konfiguriert werden.

Test: API request URL:

POST .../lms/users/info

API-Request-Struktur:

CODE
{
  "logins": [
    "imc_super",
    "imc_admin",
    ....
  ]
}

API-Response-Struktur:

CODE
{
  "people": [
    {
      "person_id": 2,
      "login": "imc_super"
    },
    {
      "person_id": 1,
      "login": "imc_admin"
    },
    ....
  ]
}

Risikobewertung: Niedrig

Systemweite Updates

Updates der Anmeldeseite

Überblick: Das Update der Login-Seite/des Login-Panels bietet die Möglichkeit, weiteren Text über den SSO- und den lokalen Login-Optionen hinzuzufügen. Die neuen Textfelder unterstützen sowohl mehrsprachige als auch Rich-Text-Eingaben. Ein weiteres Konfigurationsupdate bietet die Möglichkeit, die lokalen Anmeldefelder hinter einem neuen Button zu verbergen, wenn SSO ebenfalls aktiviert ist. Um diese Änderungen zu realisieren, wurden auch einige Updates an der Position der Authentifizierungseinstellungen in der Funktion Mandanten vorgenommen.

image-20241223-090443.png

Optionale Texteinschlüsse auf der Anmeldeseite pro Anmeldemethode

Nutzen und Anwendungsfälle: Die Hinzufügung von konfigurierbaren Textfeldern ermöglicht eine visuelle Unterscheidung und Kennzeichnung zwischen den verschiedenen Anmeldeoptionen. Dies ist ideal für Kunden, die mehrere Anmeldeoptionen innerhalb eines einzigen Mandanten unterstützen müssen.

Zielgruppe: Lernende

Einrichtung und Zugriff: In der Funktion Mandanten gibt es einen neuen Tab für die Einstellungen der Authentifizierungsmethoden, die pro Systemkontext bearbeitet werden kann. Dieser neue Manager für Authentifizierungsmethoden

  • zeigt die konfigurierten Authentifizierungsmethoden an,

  • bietet ein Bearbeiten-Icon mit allen Editieroptionen (keine Checkbox zur Aktivierung in der Methodenliste), und

  • ermöglicht die Änderung der Reihenfolge mit Pfeilen in der Symbolleiste, wenn mehrere Authentifizierungsmethoden ausgewählt sind.

image-20241223-091159.png

Neuer Tab: Authentifizierungsmethoden

Die Konfiguration ist vom Systemkontext abhängig. Über das Icon Bearbeiten wird der Bearbeitungsmanager geöffnet, in dem die relevanten Einstellungen für jede Authentifizierungsmethode angezeigt werden:

  • ein Bereich Einstellungen für die einzelnen Authentifizierungskonfigurationen.

  • ein mehrsprachiger Anzeigetextbereich:
    Die akzeptierten Sprachen sind die Plattformsprachen.
    Hinweis: Der Text wird nicht von der Standardsprache auf die Optionssprachen vererbt, wenn er leer bleibt.

Anmerkungen und Einschränkungen: Standardmäßig sind die neuen Textfelder leer und der Button Lokale Anmeldung ist nicht aktiviert, damit keine Änderungen vorgenommen werden.

Test: Bearbeiten Sie als Systemadministrator einen Mandanten, um zu prüfen, ob der Tab Authentifizierungsmethoden verfügbar ist. Stellen Sie sicher, dass die aktivierten Authentifizierungsmethoden korrekt sind. Bearbeiten Sie die aktivierten Authentifizierungsmethoden, um die neuen Einstellungen und Sprachfelder zu überprüfen.

Risikobewertung: Niedrig

Überarbeitung der Meta-Tags II

Überblick: Bei vielen Meta-Tags wurden weitere Updates vorgenommen, um deren Zuordenbarkeit zu optimieren sowie fehlende Bedienungsanleitungen (i-Button-Text) und Beschreibungen zu ergänzen.

Nutzen und Anwendungsfälle: Diese Verbesserung sorgt für einen strafferen und aussagekräftigeren Meta-Tagging-Prozess und reduziert die Zuordnung irrelevanter Tags erheblich. Außerdem können die aktualisierten Meta-Tags nicht dort hinzugefügt werden, wo sie nicht vorgesehen sind, so dass unerwünschtes Verhalten vermieden werden kann.

Zielgruppe: Administratoren

Einrichtung und Zugriff: Keine Konfiguration erforderlich

Anmerkungen und Einschränkungen: Meta-Tags, die bereits Kursen, Lernpfaden, Medien und Ressourcen zugewiesen wurden, sind davon nicht betroffen. Die Änderung gilt nur für neu zugewiesene Meta-Tags.

Test: -

Risikobewertung: Niedrig

Verbesserung des benutzerdefinierten Designs des Monorepo Overrides

Überblick: Ein Update verbessert die Implementierung von benutzerdefiniertem CSS in Designs. Die Designs der Learning Suite sind sehr komplex, so dass benutzerdefiniertes CSS bisher in .json-Dateien geschrieben werden musste. Das Update ermöglicht es nun, benutzerdefiniertes CSS direkt in die übliche .css-Datei zu schreiben.

Nutzen und Anwendungsfälle: Vereinfacht die Handhabung des benutzerdefinierten CSS mit dem neuen Framework (react). Dies wiederum ermöglicht eine größere Flexibilität und verringert das Fehlerrisiko.

Zielgruppe: Alle Nutzer

Einrichtung und Zugriff: Nicht erforderlich

Anmerkungen und Einschränkungen: Keine

Test: Dieses Update ist recht technisch und betrifft nur Kunden mit benutzerdefinierten Designänderungen: Rufen Sie eine beliebige Learning Suite-Seite auf (z. B. den Konfigurationsmanager), sehen Sie sich den Seitenquelltext an und überprüfen Sie, ob die Datei ucl.custom.css mit der richtigen URL eingebettet ist.

Risikobewertung: Niedrig

Sicherheitsergebnisse (Sonstiges)

Übersicht: Mit dem Innovation Pack 23 gab es ein Update, um ein potenzielles Sicherheitsrisiko zu verringern.

Authentifizierung und Sitzungsmanagement bei Passwortänderung für AWS-Systeme

Überblick: Das Session-Handling wurde aktualisiert, um alle aktiven Browser-Sessions zu deauthentifizieren, wenn ein Nutzer sein Passwort ändert. Dieses potenzielle Risiko wurde auf AWS-Systemen mit Kubernetes-Architektur festgestellt, wenn ein Benutzer mehrere Browsersitzungen geöffnet hatte.

Nutzen und Anwendungsfälle: Sorgt für mehr Sicherheit und verhindert potenzielles Account-Hijacking. Die Aktualisierung des Passworts innerhalb einer Session führt zur Beendigung aller aktiven Sessions in anderen Browsern.

Zielgruppe: Alle Nutzer

Einrichtung und Zugriff: Keine Konfiguration erforderlich

Anmerkungen und Einschränkungen: Dieses Risiko war spezifisch für von AWS gehostete Systeme in der Kubernetes-Architektur.

Test: Zum Testen melden Sie sich mit demselben Benutzer in verschiedenen Browsern beim LMS an. Ändern Sie dann das Passwort in einem Browser und aktualisieren Sie die anderen Browser, um zu prüfen, ob die entsprechenden Sitzungen beendet werden.

Risikobewertung: Niedrig

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.