Intégrer OpenID Connect dans OTOBO (agents et clients)
Intégrer OpenID Connect dans OTOBO (agents et clients)
Section intitulée « Intégrer OpenID Connect dans OTOBO (agents et clients) »Avec OpenID Connect (OIDC), les agents ainsi que les utilisateurs clients peuvent être authentifiés de manière pratique et sécurisée dans le système de tickets OTOBO. La gestion des utilisateurs s’effectue de manière centralisée via un Identity Provider (IdP) externe tel qu’Azure AD ou Keycloak.
Prérequis
Section intitulée « Prérequis »- OTOBO 11 ou supérieur
- Identity Provider compatible OpenID Connect (Azure AD, Keycloak, Auth0, etc.)
- Accès au fichier
Kernel/Config.pm
Configurer la connexion des agents avec OpenID Connect
Section intitulée « Configurer la connexion des agents avec OpenID Connect »L’intégration pour les agents s’effectue dans le fichier Kernel/Config.pm.
Exemple de configuration
Section intitulée « Exemple de configuration »$Self->{AuthModule} = 'Kernel::System::Auth::OpenIDConnect';
$Self->{'AuthModule::OpenIDConnect::Config'}{ClientSettings} = { ClientID => 'VOTRE-CLIENT-ID-AGENT', ClientSecret => 'VOTRE-CLIENT-SECRET-AGENT', RedirectURI => 'https://votre-domaine.fr/otobo/index.pl?Action=Login',};
$Self->{'AuthModule::OpenIDConnect::Config'}{ProviderSettings} = { OpenIDConfiguration => 'https://votre-provider.fr/.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',};
# Mapping optionnel des groupes/rôles$Self->{'AuthModule::OpenIDConnect::RoleMap'} = { groups => { admins => 'admin', support => 'support', },};
# Debugging (temporaire)$Self->{'AuthModule::OpenIDConnect::Debug'}->{'LogIDToken'} = 1;Configurer la connexion des utilisateurs clients avec OpenID Connect
Section intitulée « Configurer la connexion des utilisateurs clients avec OpenID Connect »Les utilisateurs clients peuvent également être authentifiés via OpenID Connect.
Exemple de configuration pour les utilisateurs clients
Section intitulée « Exemple de configuration pour les utilisateurs clients »$Self->{'Customer::AuthModule'} = 'Kernel::System::CustomerAuth::OpenIDConnect';
$Self->{'Customer::AuthModule::OpenIDConnect::Config'}{ClientSettings} = { ClientID => 'VOTRE-CLIENT-ID-CLIENT', ClientSecret => 'VOTRE-CLIENT-SECRET-CLIENT', RedirectURI => 'https://votre-domaine.fr/otobo/customer.pl?Action=Login',};
$Self->{'Customer::AuthModule::OpenIDConnect::Config'}{ProviderSettings} = { OpenIDConfiguration => 'https://votre-provider.fr/.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',};
# Création automatique des utilisateurs clients$Self->{'Customer::AuthModule::OpenIDConnect::AutoCreateUser'} = 1;
# Debugging optionnel$Self->{'Customer::AuthModule::OpenIDConnect::Debug'}->{'LogIDToken'} = 1;Configurer Azure AD de manière optimale (exemple)
Section intitulée « Configurer Azure AD de manière optimale (exemple) »-
Enregistrer une nouvelle application dans Azure Active Directory
-
Ajouter les autorisations pour « openid », « profile » et « email »
-
Définir les Redirect-URLs :
- Agents :
https://votre-domaine.fr/otobo/index.pl?Action=Login - Clients :
https://votre-domaine.fr/otobo/customer.pl?Action=Login
- Agents :
-
Configurer les claims (
given_name,family_name) sous « Token Configuration »
Tester la connexion
Section intitulée « Tester la connexion »Après la configuration et le redémarrage du serveur web, les agents et les utilisateurs clients peuvent être authentifiés facilement via votre IdP externe. Les nouveaux utilisateurs sont automatiquement créés dans OTOBO, si cela est configuré.
Avantages de l’intégration OIDC dans OTOBO
Section intitulée « Avantages de l’intégration OIDC dans OTOBO »- Authentification centralisée et sécurisée
- Gestion unifiée des identités
- Création automatique des utilisateurs
- Réduction de la charge administrative