• SCIM-Bereitstellung mit Entra ID konfigurieren (Azure AD)

    Nach der Einrichtung von SSO (Single Sign-on) kannst du Udemy für die SCIM 2.0-Bereitstellung (System for Cross-domain Identity Management) in Entra ID (früher „Azure AD“) mit Udemy Business konfigurieren. Auf diese Weise kannst du in Entra ID Bereitstellungen durchführen und aufheben, Gruppen erstellen, Gruppenmitgliedschaften verwalten und Nutzerprofilangaben wie Name und E-Mail-Adresse ändern, wobei Udemy Business automatisch aktualisiert wird. Du brauchst diese Vorgänge dann nicht mehr einzeln in Entra ID und Udemy Business durchzuführen, da alles von Entra ID synchronisiert wird.

    Hinweis: Entra ID wurde früher als Azure AD bezeichnet.

    Zur Aktivierung der SCIM-Bereitstellung für dein Udemy Business-Konto gehst du zunächst in deinem Udemy Business-Konto zu Verwalten > Einstellungen > Bereitstellung (SCIM).

    Klicke auf Einrichtung beginnen, befolge die Anweisungen zur Aktivierung von SCIM und erzeuge den geheimen Token (Bearer-Token), den du dann in Entra ID eingeben musst.

    Hinweis: 

    • Vor der SCIM-Aktivierung muss erst SSO aktiviert werden.
    • SSO und Bereitstellung sind für Udemy Business-Kund:innen mit einem Enterprise-Abo verfügbar.
    • Über Entra ID bereitgestellte Nutzer:innen nehmen erst dann eine Lizenz in Anspruch, wenn sie sich zum ersten Mal bei der Udemy Business-App anmelden.
    • Änderungen an der SCIM-Aktivierung können nur von Entra ID aus nach Udemy Business synchronisiert werden, die umgekehrte Richtung ist nicht möglich.
    • Mit SCIM in Entra ID verwaltete Nutzer:innen und Gruppen können in der Udemy Business-App nicht verändert werden. Alle Nutzer- und Gruppendaten stammen immer von SCIM und sind nur dort änderbar.
    • Du kannst aber weiterhin Gruppen manuell in Udemy Business anlegen, wenn du Nutzer:innen hast, die du nicht von Entra ID übertragen musst oder möchtest, z. B. befristete Mitarbeiter:innen oder Aushilfen.

    SCIM-Bereitstellung mit Entra ID konfigurieren

    1. Zur Aktivierung der SCIM-Bereitstellung für Udemy Business musst du zunächst in deinem Udemy Business-Konto „Verwalten > Einstellungen > Bereitstellung (SCIM)“ aufrufen.

    2. Klicke auf Einrichtung beginnen, wähle deinen Identitätsanbieter aus und befolge die Anleitung zum Erzeugen des geheimen Tokens (der „Bearer-Token“), den du anschließend in Entra ID eingeben musst.

    1a.png

    3. Rufe nun dein Entra ID-Konto auf, navigiere dort zu deiner Udemy Business-SSO-App und führe die folgenden Schritte zur Einrichtung durch. Microsoft bietet auch eine Konfigurationsanleitung zur SCIM-Bereitstellung mit Entra ID, in der du weitere Einzelheiten findest.

    Wähle im Azure-Portal den Tab Provisioning (Bereitstellung) aus.

    (Hinweis: „udemyazure“ ist ein Testname, den wir in den folgenden Screenshots verwendet haben, um die SCIM-Konfiguration zu veranschaulichen. Du musst die App suchen, die von deinem Team bei der Konfiguration deiner eigenen Instanz benannt wurde.)

    1b.png

    4. Wähle als „Provisioning Mode“ (Bereitstellungsmodus) Automatic (Automatisch) aus.

    1c.png

    5. Im Abschnitt Admin Credentials (Administratoranmeldeinformationen):

    Die Tenant URL (Mandanten-URL) lautet: https://deinedomain.udemy.com/scim/v2 („deinedomain“ steht hier für die URL deines Udemy Business-Kontos).

    Secret Token(Geheimer Token): Dies ist ein sogenannter Bearer-Token, den du in deinem Udemy Business-Konto erzeugen oder einsehen kannst. (Den geheimen Token kannst du unter „Verwalten > Einstellungen > Nutzerzugriff“ abrufen.)

    6. Klicke auf Test Connection (Verbindung testen), um zu prüfen, ob es funktioniert.

    Optional: Du kannst eine E-Mail-Adresse eingeben, wenn du dich von Azure per E-Mail über Fehler benachrichtigen lassen möchtest.

    1d.png

    7. In Mappings (Zuordnungen):

    Überprüfe die Attributzuordnung:

    1e.png

    Azure SCIM Attribute.png

    Vergewissere dich, dass die erforderlichen Attribute im Attribut „customappsso“ hinzugefügt wurden, da diese Felder für die SCIM-Bereitstellung in Udemy benötigt werden.

    Unterstützte Attribute

    SCIM-Attribut Erforderlich? Beschreibung
    emails[type eq "work"].value Ja E-Mail-Adresse des Nutzers bzw. der Nutzerin. Muss eindeutig sein.
    userName Ja Der userName vom Identitätsanbieter. Muss eindeutig sein.
    aktiv Ja Flag setzen, um Nutzer:innen zu deaktivieren/reaktivieren
    externalId Ja Die externalId des Nutzers bzw. der Nutzerin vom Identitätsanbieter. Muss eindeutig sein.

    urn:ietf:params:scim:schemas:extension:

    enterprise:2.0:User:employeeNumber

    Ja Gibt das Feld „employeeNumber“ aus „EnterpriseSchema“ zurück und speichert es als Feld „external_id“. Muss dem Attribut entsprechen, das an „externalId“ gesendet werden soll.
    name.givenName Nein Der Vorname des Nutzers bzw. der Nutzerin. Diese Attribute sind zwar nicht obligatorisch, wir empfehlen die Angabe aber trotzdem, weil es die Identifizierung der Nutzer:innen erleichtert.
    name.familyName Nein Der Nachname (Familienname) des Nutzers bzw. der Nutzerin. Diese Attribute sind zwar nicht obligatorisch, wir empfehlen die Angabe aber trotzdem, weil es die Identifizierung der Nutzer:innen erleichtert.
    name, { givenName, familyName } Nein Vor- und Nachname des Nutzers bzw. der Nutzerin. Diese Attribute sind zwar nicht obligatorisch, wir empfehlen die Angabe aber trotzdem, weil es die Identifizierung der Nutzer:innen erleichtert.
    title Nein Stellenbezeichnung des Nutzers bzw. der Nutzerin, z. B. „Senior Engineer“

    urn:ietf:params:scim:schemas:extension:

    udemy:2.0:User:licensePoolName

    Nein Die Lizenzpool-Bezeichnung

    Edit_attribute.jpg

    Vergewissere dich, dass das Attribut Switch([IsSoftDeleted], , "False", "True", "True", "False") zu active zugeordnet ist (dies ermöglicht es, die Deaktivierung von Nutzer:innen zu übergeben).

    mapping_type.jpg

    8. Scrolle in „User Attributes Mapping“ (Nutzerattributzuordnung) ganz nach unten und aktiviere Show advanced options (Erweiterte Optionen anzeigen).

    Wähle Edit attribute list for customappsso (Attributliste für customappsso bearbeiten) und aktiviere Exact case (Groß-/Kleinschreibung beachten) für id und userName.

    9. Gehe zum Haupt-Einstellungsbildschirm für die Bereitstellung zurück:

    1h.png

     

    10. Wähle unter Scope (Geltungsbereich) aus, wie die Nutzer:innen und Gruppen synchronisiert werden sollen.

    1i.png

    Wähle Sync only users and groups who are assigned the Udemy Business app (Nur Nutzer:innen und Gruppen synchronisieren, die der Udemy Business-App zugewiesen sind), wenn du den Zugriff auf bestimmte Mitarbeiter:innen oder Abteilungen beschränken willst. Wenn alle Mitarbeiter:innen Zugriff haben sollen, wählst du Sync all users and groups (Alle Nutzer:innen und Gruppen synchronisieren).

    1j.png

    So kannst du weiteren Nutzer:innen und Gruppen Zugriff auf Udemy Business bereitstellen:

    11. Klicke auf Users and groups (Nutzer:innen und Gruppen).

    users_and_groups.png

    12. Klicke auf Add User (Nutzer:in hinzufügen). (Du kannst dann sowohl Nutzer:innen als Gruppen hinzufügen.)

    Wähle alle Nutzer:innen oder Gruppen aus, die du der Anwendung hinzufügen möchtest, und klicke dann auf Select (Auswählen).

    Add_assignment.png

    Problembehebung

    In Bezug auf Zuordnungen:

    User_mapping.png

    Falls bei der Bereitstellung dieser Fehler auftritt:

    {"schemas":["urn:ietf:params:scim:api:messages:2.0:Error"],"status":400,"detail":"{'emails': ['This field is required.']}"}

    In diesem Fall musst du die Zuordnung des bzw. der Nutzer:in ändern.

    Edit_attribute.png

    emails[type eq "work"].value muss zu userPrincipalName zugeordnet werden, sofern sich die E-Mail-Adresse in userPrincipalName befindet.

    Du kannst im Nutzerprofil nachsehen, in welchem Feld sich die E-Mail-Adresse befindet.

    user_profile.png

    Falls bei der Nutzerbereitstellung Fehler auftreten, kannst du den Bereitstellungsprotokollen weitere Einzelheiten entnehmen.

    • Zum Einsehen dieser Protokolle gehst du in Azure unter „Provisioning (Bereitstellung) > Provisioning Logs (Bereitstellungsprotokolle) > Search for the affected user (Betroffene:n Nutzer:in suchen) > Troubleshooting & Recommendations (Fehlerbehebung & Empfehlungen)“ zur Udemy-App.
    • Falls du ein Support-Ticket eröffnen musst, sende bitte einen Screenshot der Azure-Bereitstellungsprotokolle mit, damit wir die Fehlerursache ermitteln können.

    Artikel lesen
  • SCIM-Bereitstellung mit OneLogin konfigurieren

    Nach der Einrichtung von SSO (Single Sign-on) kannst du die SCIM-Bereitstellung (System for Cross-domain Identity Management) in OneLogin mit Udemy Business konfigurieren. Auf diese Weise kannst du in OneLogin Bereitstellungen durchführen und aufheben, Gruppen erstellen, Gruppenmitgliedschaften verwalten und Nutzerprofilangaben wie Name und E-Mail-Adresse ändern, wobei Udemy Business automatisch aktualisiert wird. Du brauchst diese Vorgänge dann nicht mehr einzeln in OneLogin und Udemy Business durchzuführen, da alles von OneLogin synchronisiert wird.

    In diesem Artikel wird die Konfiguration der SCIM-Bereitstellung mit OneLogin erklärt. 

    So aktivierst du die SCIM-Bereitstellung

    Zur Aktivierung der SCIM-Bereitstellung für dein Udemy Business-Konto gehst du zunächst in deinem Udemy Business-Konto zu Verwalten > Einstellungen > Bereitstellung (SCIM).

    Klicke auf Einrichtung beginnen, befolge die Anweisungen zur Aktivierung von SCIM und erzeuge den geheimen Token (Bearer-Token), den du dann in OneLogin speichern musst.

    1_21.png

    Rufe nun dein OneLogin-Konto auf, navigiere dort zu deiner Udemy Business SSO-App und führe die folgenden Einrichtungsschritte durch. 

    Weitere Informationen zur Bereitstellung von Nutzern findest du auch im Support-Center von One Login.

    1. Klicke im Administratorbereich auf den Tab „Applications“ (Anwendungen).
      2_21.png
    2. Gehe auf den Tab „Configuration“ (Konfiguration). Gib auf dem Tab „Configuration“ (Konfiguration) den SCIM-Bearer-Token aus deinem Udemy Business-Konto ein, den du weiter oben erzeugt hast, und setze die Verbindung auf „Enabled“ (Aktiviert):
      3_21.png
    3. Gehe nun auf den Tab „Provisioning“ (Bereitstellung) und aktiviere die Checkbox „Enable provisioning“ (Bereitstellung aktivieren):

    workflow_enable_provisioning.png

    So erstellst du eine Regel, mit der die Gruppe eines Nutzers mit Udemy Business synchronisiert wird

    Bei OneLogin werden „Rules“ (Regeln) verwendet, um einen Nutzer mit einer bestimmten Gruppe in deinem Udemy Business-Konto zu synchronisieren. Je nach deinen Synchronisierungsanforderungen für Gruppen gibt es viele Möglichkeiten, Regeln zu erstellen. Hier zeigen wir dir in einem Beispiel, wie du eine Regel zur Synchronisierung eines Nutzers mit einer Gruppe namens „Engineers“ erstellst.

    1. Gehe auf den Tab „Rules“ (Regeln) und wähle „Add Rule“ (Regel hinzufügen) aus:
      rules_.png
    2. Voraussetzung: Bevor du mit dem nächsten Schritt fortfährst, kontaktiere bitte unser Support-Team und bitte um die Aktivierung des Feature-Flags. Das sorgt dafür, dass SCIM-Gruppen von Udemy Business abgerufen werden können. Wenn dieses Feature aktiviert ist, kannst du die vorhandenen Gruppen von Udemy Business abrufen und in OneLogin darauf zugreifen.
    3. Die Regel konfigurierst du im Bildschirm „Edit Mapping“ (Zuordnung bearbeiten). In diesem Beispiel erstellen wir eine Regel mit der folgenden Logik: Wenn die Gruppe des Nutzers „Engineering Group“ ist, dann ist die Aktion „Gruppe des Nutzers in Udemy Business auf 'Engineers' setzen“:
      Um Gruppen „From Existing“ (Aus den vorhandenen) in Udemy Business abzurufen, musst du die „Entitlements“ (Berechtigungen) aktualisieren.
      actions.png
    4. Gehe auf den Tab „Parameters“ (Parameter):
      OneLogin parameters.png

      Um den externalId-Wert von OneLogin an Udemy zu senden, stelle bitte sicher, dass der Parameter urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:employeeNumber hinzugefügt wurde.
      Hinweis: Die hinzugefügten Parameter werden möglicherweise nicht sofort übernommen, da die Parameter in OneLogin täglich synchronisiert werden.

    5. Klicke auf das Feld „groups“ (Gruppen):
      groups_field.png
    6. Aktiviere die Checkbox „Include in User Provisioning“ (In Nutzerbereitstellung einschließen) und speichere:
      9_21.png
    7. Du hast jetzt einen Nutzer in OneLogin hinzugefügt und die Gruppe dieses Nutzers auf „Engineering Group“ gesetzt:
      10_21.png
    8. Nachdem der Nutzer der Anwendung „Udemy Business“ hinzugefügt und synchronisiert wurde, wird er gemäß der Regel zur Gruppe „Engineers“ in deinem Udemy Business-Konto hinzugefügt:

    11_21.png

    Artikel lesen
  • Automatisierung der Nutzer- und Gruppenverwaltung mit SCIM

    Udemy Business unterstützt die automatisierte Zugriffs- und Identitätsverwaltung für Nutzer und Gruppen mithilfe des Standards SCIM (System for Cross-domain Identity Management). SCIM wird von SSO-Services (Single Sign-On) und Identitätsanbietern in verschiedenen Apps und Tools, darunter auch Udemy Business, zur Nutzerverwaltung verwendet.

    Es eignet sich hervorragend für Unternehmen, da es eine leicht erweiterbare, sehr sichere und unkomplizierte Benutzerverwaltung für Udemy Business ermöglicht.

    Das kannst du mit SCIM durchführen:

    • Lizenzen und Zugriff für Nutzer und Gruppen automatisch über deinen Identitätsanbieter bereitstellen (Bereitstellung)
    • Nutzer und Gruppen automatisch über deinen Identitätsanbieter deaktivieren (Bereitstellung aufheben)
    • Nutzer reaktivieren, deren Bereitstellung zuvor aufgehoben wurde (vorausgesetzt, dass die personenbezogenen Daten des Nutzers nicht anonymisiert wurden)
    • Nutzerdaten (Name, E-Mail-Adresse) aktualisieren
    • Gruppen erstellen, entfernen und bearbeiten
    • Gruppenmitgliedschaften verwalten (Zugehörigkeit von Nutzern zu Gruppen ändern)

    Das kannst du mit SCIM nicht durchführen:

    • Personenbezogene Daten eines Nutzers über SCIM bei einem Identitätsanbieter löschen
    • Daten von Udemy Business zum Identitätsanbieter zurücksynchronisieren 
    • Rollen verwalten (Administrator, Gruppenadministrator, Nutzer)
    • Udemy Business Pro-Lizenzen zuweisen
    • Wichtiger Hinweis: Über SCIM bereitgestellte Nutzer erhalten keine automatisch erzeugte E-Mail-Einladung zur Aktivierung ihrer Udemy Business-Lizenzen (im Gegensatz zu Nutzern, die manuell über das Udemy Business-Nutzermanagement-Portal eingeladen werden).  Wir empfehlen deinem Weiterbildungsteam, diesen Nutzern eine separate E-Mail zu senden, in der ihnen erklärt wird, wie sie durch Anmeldung über ihren SSO-Anbieter Zugriff auf Udemy Business erhalten. Nutzer:innen, die über SCIM reaktiviert werden, werden jedoch durch eine automatisch generierte E-Mail von Udemy über die Reaktivierung ihres Kontos benachrichtigt.

    Wenn du eine dieser Aktionen durchführst, werden die Daten oder Änderungen automatisch in Udemy Business aktualisiert.

    Wichtigste Punkte zur SCIM-Integration für dein Udemy Business-Konto

    • Die Einrichtung deiner SCIM-Integration hängt von deinem verwendeten Identitätsanbieter ab. 
    • Udemy Business unterstützt die SCIM-Bereitstellung für die gängigen Identitätsanbieter und SSO-Services, die Zugriffs- und Identitätsmanagement anbieten.
    • SCIM-Bereitstellung ist für Kunden mit einem Enterprise-Abo verfügbar, die SSO (Single Sign-on) verwenden.
    • Nutzer, die bei deinem SSO-Service über SCIM bereitgestellt werden, belegen erst dann eine Lizenz, wenn sie sich zum ersten Mal bei Udemy Business angemeldet haben und damit beigetreten sind. Wenn Nutzer über SCIM bereitgestellt werden, sich aber noch nicht zum ersten Mal angemeldet haben, werden sie auf der Seite „Alle Nutzer“ mit dem Status Keine Lizenz aufgeführt.
      • Bei Kunden, die Udemy Business Pro-Lizenzen für alle Nutzer erworben haben, werden die Pro-Lizenzen automatisch zugewiesen, sobald die Nutzer entweder ihre Einladung annehmen oder sich per SSO/SCIM authentifizieren.
      • Hinweis: Wenn SCIM aktiviert ist, verwendet Udemy das SCIM-Protokoll für die Attributzuordnung über SAML.  Da „groups“ und „lmsUserID“ keine SCIM-Nutzerattribute sind, werden sie nicht über SAML übergeben, wenn sie vorher in einer reinen SAML-Konfiguration zugeordnet wurden. Da „groups“ kein SCIM-Nutzerattribut  ist, wird „groups“ nicht über SAML übergeben, wenn das Attribut vorher in einer reinen SAML-Konfiguration zugeordnet wurde.

      SCIM-verwaltete Nutzer:innen sind mit einem grauen „SCIM“-Schriftzug neben ihrem Namen und ihrer E-Mail-Adresse gekennzeichnet.  Nutzer:innen mit dem Status "Via SCIM bereitgestellt" belegen erst eine aktive Lizenz, nachdem sie sich zum ersten Mal angemeldet haben:

    So aktivierst du die SCIM-Bereitstellung

    Zur Aktivierung der SCIM-Bereitstellung für dein Udemy Business-Konto musst du zunächst in deinem Udemy Business-Konto Verwalten > Einstellungen > Bereitstellung (SCIM) aufrufen.

    Scrolle dann zum Abschnitt „SCIM-Integration“. Befolge nun die Anweisungen zur Aktivierung von SCIM, wähle deinen Identitätsanbieter aus der Dropdown-Liste aus und erzeuge die Anmeldedaten (Nutzername und Passwort bzw. geheimer Schlüssel/Bearer-Token), die du dann im Rahmen der Konfiguration bei deinem Identitätsanbieter eingeben musst.

    provisioning_scim_start_setup.png

    Pour terminer la configuration du SCIM, suivez les instructions dans le guide correspondant au fournisseur d'identité que vous utilisez ci-dessous.

    Guide de configuration Okta 

    Guide de configuration Azure AD 

     OneLogin-Konfigurationsanleitung

    Infos zur Konfiguration für andere Identitätsanbieter oder eigene Tools findest du in der  Konfigurationsanleitung für die SCIM-API von Udemy.

    So deaktivierst du die SCIM-Bereitstellung

    Zur Deaktivierung der SCIM-Bereitstellung für dein Udemy Business-Konto (wenn du z. B. zu einem anderen Provider wechselst oder SCIM nicht mehr benötigst) musst du in deinem Konto zunächst Verwalten > Einstellungen > Bereitstellung (SCIM) aufrufen.

    Faites défiler la page jusqu'à la section Intégration SCIM, cliquez sur le lien Désactiver l'intégration et suivez les instructions pour désactiver le SCIM. Cette opération désactive l'intégration du côté d'Udemy Business, mais votre équipe informatique devra également désactiver l'intégration du côté du fournisseur d'identité. 

    Vous pouvez continuer à utiliser Udemy Business comme d'habitude, mais vous devrez désormais mettre à jour manuellement les informations des utilisateurs et des groupes dans la plate-forme.

    provisioning_scim_disable_integration.png

    Bereitstellung von Nutzern über SCIM aufheben

    Beachte bitte, dass Udemy Business-Nutzer, deren Bereitstellung über deinen Identitätsanbieter aufgehoben wurde, in Udemy Business deaktiviert werden.  Dieses „softe Löschen“ ermöglicht es, die Verlaufsdaten der Nutzer beizubehalten, sodass sie bei einer eventuellen späteren Reaktivierung noch verfügbar sind. Außerdem verhindert es eine versehentliche, irreversible Anonymisierung der Daten eines Nutzers.  Wenn du einen Nutzer und alle seine Daten unwiderruflich löschen möchtest, gehe bitte wie folgt vor:

    Personenbezogene Daten für SCIM-verwaltete Nutzer löschen

    Wenn ein Nutzer nicht mehr durch deinen Identitätsanbieter via SCIM verwaltet werden soll, musst du zuerst die Bereitstellung dieses Nutzers in deinem SSO Active Directory aufheben und dann die personenbezogenen Daten dieses Nutzers in deinem Udemy Business-Konto löschen. 

    Falls du einen Nutzer direkt in deinem Udemy Business-Konto (d. h. nicht über deinen SSO-Identitätsanbieter) verwalten willst, seine personenbezogenen Daten aber nicht löschen willst, dann kontaktiere bitte unser Support-Team, um dir weiterhelfen zu lassen.

    Artikel lesen
  • SCIM-Bereitstellung mit Okta konfigurieren

    In dieser Anleitung wird erklärt, welche Schritte für bestehende Okta- und Udemy Business-Kunden erforderlich sind, um die automatische Bereitstellung, Aufhebung der Bereitstellung, Profilaktualisierungen und Gruppenverwaltung der Udemy Business-Nutzer:innen und -Gruppen mit SCIM 2.0 (System for Cross-domain Identity Management) zu konfigurieren.

    Hinweise:

    • Wenn die Anmeldung per SSO (Single Sign-On) für Udemy Business in Okta bereits aktiviert ist, brauchst du SSO nicht erneut zu konfigurieren. Gehe dann zur Einrichtung von SCIM in Okta einfach unter „Applications“ (Anwendungen) auf den Tab Provisioning (Bereitstellung). 
    • Wenn SSO bei dir manuell von einem Mitarbeiter unseres Teams konfiguriert wurde, musst du unsere neue Udemy Business-App zu deinem Okta-Konto hinzufügen. Du findest sie, indem du unter „Applications“ (Anwendungen) nach „Udemy Business“ suchst. Da es sich in Okta um eine neue Version unserer App handelt, müssen bestehende Kunden SSO möglicherweise neu konfigurieren, bevor die SCIM-Bereitstellung eingerichtet werden kann (Anleitung siehe unten).
    • Über Okta bereitgestellte Nutzer:innen belegen erst eine aktive Lizenz, nachdem sie sich zum ersten Mal bei der Udemy Business-App angemeldet haben. 
    • SCIM-verwaltete Nutzer:innen und Gruppen können nur in Okta geändert werden.
    • Wenn SCIM aktiviert ist, verwendet Udemy das SCIM-Protokoll für die Attributzuordnung über SAML. Da „groups“ kein SCIM-Nutzerattribut  ist, wird „groups“ nicht über SAML übergeben, wenn das Attribut vorher in einer reinen SAML-Konfiguration zugeordnet wurde.

    Inhalt

    • Funktionen
    • Anforderungen
    • Konfigurationsschritte
    • Schemaerkennung
    • Tipps zur Fehlerbehebung

    Funktionen

    Die folgenden SCIM-Bereitstellungsfunktionen werden unterstützt:

    • Nutzer:innen aus Okta bereitstellen
      • Nutzer:innen, die der Udemy Business-Anwendung in Okta zugewiesen wurden, werden in Udemy Business bereitgestellt.
      • Beachte bitte, dass Nutzer:innen, die in Okta über SCIM bereitgestellt werden, keine automatisch erzeugte Einladungs-E-Mail erhalten.
    • Profilaktualisierungen per Push
      • Über Okta durchgeführte Aktualisierungen des Nutzerprofils werden für Nutzer:innen, die Udemy Business in Okta zugeordnet sind, per Push an Udemy Business übertragen.
    • Nutzerdeaktivierung per Push
      • Wenn du eine:n Nutzer:in über Okta deaktivierst bzw. seinen/ihren Zugriff auf die App sperrst, wird er/sie gleichzeitig in Udemy Business deaktiviert und aus allen Gruppen entfernt.
      • Hinweise: Die Lernaktivitätsdaten deaktivierter Nutzer:innen werden für Berichtszwecke oder für eine eventuelle zukünftige Reaktivierung beibehalten.  Wenn du eine:n SCIM-verwaltete:n deaktivierte:n Nutzer:in endgültig löschen willst, musst du zunächst die SCIM-Verbindung für diese:n Nutzer:in aufheben. Der Udemy Business-Support kann dir dabei helfen. 
    • Nutzer:innen reaktivieren
      • Nutzer:innen können in Udemy Business reaktiviert werden, indem die Anwendung dem bzw. der entsprechenden Nutzer:in über Okta neu zugewiesen wird.
      • Beachte bitte, dass reaktivierte Nutzer:innen mit einer automatisch generierten E-Mail über ihre Reaktivierung benachrichtigt werden.
    • Gruppenübertragung per Push
      • Gruppen und die zugehörigen Mitgliedsdaten werden per Push an Udemy Business übertragen. Die Gruppenverwaltung beschränkt sich auf Gruppen, die ursprünglich per Push aus Okta übertragen wurden, da Udemy keine Daten zu Gruppen sendet, die in Udemy Business angelegt wurden.

    SCIM-verwaltete Nutzer:innen sind mit einem grauen „SCIM“-Schriftzug neben ihrem Namen und ihrer E-Mail-Adresse gekennzeichnet.  Nutzer:innen mit dem Status "Via SCIM bereitgestellt" belegen erst eine aktive Lizenz, nachdem sie sich zum ersten Mal angemeldet haben:

     

    Konfigurationsschritte 

    Wenn du SSO für Okta nicht aktiviert hast oder SSO manuell durch unser Team eingerichtet wurde, dann führe bitte zunächst diese Konfigurationsschritte für SSO in Okta durch.

    • Du kannst SSO-Ausfälle verhindern, indem du die Udemy Business-Kachel bis zum Abschluss der Neukonfiguration von SSO und SCIM in deinem Okta-Dashboard ausblendest. 
    • Klicke neben „Application Visibility“ (Sichtbarkeit der Anwendung) auf „Do not display application icon to users“ (Anwendungssymbol nicht für Nutzer:innen anzeigen).

    1. Klicke zunächst auf den Tab Provisioning (Bereitstellung) und dann auf Configure API integration (API-Integration konfigurieren).

    configure_api_integration.png

    2. Klicke auf Enable API integration (API-Integration aktivieren) und gib deine Subdomain, deine Domain (udemy.com), deine CLIENT_ID als username (Nutzername) und deine SECRET_ID als password (Passwort) ein.

    [Du kannst diese Anmeldedaten in deinem Udemy Business-Konto auf der Seite „Bereitstellung (SCIM)“ unter Verwalten -> Einstellungen erzeugen bzw. einsehen.]

    3. Klicke auf Test API Credentials (API-Anmeldedaten testen). Daraufhin sollte dir in einer Meldung bestätigt werden, dass du die SSO-Integration erfolgreich abgeschlossen hast. Falls dies nicht der Fall ist, sende bitte eine Nachricht an den Udemy Business-Support, in der du die angezeigte Fehlermeldung angibst.


    4. Klicke auf Save (Speichern). Du wirst dann auf die Konfigurationsseite Provisioning (Bereitstellung) der Anwendung weitergeleitet.


    provisioning_to_app_save.png

    5. Klicke unter To App (Zur App) auf „Edit“ (Bearbeiten). Dort kannst du nun einzelne Funktionen nach Wunsch aktivieren. Für die Nutzung des gesamten Funktionsumfangs empfehlen wir, auf dieser Seite die Optionen Create Users (Nutzer:innen anlegen), Update User Attributes (Nutzerattribute aktualisieren) und Deactivate Users (Nutzer:innen deaktivieren) zu aktivieren.

    provisioning_to_app_edit.png
    6. Klicke auf Save (Speichern).

    7. Klicke auf den Tab Assignments (Zuweisungen), damit du Udemy Business einzelnen Nutzer:innen oder ganzen Gruppen zuweisen kannst. Zugewiesene Nutzer:innen werden nach dem Hinzufügen automatisch bereitgestellt. Nach Änderungen an ihren Profilen werden die Daten automatisch aktualisiert und nach dem Entfernen von Zuweisungen werden die jeweiligen Nutzer:innen automatisch deaktiviert.

    8. Wenn du Gruppen und die zugehörigen Mitgliedsdaten an Udemy Business senden willst, klicke auf den Tab Push Groups (Gruppen per Push übertragen).

    push_groups_to_ub.png
    9. Klicke dort auf + Push Groups (+ Gruppen per Push übertragen) und wähle die Gruppen aus, die per Push an Udemy Business übertragen werden sollen.

    Du kannst dabei die Gruppen einzeln auswählen oder eine Automatisierungsregel erstellen.

    find_groups_ub.png
    10. Wähle die Suchkriterien für die Gruppen aus und gib die erforderlichen Informationen über die Gruppen ein, deren Daten du an Udemy Business übertragen willst.

    push_groups_by_name.png

    11. Aktiviere nach dem Auswählen der Gruppe die Option Push group memberships immediately (Gruppenmitgliederdaten sofort per Push übertragen), damit nicht nur die Gruppe, sondern auch die Mitglieder direkt beim Auswählen der Gruppe übertragen werden, und klicke auf Save (Speichern).

    12. Führe die vorhergehenden Schritte für alle Gruppen aus, die du an Udemy Business übertragen möchtest.

    Hinweis: In Udemy Business sind nach der Einrichtung keine Änderungen an SCIM-verwalteten Nutzer:innen oder Gruppen möglich.

    Artikel lesen
  • SCIM-Bereitstellung mit der SCIM-API von Udemy konfigurieren

    Übersicht

    System for Cross-Domain Identity Management (SCIM) ist eine Standard-API, über die du die Bereitstellung/Bereitstellungsaufhebung von Nutzer:innen und Gruppen sowie die Aktualisierung von Nutzer- und Gruppendaten vom Identitätsanbieter des Kunden in dein Udemy Business-Konto automatisieren kannst.  SCIM wird von verschiedenen Identitätsanbietern wie z. B. Okta, Azure AD und OneLogin unterstützt.  Du kannst die SCIM-API von Udemy Business auch für andere Identitätsanbieter oder selbstentwickelte Tools verwenden.

    Wenn in deinem Unternehmen einer der folgenden Identitätsanbieter verwendet wird, dann verwende für die SCIM-Konfiguration bitte die entsprechende Anleitung:

    SCIM nutzt eine standardisierte REST-API mit Daten im JSON-Format. Udemy Business unterstützt die Version 2.0 des SCIM-Standards. Die API kann von allen Kunden mit einem Enterprise-Abo genutzt werden.

    Die SCIM-API von Udemy Business unterstützt folgende Funktionen: 

    • Nutzer:innen bereitstellen
    • Bereitstellung von Nutzer:innen aufheben (Deaktivierung)
    • E-Mail-Adressen ändern
    • Nutzerdaten ändern
    • Gruppen bereitstellen
    • Nutzer:innen zu Gruppen hinzufügen bzw. daraus entfernen

    Beschreibung des SCIM-Protokolls

    Das SCIM-Protokoll ist ein auf Anwendungsebene angewendetes REST-Protokoll für die Bereitstellung und Verwaltung von Identitätsdaten im Web. Dabei handelt es sich um ein Client-Server-Protokoll, wobei der Identitätsanbieter der Client und Udemy Business der Server ist.

    Der Vorgang läuft im Prinzip wie folgt ab:

    • Wenn dem:der Nutzer:in im Identitätsanbieter des Kunden Zugriff auf Udemy Business gewährt wird, dann sendet der Identitätsanbieter eine Anforderung an Udemy, um zu überprüfen, ob diese:r Nutzer:in in unserer Datenbank enthalten ist. Damit wird eine Anforderung zur Suche des:der Nutzers:Nutzerin anhand eines Attributs wie „userName“ oder „email“ gestartet.
    • Wenn der:die Nutzer:in nicht vorhanden ist, sendet der Identitätsanbieter eine Anforderung zur Erstellung eines:einer Nutzers:Nutzerin.
    • Wenn der:die Nutzer:in vorhanden ist, sendet der Identitätsanbieter eine Aktualisierungsanforderung für diese:n Nutzer:in.
    • Wenn der Zugriff auf Udemy Business verweigert wird, sendet der Identitätsanbieter eine Anforderung zur Deaktivierung des:der Nutzers:Nutzerin in unserer Datenbank an Udemy.
    • Der Identitätsanbieter kann auch Anforderungen zum Ändern von Nutzerdaten senden.

    Wie funktioniert der API-Zugriff?

    Um die Autorisierungs-Anmeldedaten abzurufen, die du zur Verbindung mit der SCIM-API brauchst, musst du in deinem Udemy Business-Konto über Verwalten -> Einstellungen -> Bereitstellung (SCIM) die SCIM-Integration einrichten. Beachte bitte, dass nur Administrator:innen auf diese Seite zugreifen können. 

    Klicke auf Einrichtung beginnen.

    provisioning_scim.png

    Wähle nun Anbieter auswählen und dann Benutzerdefiniert.

    select_provider.png

    Klicke auf Token erzeugen.

    generate_token.png

    Klicke in diesem Bildschirm auf Kopieren, um den Bearer-Token in die Zwischenablage zu kopieren.

    copy_bearer_token.png

     

    Du musst den Authorization-HTTP-Header mit dem Bearer-Token in deinen Anforderungen angeben, z. B.:

     

    GET /scim/v2/Users HTTP/1.1
    Host: <meinunternehmen>.udemy.com
    Accept: application/scim+json
    Authorization: Bearer <hier deinen Bearer-Token eingeben>
    Content-Type: application/scim+json

     

    Die SCIM-API von Udemy Business verwendet das HTTP-Protokoll und ist nur über eine sichere HTTPS-Verbindung verfügbar.

    Die Basis-URL für die API lautet https://<deinesubdomain>.udemy.com/scim/v2/.

    Wenn du eine Anwendung entwickelst, die mit der SCIM-API von Udemy Business interagiert, solltest du dich an den SCIM RFCs orientieren (siehe die Links am Ende dieses Artikels). Die Implementierung der SCIM-API von Udemy Business entspricht dem Standard.

    Aufrufratenlimit

    Udemy Business wendet Aufrufratenlimits auf die SCIM-API unter Berücksichtigung des HTTP-Standardprotokolls zu Aufrufratenlimits an. Wenn deine Anfrage das Aufrufratenlimit überschreitet, erscheint der HTTP-Fehlercode 429 und du musst kurz abwarten und es gemäß dem Retry-After--Header erneut versuchen.

    SCIM-API-Endpunkte

    Informationsendpunkte

    Diese Endpunkte sind zum Abrufen von Informationen vorgesehen und werden zur Konfiguration der Clients verwendet. Sie erfordern keine Authentifizierung, daher brauchst du beim Zugriff auf diese Endpunkte keinen Authorization-Header anzugeben.

     

    GET /ServiceProviderConfig

     

    Gibt Informationen über die SCIM-Implementierung von Udemy Business aus, beispielsweise zu den unterstützten Methoden.

     

    GET /Schemas

     

    Gibt Informationen zu den Schemas aus, die unsere SCIM-Implementierung unterstützt. Unterstützte Schemas sind „Users“ (Nutzer:innen) und „Groups“ (Gruppen).

     

    GET /Schemas/Users

     

    Gibt alle Attribute aus, die wir für „User“-Ressourcen unterstützen.

     

    GET /Schemas/Groups

     

    Gibt alle Attribute aus, die wir für „Group“-Ressourcen unterstützen.

    Nutzerendpunkte

    Mithilfe dieser Endpunkte kannst du Nutzer:innen auflisten, anhand von Attributen filtern, neue Nutzer:innen hinzufügen, Nutzerdaten aktualisieren oder Nutzer:innen deaktivieren/anonymisieren. 

    Falls die SCIM-API nicht alle Nutzer:innen ausgibt, kontaktiere bitte den Support von Udemy Business.

    Unterstützte Attribute

     

    SCIM-Attribut Erforderlich? Beschreibung 
    emails[type="work"]]['value']
    Ja E-Mail-Adresse des:der Nutzers:Nutzerin. Muss eindeutig sein.
    userName
    Ja Der userName vom Identitätsanbieter. Muss eindeutig sein.
    aktiv
    Ja Flag setzen, um Nutzer:innen zu deaktivieren/reaktivieren
    externalId
    Ja Die externalId des:der Nutzers:Nutzerin vom Identitätsanbieter. Muss eindeutig sein.
    urn:ietf:params:scim:schemas:extension:
    enterprise:2.0:User:employeeNumber
    Ja Gibt das Feld „employeeNumber“ aus „EnterpriseSchema“ aus und speichert es als Feld „external_id“.
    name.givenName
    Nein Der Vorname des:der Nutzers:Nutzerin. Diese Attribute sind zwar nicht obligatorisch, wir empfehlen die Angabe aber trotzdem, weil es die Identifizierung der Nutzer:innen erleichtert.
    name.familyName
    Nein Der Nachname (Familienname) des:der Nutzers:Nutzerin. Diese Attribute sind zwar nicht obligatorisch, wir empfehlen die Angabe aber trotzdem, weil es die Identifizierung der Nutzer:innen erleichtert.
    name, { givenName, familyName }
    Nein Vor- und Nachname des:der Nutzers:Nutzerin. Diese Attribute sind zwar nicht obligatorisch, wir empfehlen die Angabe aber trotzdem, weil es die Identifizierung der Nutzer:innen erleichtert.
    Titel
    Nein Stellenbezeichnung des:der Nutzers:Nutzerin, z. B. „Senior Engineer“
    groups
    Nein SCIM-Gruppe(n) des:der Nutzers:Nutzerin


    Hinweis: Wenn du andere Attribute angibst, die nicht auf dieser Liste stehen, werden sie ignoriert.

     

    GET /Users

     

    Gibt eine in Seiten aufgeteilte (paginierte) Liste der Nutzer:innen aus, standardmäßig 12 Nutzer:innen pro Seite. Du kannst

     

    die Anzahl 

    und

     

    Parameter an startIndex übergeben 

     

    um das Abfrageergebnis in Seiten aufgeteilt auszugeben. Zum Beispiel:

     

    GET /scim/v2/Users?startIndex=1&count=100 HTTP/1.1

     Host: <meinunternehmen>.udemy.com

     Accept: application/scim+json

     Authorization: Bearer <hier deinen Bearer-Token eingeben>
    startIndex
    • ist der 1-basierte Index des ersten Ergebnisses im aktuellen Listenergebnissatz (Offset)

     

    • die Anzahl
    • ist die Anzahl von Ressourcen, die in einer Antwortauflistungsseite ausgegeben werden (d. h. das Limit). Du kannst mit einer Anforderung bis zu 1000 Nutzer:innen abrufen. Wenn dieser Wert nicht angegeben ist, wird er standardmäßig auf 12 gesetzt.

    Beispielanfrage

    GET https://demo.udemy.com/scim/v2/Users 
    {
    "schemas": [
    "urn:ietf:params:scim:api:messages:2.0:ListResponse"
    ],
    "totalResults": 18,
    "startIndex": 1,
    "Resources": [
    {
    "id": "KwLzN3",
    "externalId": "00u3mlhj4x1E482sK5d7",
    "userName": "firstName.lastName@domain.com",
    "name": {
    "givenName": "firstName",
    "familyName": "lastName",
    "formatted": "firstName lastName"
    },
    "emails": [
    {
    "value": "firstName.lastName@domain.com",
    "type": "work",
    "primary": true
    }
    ],
    "title": "",
    "active": true,
    "groups": [
    {
    "value": "NZOaw",
    "display": "Group Test",
    "$ref": "https://demo.udemy.com/scim/v2/Groups/NZOaw"
    },
    {
    "value": "dn1K8",
    "display": "NewGroup2",
    "$ref": "https://demo.udemy.com/scim/v2/Groups/dn1K8"
    }
    ],
    "schemas": [
    "urn:ietf:params:scim:schemas:core:2.0:User",
    "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User"
    ],
    "meta": {
    "resourceType": "User",
    "location": "https://demo.udemy.com/scim/v2/Users/KwLzN3",
    "created": "2022-01-19T01:11:59Z",
    "lastModified": "2024-11-22T21:58:48Z"
    },
    "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User": {
    "employeeNumber": "64e63"
    }
    },
    [...]
    ],
    "itemsPerPage": 12
    }

     

    GET /Users?filter=

     

    Dieser Endpunkt wird verwendet, um Nutzer:innen anhand von bestimmten Attributen zu filtern. Du könntest z. B. anhand des Attributs „userName“ suchen:

     

    GET /Users?filter=userName eq "example..name

     

    Hinweis: Im vorangehenden Beispiel musst du die URL-Parameter kodieren (Prozentkodierung), die URL muss also wie folgt aussehen:

     

    GET /Users?filter=userName%20eq%20%22example.name%22

     

    Dies gibt eine Liste der Nutzerressourcen aus. Wenn keine Treffer vorhanden sind, wird eine leere Liste ausgegeben.

     

    GET Users?filter=groups.value eq "{SCIM_Group_ID}"

     

    Dies gibt alle Nutzer:innen aus, die zu dieser SCIM-Gruppe gehören

     

    Folgende Filter werden unterstützt:

     

    userName
    externalID
    emails[type eq=”work”]
    groups

     

    Folgende Operatoren werden unterstützt:

     

    und
    eq

     

    Antwort:

    • HTTP-Statuscode 200 mit der Liste der Einheiten, wenn erfolgreich
    • HTTP-Statuscode 501, wenn ein nicht unterstützter Filter angegeben wurde

     

    POST /Users

     

    Dieser Endpunkt wird zum Erstellen (Bereitstellen) neuer Nutzer:innen in Udemy Business verwendet.

    Die Antwort enthält ein

     

    Der id-Parameter 

     

    Attribut, das in allen nachfolgenden Anforderungen für Verweise auf diese:n Nutzer:in verwendet werden muss.

    Beachte bitte Folgendes:

    • Neue Nutzer:innen, die mit dieser Methode erstellt werden, belegen keine Lizenz. Sie belegen erst dann eine Lizenz, nachdem sie sich zum ersten Mal angemeldet haben.
    • Wenn für diese:n Nutzer:in eine offene Einladung vorhanden war, wird sie zu diesem Zeitpunkt genutzt.
      Der Nutzer bzw. die Nutzerin wird entsprechend den Angaben in der Einladung ggf. zu Gruppen hinzugefügt und/oder der entsprechenden Rolle bzw. entsprechenden Kursen zugewiesen.
    • Wenn versucht wird, eine:n Nutzer:in zu erstellen, der:die in Udemy Business schon vorhanden ist, wird diese:r Nutzer:in dann durch SCIM verwaltet (auf der Seite „Nutzer:innen verwalten“, durch ein kleines Link-Symbol gekennzeichnet). Dies ändert weder den Status noch die Lizenznutzung dieses:deser Nutzers:Nutzerin. Wenn der:die Nutzer:in aktiv war, bleibt er:sie aktiv, und wenn er:sie deaktiviert war, bleibt er:sie deaktiviert.

    Beispielanfrage

     

    POST https://demo.udemy.com/scim/v2/Users 
    {
    "schemas": [
    "urn:ietf:params:scim:schemas:core:2.0:User",
    "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User"
    ],
    "active": true,
    "emails": [
    {
    "primary": true,
    "type": "work",
    "value": "demo.user@test.com"
    }
    ],
    "externalId" : "externalIdValue",
    "meta": {
    "resourceType": "User"
    },
    "userName": "DemoTest",
    "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User": {
    "employeeNumber": "externalIdValue"
    },
    "name": {
    "familyName": "Test",
    "formatted": "formatted",
    "givenName": "Demo"
    }
    }

    Beispielantwort

    {
    "id": "MPD698",
    "name": {
    "givenName": "Demo",
    "familyName": "Test",
    "formatted": "Demo Test"
    },
    "emails": [
    {
    "value": "demo.user@test.com",
    "type": "work",
    "primary": true
    }
    ],
    "title": "",
    "active": true,
    "groups": [],
    "schemas": [
    "urn:ietf:params:scim:schemas:core:2.0:User",
    "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User"
    ],
    "meta": {
    "resourceType": "User",
    "location": "https://demo.udemy.com/scim/v2/Users/MPD698",
    "created": "2024-12-27T22:00:25Z",
    "lastModified": "2024-12-27T22:00:26Z"
    },
    "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User": {
    "employeeNumber": "externalIdValue"
    },
    "userName": "DemoTest",
    "externalId": "externalIdValue"
    }

     

    Antwort:

    • HTTP-Statuscode 201 und die Nutzerressource, wenn erfolgreich
    • HTTP-Statuscode 409, wenn das Mitglied mit dem gleichen userName im Unternehmen schon vorhanden ist
    • HTTP-Statuscode 400 mit Angaben zum Fehler im Antworttext, wenn die Anforderung die Gültigkeitsprüfung nicht bestanden hat

     

    GET /Users/<ID>

     

    Mithilfe dieses Endpunkts können Nutzerdaten zu einem:einer angegebenen Nutzer:in abgerufen werden.

     

    Der id-Parameter

     

    in der vorangehenden Anforderung ist eine eindeutige Kennung, die bei der Erstellung des:der Nutzers:Nutzerin mithilfe von SCIM oder bei einer Auflistung aller vorhandenen Nutzer:innen ausgegeben wurde.

    Antwort:

    • HTTP-Statuscode 200 mit der Nutzerressource, wenn erfolgreich
    • HTTP-Statuscode 404, wenn der/die Nutzer:in nicht gefunden wurde

     

    PUT /Users/<ID>

     

    Dieser Endpunkt wird zum Ersetzen (Überschreiben) von Nutzerdaten in Udemy Business verwendet. Wenn das Attribut „active“ angegeben ist, kann es zum Deaktivieren oder Reaktivieren des Nutzers bzw. der Nutzerin verwendet werden.

    Beispielanfrage

    PUT https://demo.udemy.com/scim/v2/Users/MPD698
    {
    "schemas": [
    "urn:ietf:params:scim:schemas:core:2.0:User",
    "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User"
    ],
    "id": "MPD698",
    "userName": "demo.user@test.com",
    "externalId": "NewExternalID",
    "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User": {
    "employeeNumber": "NewExternalID"
    },
    "name": {
    "givenName": "demo",
    "familyName": "user"
    },
    "emails": [
    {
    "value": "demo.user@test.com",
    "type": "work",
    "primary": true
    }
    ],
    "active": true
    }

    Beispielantwort

    {
    "id": "MPD698",
    "name": {
    "givenName": "demo",
    "familyName": "user",
    "formatted": "demo user"
    },
    "emails": [
    {
    "value": "demo.user@test.com",
    "type": "work",
    "primary": true
    }
    ],
    "title": "",
    "active": true,
    "groups": [],
    "schemas": [
    "urn:ietf:params:scim:schemas:core:2.0:User",
    "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User"
    ],
    "meta": {
    "resourceType": "User",
    "location": "https://demo.udemy.com/scim/v2/Users/MPD698",
    "created": "2024-12-27T22:00:25Z",
    "lastModified": "2024-12-27T22:17:52Z"
    },
    "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User": {
    "employeeNumber": "NewExternalID"
    },
    "userName": "demo.user@test.com",
    "externalId": "NewExternalID"
    }

     

    Antwort:

    • HTTP-Statuscode 200 und die aktualisierte Nutzerressource
    • HTTP-Statuscode 404, wenn der/die Nutzer:in nicht vorhanden ist
    • HTTP-Statuscode 400, wenn versucht wurde, eine:n Unternehmensbesitzer:in zu deaktivieren

     

    PATCH /Users/<ID>

     

    Mithilfe dieses Endpunkts kannst du Teile der Nutzerdaten in unserem System aktualisieren, d. h. nur bestimmte Attribute des Nutzers bzw. der Nutzerin ändern. Dieser Befehl unterscheidet sich von PUT, womit der/die gesamte Nutzer:in ersetzt wird.

    Er kann das Attribut „aktiv“ enthalten, mit dem der:die Nutzer:in deaktiviert oder reaktiviert werden kann.

    • Der Text jeder Anforderung MUSS das Attribut „schemas“ mit dem URI-Wert „urn:ietf:params:scim:api:messages:2.0:PatchOp“ enthalten.
    • Der Text einer HTTP PATCH-Anforderung MUSS das Attribut „Operations“ enthalten, dessen Wert ein Array von mindestens einer PATCH-Operation ist.Jedes PATCH-Operationsobjekt MUSS genau ein „op“-Mitglied haben, dessen Wert die auszuführende Operation angibt und eins von „add“, „remove“ oder „replace“ sein KANN.
    • Das Attribut „path“ kann leer sein. In diesem Fall muss „value“ ein Verzeichnis im Format {"path": "value"} sein.

    Beispielanfrage

     

    PATCH https://demo.udemy.com/scim/v2/Users/MPD698 
    {
    "schemas": [
    "urn:ietf:params:scim:api:messages:2.0:PatchOp"
    ],
    "Operations": [
    {
    "op": "replace",
    "path": "userName",
    "value": "DemoUserName"
    }
    ]
    }

    Beispielantwort

     

    {
    "id": "MPD698",
    "name": {
    "givenName": "demo",
    "familyName": "user",
    "formatted": "demo user"
    },
    "emails": [
    {
    "value": "demo.user@test.com",
    "type": "work",
    "primary": true
    }
    ],
    "title": "",
    "active": true,
    "groups": [
    {
    "value": "5ypNz",
    "display": "NewGroup",
    "$ref": "https://demo.udemy.com/scim/v2/Groups/5ypNz"
    }
    ],
    "schemas": [
    "urn:ietf:params:scim:schemas:core:2.0:User",
    "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User"
    ],
    "meta": {
    "resourceType": "User",
    "location": "https://demo.udemy.com/scim/v2/Users/MPD698",
    "created": "2024-12-27T22:00:25Z",
    "lastModified": "2024-12-27T22:17:52Z"
    },
    "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User": {
    "employeeNumber": "NewExternalID"
    },
    "userName": "DemoUserName",
    "externalId": "NewExternalID"
    }

    Antwort:

    • HTTP-Statuscode 200 mit der aktualisierten Nutzerressource, wenn erfolgreich
    • HTTP-Statuscode 404, wenn der/die Nutzer:in nicht gefunden wurde
    • HTTP-Statuscode 400, wenn versucht wurde, eine:n Unternehmensbesitzer:in zu deaktivieren oder wenn die Operation ungültig ist

    Gruppenendpunkte

    Unterstützte Attribute

    SCIM-Attribut

    Erforderlich?

    Beschreibung 

    displayName

    Ja

    Bezeichnung der Gruppe. Muss innerhalb aller Udemy Business-Gruppen eindeutig sein.

    externalId

    Nein

    Die externalId der Gruppe vom Identitätsanbieter

    Hinweis: Wenn du andere Attribute angibst, die nicht auf dieser Liste stehen, werden sie ignoriert.

     

    GET /Groups

     

    Dieser Endpunkt wird verwendet, um eine in Seiten aufgeteilte (paginierte) Liste aller bereitgestellten Gruppen abzurufen. Du kannst die Abfrage-String-Parameter count und itemsPerPage einschließen, um die Ergebnisse in Seiten aufgeteilt auszugeben.

    Beachte bitte, dass nur Gruppen zurückgegeben werden, die mithilfe von SCIM erstellt wurden. Gruppen, die in Udemy Business erstellt wurden, werden nicht zurückgegeben.

    Beispielanfrage

     

    GET https://demo.udemy.com/scim/v2/scim/v2/Groups
     "schemas": [
    "urn:ietf:params:scim:api:messages:2.0:ListResponse"
    ],
    "totalResults": 6,
    "startIndex": 1,
    "Resources": [
    {
    "id": "NZOaw",
    "displayName": "Group Test",
    "members": [
    {
    "value": "KwLzN3",
    "display": "firstName lastName",
    "type": "User",
    "$ref": "https://demo.udemy.com/scim/v2/Users/KwLzN3"
    },
    {
    "value": "eBmzpr",
    "display": "user four",
    "type": "User",
    "$ref": "https://demo.udemy.com/scim/v2/Users/eBmzpr"
    }
    ],
    "externalId": null,
    "schemas": [
    "urn:ietf:params:scim:schemas:core:2.0:Group"
    ],
    "meta": {
    "resourceType": "Group",
    "location": "https://demo.udemy.com/scim/v2/Groups/NZOaw",
    "created": "2024-08-23T22:26:48Z",
    "lastModified": "2024-08-23T22:26:48Z"
    }
    },
    [...]
    ],
    "itemsPerPage": 12
    }
    GET /Groups?filter=

    Dieser Endpunkt wird verwendet, um Gruppen anhand von bestimmten Attributen zu filtern. Du kannst z. B. anhand des Attributs „displayName“ suchen:

     

    GET /Groups?filter=displayName eq "Marketing"

     

    Dies gibt eine Liste der Gruppenressourcen zurück. Wenn keine Treffer vorhanden sind, wird eine leere Liste ausgegeben.

    Beachte bitte, dass du die URL-Parameter kodieren musst (Prozentkodierung), die Anforderung muss also wie folgt aussehen:

     

    GET /Groups?filter=displayName%20eq%20%22Marketing%22

     

    Folgende Filter werden unterstützt:

     

    displayName
    externalId
    Id
    member.value

     

    Folgende Operatoren werden unterstützt:

     

    und
    eq

     

    Antwort:

    • HTTP-Statuscode 200 mit der Liste der Einheiten, wenn erfolgreich
    • HTTP-Statuscode 501, wenn ein nicht unterstützter Filter verwendet wird

     

    POST /Groups

     

    Dieser Endpunkt wird zum Erstellen (Bereitstellen) neuer Gruppen in Udemy Business verwendet.

    Antwort:

    • HTTP-Statuscode 409: Wenn bereits eine bereitgestellte Gruppe mit diesem Namen im Unternehmen vorhanden ist, wird 409 (Konflikt) mit dem scimType-Fehlercode uniqueness („Eindeutigkeit“) zurückgegeben.
    • Wenn die Gruppe erfolgreich erstellt wurde, wird die vollständige Darstellung der Gruppe mit dem HTTP-Statuscode 201 (Erstellt) zusammen mit dem Location-Header, der die URL der erstellten Gruppenressource enthält, zurückgegeben.

     

    GET /Groups/<ID>

     

    Dieser Endpunkt wird zum Abrufen der Gruppendetails von Udemy Business verwendet.

    Antwort:

    • HTTP-Statuscode 200 und eine Gruppenressource
    • HTTP-Statuscode 404, wenn die Gruppe nicht gefunden wurde

     

    POST /Groups

     

    Dieser Endpunkt wird zum Erstellen (Bereitstellen) neuer Gruppen in Udemy Business verwendet.

    Warnung: Wenn du die Endpunkte POST oder PUT /scim/v2/Groups zum Erstellen von Gruppen nutzt, schließe das Member -Attribut aus deiner Anfrage aus. Alle bestimmten Mitglieder werden ignoriert. Um Nutzer:innen einer Gruppe hinzuzufügen, musst du zuerst die Gruppe erstellen und dann die PATCH /scim/v2/Groups/ separat anrufen

    Beispielanfrage

     

    https://demo.udemy.com/scim/v2/Groups 
    {
    "schemas": [
    "urn:ietf:params:scim:schemas:core:2.0:Group"
    ],
    "displayName": "Group1",
    "externalId": "234523"
    }

    Beispielantwort

     

    {
    "id": "vREOw",
    "displayName": "Group1",
    "members": [],
    "externalId": "234523",
    "schemas": [
    "urn:ietf:params:scim:schemas:core:2.0:Group"
    ],
    "meta": {
    "resourceType": "Group",
    "location": "https://demo.udemy.com/scim/v2/Groups/vREOw",
    "created": "2025-01-15T22:24:54Z",
    "lastModified": "2025-01-15T22:24:54Z"
    }
    }
    PUT /Groups/<id>

    Dieser Endpunkt wird zum Ersetzen der Gruppendetails in Udemy Business verwendet.

    Warnung: Wenn du die Endpunkte POST oder PUT /scim/v2/Groups zum Erstellen von Gruppen nutzt, schließe das Member -Attribut aus deiner Anfrage aus. Alle bestimmten Mitglieder werden ignoriert. Um Nutzer:innen einer Gruppe hinzuzufügen, musst du zuerst die Gruppe erstellen und dann die PATCH /scim/v2/Groups/ separat anrufen

    Beispielanfrage

     

    PUT https://demo.udemy.com/scim/v2/Groups/vREOw 
    {
    "schemas": [
    "urn:ietf:params:scim:schemas:core:2.0:Group"
    ],
    "displayName": "Group1",
    "externalId": "MPD699"
    }

     

    Beispielantwort

     

    {
    "id": "vREOw",
    "displayName": "Group1",
    "members": [],
    "externalId": "MPD699",
    "schemas": [
    "urn:ietf:params:scim:schemas:core:2.0:Group"
    ],
    "meta": {
    "resourceType": "Group",
    "location": "https://demo.udemy.com/scim/v2/Groups/vREOw",
    "created": "2025-01-08T21:12:53Z",
    "lastModified": "2025-01-15T22:35:55Z"
    }
    }

    Antwort:

    • HTTP-Statuscode 200 und die aktualisierte Gruppenressource
    • HTTP-Statuscode 404, wenn die Gruppe nicht vorhanden ist

     

    PATCH /Groups/<ID>

     

    Mithilfe dieses Endpunkts kannst du Teile der Gruppendetails in Udemy Business aktualisieren.

    Der PATCH-Endpunkt ist komplexer als die anderen, da er unterschiedliche Arten von Operationen unterstützt (und zudem Kombinationen der Operationen möglich sind):

    Beispielanfrage

     

    PATCH https://demo.udemy.com/scim/v2/Groups/5ypNz 
    { "schemas": 
    ["urn:ietf:params:scim:api:messages:2.0:PatchOp"],
    "Operations":[
    {
    "op":"add",
    "path": "members",
    "value":[{
    "display": "demo user",
    "$ref":"https://demo.udemy.com/scim/v2/Users/MPD698",
    "value": "MPD698"
    }
    ]
    }
    ]
    }

    Beispielantwort

     

    204 kein Inhalt
    • replace-Operation ändert den angegebenen Wert. In unserem Fall handelt es sich dabei um den Namen oder die Mitglieder der Gruppe.
    • remove-Operation entfernt ein Mitglied aus der Gruppe.
    • add-Operation fügt Mitglieder zur Gruppe hinzu.

    Folgende Regeln gelten:

    • Nicht bereitgestellte Mitglieder werden niemals aus der Gruppe entfernt (z. B. bei der „replace“-Operation für Mitglieder).
    • Eine PATCH-Anforderung wird unabhängig von der Anzahl der Operationen als atomar behandelt.

    Die Eingaben werden wie folgt validiert:

    • Der Text jeder Anforderung MUSS das Attribut „schemas“ mit dem URI-Wert „urn:ietf:params:scim:api:messages:2.0:PatchOp“ enthalten.
    • Der Text einer HTTP PATCH-Anforderung MUSS das Attribut „Operations“ enthalten, dessen Wert ein Array von mindestens einer PATCH-Operation ist.Jedes PATCH-Operationsobjekt MUSS genau ein „op“-Mitglied haben, dessen Wert die auszuführende Operation angibt und eins von „add“, „remove“ oder „replace“ sein KANN.
    • Das Attribut „path“ kann leer sein. In diesem Fall muss „value“ ein Verzeichnis im Format {"path": "value"} sein.
    • Für die „Remove“-Operation ist der „members“-Pfad erforderlich.
    • Für die „Add“-Operation muss entweder der „members“- oder der „externalId“-Pfad angegeben werden.
    • Für die „Replace“-Operation kann der „members“-Pfad angegeben werden. Wenn er nicht angegeben ist, werden die Gruppendetails (z. B. der Name der Gruppe), nicht aber die Mitglieder ersetzt.

    Hinweis:

    • Die Zuweisung von Nutzer:innen zu einer Gruppe sowie die Zuweisungsaufhebung erfolgen asynchron, diese Änderungen sind also in Udemy Business nicht sofort sichtbar.
    • Geschachtelte Gruppen werden nicht unterstützt und daher bei dieser Anforderung ignoriert.

    Antwort:

    • HTTP-Statuscode 204, wenn die Operation erfolgreich war
    • HTTP-Statuscode 404, wenn die Gruppe nicht vorhanden ist
    • HTTP-Statuscode 404 mit Angaben zum Fehler, wenn versucht wurde, eine Gruppe zu einem/einer Nutzer:in zuzuweisen, der/die kein Mitglied dieses Unternehmens ist
    • HTTP-Statuscode 400 mit Angaben zum Fehler im Antworttext, wenn die Anforderung die Gültigkeitsprüfung nicht bestanden hat

     

    DELETE /Groups/<ID>

     

    Dieser Endpunkt wird verwendet, um eine Gruppe aus Udemy Business zu entfernen bzw. ihre Bereitstellung aufzuheben.

    Folgende Regeln gelten:

    • Wenn die Gruppe nicht bereitgestellte Mitglieder enthält, werden bereitgestellte Nutzer:innen aus der Gruppe entfernt und der „OrganizationSCIMGroup“-Eintrag wird gelöscht.

    Antwort:

    • HTTP-Statuscode 204, wenn die Operation erfolgreich war
    • HTTP-Statuscode 404, wenn die Gruppe nicht vorhanden ist

    Weiterführende Informationen

    • Überblick über SCIM: http://www.simplecloud.info
    • RFC 7642, SCIM - Definitions, Overview, Concepts, and Requirements: https://tools.ietf.org/pdf/rfc7642.pdf (SCIM - Definitionen, Überblick, Konzepte und Anforderungen, in englischer Sprache)
    • RFC 7643, SCIM - Core Schema: https://tools.ietf.org/pdf/rfc7643.pdf (SCIM - Core-Schema, in englischer Sprache)
    • RFC 7644, SCIM - Protocol: https://tools.ietf.org/pdf/rfc7644.pdf (SCIM - Protokoll, in englischer Sprache)
    Artikel lesen
  • Nutzern mithilfe von genehmigten E-Mail-Domains eigenständigen Zugang zu Udemy Business gewähren

    Du kannst deinen Nutzern auf zwei Arten Zugriff auf dein Udemy Business-Konto gewähren: über SSO (Single Sign-On) und mithilfe von E-Mail-Einladungen, die von Administratoren bzw. Gruppenadministratoren versendet werden.

    Wenn in deinem Unternehmen E-Mail-Einladungen verwendet werden, ist der eigenständige Zugang eine weitere Option, die es deinen Nutzern ermöglicht, sich über deine Konto-Landing-Page (z. B. unternehmen.udemy.com) eigenständig eine Einladungs-E-Mail zusenden zu lassen, wenn sie eine vom Administrator festgelegte genehmigte/verifizierte E-Mail-Domain verwenden.

    So genehmigst du eine E-Mail-Domain

    Administratoren können unter Einstellungen auf der Seite E-Mail-Domain-Zugriff eine oder auch mehrere E-Mail-Domains angeben, von denen der Beitritt zu deinem Udemy Business-Konto automatisch erlaubt wird.

    settings_email_domain_access.png

    Diese Funktion ist im Team- und im Enterprise-Tarif verfügbar, die Einrichtung von genehmigten E-Mail-Domains auf der Seite E-Mail-Domain-Zugriff ist aber nur für Besitzer und Administratoren (nicht für Gruppenadministratoren) zugänglich.

    Die Landing-Page-URL deines Kontos für die Nutzerregistrierung bereitstellen

    Du kannst Nutzern und Gruppen im Unternehmen, die Zugriff erhalten sollen, die Landing-Page-URL deines Udemy Business-Kontos bereitstellen (z. B. via Slack, E-Mail, Wiki oder Intranet) oder diesen Link einfach in deiner Lernplattform verfügbar machen.

    Wenn ein Nutzer (bzw. natürlich eine Nutzerin) deine Konto-Landing-Page-URL aufruft, kann er dort seine E-Mail-Adresse eingeben, um sich zu registrieren, sofern die eingegebene E-Mail-Adresse einer vom Administrator festgelegten genehmigten E-Mail-Domain entspricht.

    Hinweis: Wenn du dich für ein neues Konto registrierst, ist aus Sicherheitsgründen die Überprüfung deiner E-Mail-Adresse erforderlich. Falls Probleme auftreten, gehe bitte unsere Fehlerbehebungsschritte durch.

    UB_login.jpg

    Nach der Eingabe einer zulässigen E-Mail-Adresse wird der Nutzer dann auf dem Bildschirm aufgefordert, die zugesendete E-Mail zu öffnen, um sein Konto zu verifizieren.

    check_your_email.png

    Lizenznutzung und Verifizierung

    Nutzer müssen die Registrierung für ihr Konto abschließen, um ihre Lizenz zu aktivieren. 

    Falls keine Lizenzen verfügbar sind, wird der Nutzer in einer Meldung (siehe folgende Abbildung) gebeten, sich an seinen Vorgesetzten oder die IT-Abteilung zu wenden.

    all_licenses_have_been_allocated.png

    Der Nutzer muss seine Kontodaten nun anhand der empfangenen Verifizierungs-E-Mail bestätigen, die einen Link enthält. Der Verifizierungs-Link ist nur eine Stunde lang gültig.* Nachdem der Nutzer sein Konto verifiziert hat, kann er sich registrieren, indem er seinen Namen, seine E-Mail-Adresse und sein Passwort angibt.

    * Hinweis: Über SSO (Single Sign-On)/SCIM (System for Cross-Domain Management) verwaltete Nutzer werden nicht zur Verifizierung aufgefordert. 

    send_verification_email.png

    activate_account_email.png

    Wenn die eingegebene E-Mail-Adresse nicht der genehmigten E-Mail-Domain entspricht, wird die folgende Meldung angezeigt und der Nutzer kann sich nicht registrieren.

     not_invited.png

    Falls keine Lizenzen verfügbar sind, wird der Nutzer mit der folgenden Meldung gebeten, sich an seinen Vorgesetzten oder die IT-Abteilung zu wenden.

    no_licenses.png

    Nutzer, die sich über genehmigte E-Mail-Domains registrieren, werden auf der Seite Nutzer verwalten unter Offene Einladungen aufgeführt, sind aber mit dem Zusatz „Über genehmigte E-Mail eingeladen“ gekennzeichnet.

    pending_invitations.png

    Diese Funktion ist im Team- und im Enterprise-Tarif verfügbar, die Einrichtung von genehmigten E-Mail-Domains auf der Seite Nutzerzugriff ist aber nur für Besitzer und Administratoren (nicht für Gruppenadministratoren) zugänglich.

     

    Artikel lesen