In dieser Dokumentation wird beschrieben, wie OpenID-Connect-Anbieter im System abgebildet sind und wie die gleichnamige Anwendung aufgebaut ist.
Zudem erhalten Sie in dieser Dokumentation Informationen darüber, wie ERP-System-Benutzer bei erster Anmeldung mit einem OpenId-Connect-Anbieter automatisch erzeugt werden können und auf was Sie bei der Einrichtung des OpenID-Connect Anbieters Keyclaok achten müssen.
OpenID-Connect-Anbieter können für Anmeldung und Authentifizierung von Benutzern an das ERP-System genutzt werden.
Informationen darüber, welche Einstellungen für die Einrichtung des OpenID-Connect-Anbieters Keyclaok notwendig sind, erhalten Sie im Kapitel Einrichtung von Keycloak als OpenId-Connect-Anbieter.
Bei der Anmeldung eines ERP-System-Benutzers über einen OpenID-Connect-Anbieter an das ERP-System wird für den Benutzer eine OpenID-Connect Identifikation im Systemcockpit auf Benutzerebene angelegt. Weitere Informationen hierzu erhalten Sie in der Dokumentation Systemcockpit: Typ „Benutzer“.
Im ERP-System kann eine automatische Erzeugung des ERP-System-Benutzers bei erster Anmeldung mit einem OpenID-Connect-Anbieter eingestellt werden. Weitere Informationen dazu erhalten Sie im Kapitel Automatische Erzeugung von ERP-System-Benutzern bei erster Anmeldung mit einem OpenId-Connect-Anbieter.
Begriffsbestimmung
- OpenID-Connect – OpenID-Connect ist das Protokoll für die Anbindung von OpenID-Connect Anbietern wie zum Beispiel Keycloak für die Single-Sign-On Benutzerverwaltung von Anmeldungen an das ERP-System und an andere Fremdsysteme.
- OpenID-Connect-Anbieter – OpenID-Connect-Anbieter können für Anmeldung und Authentifizierung von Benutzern an das ERP-System genutzt werden.
- Keyclaok – Keycloak ist ein Open Source Programm zur Single Sign-On Benutzerverwaltung.
Anwendungsbeschreibung
Mit der Anwendung OpenID-Connect-Anbieter erfassen oder bearbeiten Sie OpenID-Connect-Anbieter für das ERP-System, die Sie als Methode für die Anmeldung und Authentifizierung an das ERP-System nutzen können.
Die Anwendung besteht aus einem Identifikationsbereich und der Tabelle Gruppenmitgliedschaften im Arbeitsbereich.
Identifikationsbereich
Der Identifikationsbereich enthält die Felder, die den OpenID-Connect-Anbieter eindeutig identifizieren, sowie die für den OpenID-Connect-Anbieter allgemeingültigen Basisdaten.
Die Felder im Einzelnen:
- Name – Im Feld Name wird die eindeutige Identifikation des OpenID-Connect-Anbieters angezeigt/erfasst/bearbeitet. Die Identifikation des OpenID-Connect-Anbieters dient der Eindeutigkeit innerhalb einer Datenbank. Erfassen Sie in diesem Feld eine Identifikation. Sie kann aus Zahlen, Buchstaben oder einer Zahlen-Buchstaben-Kombination bestehen und ist beim ersten Erfassen frei wählbar.
- Bezeichnung – Die Bezeichnung dient als zusätzliches Erkennungsmerkmal. Sie kann aus frei wählbarem Text bestehen. Erfassen Sie eine aussagekräftige und möglichst eindeutige Bezeichnung, damit die Suche danach erleichtert wird.
- Client ID – Geben Sie in diesem Feld die Client ID für die Anmeldung bei dem OpenID-Connect-Anbieter (z.B. bei Keycloak) ein.
- Kennwort – Geben Sie hier das Kennwort für die Anmeldung bei dem OpenID-Connect-Anbieter ein. Das Kennwort wird bei der Eingabe unkenntlich gemacht.
- Anbieter-URL – Geben Sie in diesem Feld die URL des OpenID-Connect-Anbieters ein.
- Aktiv (Checkbox) – Mit dieser Checkbox können Sie den OpenID-Connect-Anbieter für das ERP-System aktivieren oder deaktivieren.
Tabelle Gruppenmitgliedschaften
- Aktion – Wählen Sie zwischen den folgenden Einträgen:
- Alle Benutzer synchronisieren – Mit dieser Einstellung werden alle Benutzer des OpenID-Connect-Anbieters einer Ziel-Benutzergruppe des ERP-Systems zugeordnet. HinweisWenn Sie diese Option wählen, können Sie in der Spalte Quell-Benutzergruppe keine Benutzergruppe auf Seiten des OpenID-Connect-Anbieters angeben. Tun Sie dies dennoch, erhalten Sie bei dem Versuch zu speichern eine entsprechende Fehlermeldung.
- Benutzer synchronisieren – Mit dieser Einstellung ordnen Sie eine Quell-Benutzergruppe des OpenID-Connect-Anbieters einer Ziel-Benutzergruppe des ERP-Systems zu. Geben Sie in der Spalte Quell-Benutzergruppe eine im OpenID-Connect-Anbieter definierte Benutzergruppe ein und in der Spalte Ziel-Benutzergruppe eine Benutzergruppe des ERP-Systems. Eine ERP-System-Benutzergruppe erfassen Sie im Systemcockpit. Weitere Informationen dazu erhalten Sie in der Dokumentation Systemcockpit: Typ “Benutzergruppe”.
- Alle Benutzer synchronisieren – Mit dieser Einstellung werden alle Benutzer des OpenID-Connect-Anbieters einer Ziel-Benutzergruppe des ERP-Systems zugeordnet.
- Quell-Benutzergruppe – Geben Sie in diese Spalte die Quell-Benutzergruppe des OpenID-Connect-Anbieters ein. Die Quell-Benutzergruppe wird im Fremdsystem des Open-ID-Connect-Anbieters festgelegt, also zum Beispiel in Keycloak. HinweisHaben Sie in der Spalte Aktion den Eintrag Alle Benutzer synchronisieren ausgewählt, können Sie keine Quell-Benutzergruppe für diese Zeile erfassen. Bei dem versuch zu Speichern, wird in diesem Fall eine entsprechende Fehlermeldung angezeigt.
- Ziel-Benutzergruppe – Geben Sie in dieser Spalte eine ERP-System-Benutzergruppe für die Zuordnung zu dem Open-ID-Connect-Anbieter ein. Haben Sie in der Spalte Aktion den Eintrag Alle Benutzer synchronisieren ausgewählt, gilt die Zuordnung für alle Benutzer des angebundenen OpenID-Connect-Anbieters. Haben Sie in der Spalte Aktion den Eintrag Benutzer synchronisieren gewählt gilt die Zuordnung zu der in der Spalte Quell-Benutzergruppe angegebenen Benutzergruppe des Open-ID-Connect-Anbieters. Eine ERP-System-Benutzergruppe erfassen Sie im Systemcockpit. Weitere Informationen dazu erhalten Sie in der Dokumentation Systemcockpit: Typ “Benutzergruppe”.
Customizing
Für die Anwendung OpenID-Connect-Anbieter sind in der Anwendung Customizing keine Einstellungen festzulegen.
Business Entitys
Für die Anwendung OpenID-Connect-Anbieter ist das nachfolgende Business Entity relevant, das Sie beispielsweise verwenden, um
- Berechtigungen zu vergeben,
- Aktivitätsdefinitionen einzurichten oder
- Daten zu importieren oder zu exportieren.
OpenID-Connect-Anbieter
com.cisag.sys.configuration.login.obj.OpenIdConnectProvider
Berechtigungen
Berechtigungen können sowohl mithilfe der Berechtigungsrollen als auch durch die Zuordnung einer Organisation vergeben werden. Das Berechtigungskonzept können Sie in der Technischen Dokumentation Berechtigungen nachlesen.
Spezielle Fähigkeiten
Für die Anwendung OpenID-Connect-Anbieter bestehen keine speziellen Fähigkeiten.
Organisations-Zuordnungen
Für die Anwendung OpenID-Connect-Anbieter ist eine Organisations-Zuordnung nicht erforderlich.
Besonderheiten
Damit die Anwendung OpenID-Connect-Anbieter angezeigt wird, muss die CEE-Lizenz den Lizenzschlüssel com.cisag.sys.configuration.login.OpenIdConnect
enthalten. Anderenfalls ist die Anwendung OpenID-Connect-Anbieter im ERP-System nicht verfügbar.
Berechtigungen für Geschäftspartner
Die Anwendung OpenID-Connect-Anbieter ist für Geschäftspartner nicht freigegeben.
Automatische Erzeugung von ERP-System-Benutzern bei erster Anmeldung mit einem OpenId-Connect-Anbieter
Im ERP-System kann eine automatische Erzeugung des ERP-System-Benutzers bei erster Anmeldung mit einem OpenID-Connect-Anbieter eingestellt werden. Dazu muss im ERP-System die System Property
com.cisag.sys.kernel.webserver.session.CisSessionFilterOpenIdCreateUser=true
gesetzt sein.
Bei der ersten Anmeldung an CEE mittels OpenID Connect wird der Benutzer in CEE erzeugt. Der Benutzername ergibt sich aus dem über OpenID Connect übertragenen preferred user name (in Keycloak: Username). Wenn es bereits Benutzer mit dem Namen im ERP-System gibt, wird der Name des neu erzeugten Benutzers durchnummeriert. Vollständiger Name und Email-Adresse werden ebenfalls übernommen. Eine Synchronisierung der Gruppenmitgliedschaften finden dann ebenfalls bei der ersten Anmeldung statt.
Einrichtung von Keycloak als OpenId-Connect-Anbieter
Bei Keyclaok handelt es sich um eine externe Open-Source-Software, die Single Sign-On Benutzer- und Anmeldungsverwaltung ermöglicht.
Für die grundsätzliche Einrichtung und Nutzung von Keyclaok nutzen Sie bitte die von Keycloak zur Verfügung gestellten Dokumentationen, auf die Sie unter folgendem Link zugreifen können: https://www.keycloak.org/documentation (Quelle Stand: 31.01.2025).
Im Folgenden wird auf die Einstellungen eingegangen, die notwendig sind, um Keyclaok als OpenID-Connect-Anbieter für die Anmeldung and das ERP-System zu verwenden.
Um die Software Keycloak als OpenID-Connect-Anbieter zur Anmeldung an CEE zu verwenden, muss in Keycloak ein Client für CEE erfasst werden. Folgende Punkte sind hierbei zu beachten:
- Die Felder Valid Redirect URIs und Web origins in Keyclaok müssen die Adresse(n) der CEE-Application-Server enthalten, die für die Anmeldung mit Keycloak verwendet werden sollen. Beide Felder erlauben auch die Benutzung einiger Wildcard-Zeichen. Im Feld Valid Redirect URIs muss den Adressen noch /* angefügt werden.
- Die Einstellung Standard flow muss aktiviert sein.
- Aktivieren Sie Client authentication und legen Sie unter Credentials die Einstellung Client Id and Secret fest. Das Client Secret kann dann für CEE kopiert werden.
- Aktivieren Sie realm roles oder client roles für die Einrichtung von Gruppenmitgliedschaften.
Für Keycloak als OpenID-Connect-Anbieter erfassen Sie im ERP-System einen neuen OpenID-Connect-Anbieter. Folgendes ist dabei zu beachten:
- Im Feld Client ID geben Sie die Client ID aus Keycloak ein.
- Im Feld Kennwort geben Sie das in Keycloak festgelegte Client Secret ein.
- Im Feld Anbieter-URL geben Sie die Adresse des Keycloak-Servers ein, gefolgt von /realms/ und dem Namen des Realm in Keycloak, in dem der Client erfasst wurde.
- Wenn Sie in der gleichnamigen Tabelle eine Gruppenmitgliedschaft erfassen, findet die Synchronisierung dazu jeweils bei Anmeldung des Benutzers statt. HinweisIn Keycloak müssen dazu realm roles oder client roles zur Übertragung aktiviert sein.