OpenID Connect in OTOBO integrieren (Agenten und Kunden)
OpenID Connect in OTOBO integrieren (Agenten und Kunden)
Abschnitt betitelt „OpenID Connect in OTOBO integrieren (Agenten und Kunden)“Mit OpenID Connect (OIDC) können sowohl Agenten als auch Kundenbenutzer im OTOBO-Ticketsystem bequem und sicher authentifiziert werden. Die Benutzerverwaltung erfolgt zentral über einen externen Identity-Provider (IdP) wie Azure AD oder Keycloak.
Voraussetzungen
Abschnitt betitelt „Voraussetzungen“- OTOBO 11 oder höher
- OpenID-Connect-kompatibler Identity-Provider (Azure AD, Keycloak, Auth0 etc.)
- Zugang zur Datei
Kernel/Config.pm
Agenten-Login mit OpenID Connect konfigurieren
Abschnitt betitelt „Agenten-Login mit OpenID Connect konfigurieren“Die Integration für Agenten erfolgt in der Kernel/Config.pm.
Beispielkonfiguration
Abschnitt betitelt „Beispielkonfiguration“$Self->{AuthModule} = 'Kernel::System::Auth::OpenIDConnect';
$Self->{'AuthModule::OpenIDConnect::Config'}{ClientSettings} = { ClientID => 'DEINE-AGENT-CLIENT-ID', ClientSecret => 'DEIN-AGENT-CLIENT-SECRET', RedirectURI => 'https://deine-domain.de/otobo/index.pl?Action=Login',};
$Self->{'AuthModule::OpenIDConnect::Config'}{ProviderSettings} = { OpenIDConfiguration => 'https://dein-provider.de/.well-known/openid-configuration', TTL => 1800,};
$Self->{'AuthModule::OpenIDConnect::AuthRequest'}->{ResponseType} = ['code'];$Self->{'AuthModule::OpenIDConnect::AuthRequest'}->{AdditionalScope} = [qw/profile email/];
$Self->{'AuthModule::OpenIDConnect::UID'} = 'email';
$Self->{'AuthModule::OpenIDConnect::UserMap'} = { email => 'UserEmail', given_name => 'UserFirstname', family_name => 'UserLastname',};
# Optionales Mapping von Gruppen/Rollen$Self->{'AuthModule::OpenIDConnect::RoleMap'} = { groups => { admins => 'admin', support => 'support', },};
# Debugging (temporär)$Self->{'AuthModule::OpenIDConnect::Debug'}->{'LogIDToken'} = 1;Kundenbenutzer-Login mit OpenID Connect konfigurieren
Abschnitt betitelt „Kundenbenutzer-Login mit OpenID Connect konfigurieren“Auch Kundenbenutzer können via OpenID Connect authentifiziert werden.
Beispielkonfiguration für Kundenbenutzer
Abschnitt betitelt „Beispielkonfiguration für Kundenbenutzer“$Self->{'Customer::AuthModule'} = 'Kernel::System::CustomerAuth::OpenIDConnect';
$Self->{'Customer::AuthModule::OpenIDConnect::Config'}{ClientSettings} = { ClientID => 'DEINE-KUNDEN-CLIENT-ID', ClientSecret => 'DEIN-KUNDEN-CLIENT-SECRET', RedirectURI => 'https://deine-domain.de/otobo/customer.pl?Action=Login',};
$Self->{'Customer::AuthModule::OpenIDConnect::Config'}{ProviderSettings} = { OpenIDConfiguration => 'https://dein-provider.de/.well-known/openid-configuration', TTL => 1800,};
$Self->{'Customer::AuthModule::OpenIDConnect::AuthRequest'}->{ResponseType} = ['code'];$Self->{'Customer::AuthModule::OpenIDConnect::AuthRequest'}->{AdditionalScope} = [qw/profile email/];
$Self->{'Customer::AuthModule::OpenIDConnect::UID'} = 'email';
$Self->{'Customer::AuthModule::OpenIDConnect::UserMap'} = { email => 'UserEmail', given_name => 'UserFirstname', family_name => 'UserLastname',};
# Automatische Kundenbenutzeranlage$Self->{'Customer::AuthModule::OpenIDConnect::AutoCreateUser'} = 1;
# Optionales Debugging$Self->{'Customer::AuthModule::OpenIDConnect::Debug'}->{'LogIDToken'} = 1;Azure AD optimal konfigurieren (Beispiel)
Abschnitt betitelt „Azure AD optimal konfigurieren (Beispiel)“-
Neue App in Azure Active Directory registrieren
-
Berechtigungen für „openid“, „profile“ und „email“ hinzufügen
-
Redirect-URLs setzen:
- Agenten:
https://deine-domain.de/otobo/index.pl?Action=Login - Kunden:
https://deine-domain.de/otobo/customer.pl?Action=Login
- Agenten:
-
Claims (
given_name,family_name) unter „Token Configuration“ konfigurieren
Login testen
Abschnitt betitelt „Login testen“Nach der Konfiguration und dem Neustart des Webservers können Agenten und Kundenbenutzer bequem über Ihren externen IdP authentifiziert werden. Neue Benutzer werden automatisch in OTOBO angelegt, sofern dies konfiguriert ist.
Vorteile der OIDC-Integration in OTOBO
Abschnitt betitelt „Vorteile der OIDC-Integration in OTOBO“- Zentrale und sichere Authentifizierung
- Einheitliche Identitätsverwaltung
- Automatische Benutzeranlage
- Weniger Administrationsaufwand