Integrar OpenID Connect en OTOBO (Agentes y Clientes)
Integrar OpenID Connect en OTOBO (Agentes y Clientes)
Sección titulada «Integrar OpenID Connect en OTOBO (Agentes y Clientes)»Con OpenID Connect (OIDC), tanto los agentes como los usuarios clientes pueden ser autenticados de forma cómoda y segura en el sistema de tickets OTOBO. La gestión de usuarios se realiza de forma centralizada a través de un Identity Provider (IdP) externo como Azure AD o Keycloak.
Requisitos previos
Sección titulada «Requisitos previos»- OTOBO 11 o superior
- Identity Provider compatible con OpenID Connect (Azure AD, Keycloak, Auth0, etc.)
- Acceso al archivo
Kernel/Config.pm
Configurar el inicio de sesión de agentes con OpenID Connect
Sección titulada «Configurar el inicio de sesión de agentes con OpenID Connect»La integración para agentes se realiza en el archivo Kernel/Config.pm.
Ejemplo de configuración
Sección titulada «Ejemplo de configuración»$Self->{AuthModule} = 'Kernel::System::Auth::OpenIDConnect';
$Self->{'AuthModule::OpenIDConnect::Config'}{ClientSettings} = { ClientID => 'TU-CLIENT-ID-DE-AGENTE', ClientSecret => 'TU-CLIENT-SECRET-DE-AGENTE', RedirectURI => 'https://tu-dominio.de/otobo/index.pl?Action=Login',};
$Self->{'AuthModule::OpenIDConnect::Config'}{ProviderSettings} = { OpenIDConfiguration => 'https://tu-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',};
# Mapeo opcional de grupos/roles$Self->{'AuthModule::OpenIDConnect::RoleMap'} = { groups => { admins => 'admin', support => 'support', },};
# Debugging (temporal)$Self->{'AuthModule::OpenIDConnect::Debug'}->{'LogIDToken'} = 1;Configurar el inicio de sesión de usuarios clientes con OpenID Connect
Sección titulada «Configurar el inicio de sesión de usuarios clientes con OpenID Connect»Los usuarios clientes también pueden ser autenticados mediante OpenID Connect.
Ejemplo de configuración para usuarios clientes
Sección titulada «Ejemplo de configuración para usuarios clientes»$Self->{'Customer::AuthModule'} = 'Kernel::System::CustomerAuth::OpenIDConnect';
$Self->{'Customer::AuthModule::OpenIDConnect::Config'}{ClientSettings} = { ClientID => 'TU-CLIENT-ID-DE-CLIENTE', ClientSecret => 'TU-CLIENT-SECRET-DE-CLIENTE', RedirectURI => 'https://tu-dominio.de/otobo/customer.pl?Action=Login',};
$Self->{'Customer::AuthModule::OpenIDConnect::Config'}{ProviderSettings} = { OpenIDConfiguration => 'https://tu-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',};
# Creación automática de usuarios clientes$Self->{'Customer::AuthModule::OpenIDConnect::AutoCreateUser'} = 1;
# Debugging opcional$Self->{'Customer::AuthModule::OpenIDConnect::Debug'}->{'LogIDToken'} = 1;Configurar Azure AD de forma óptima (ejemplo)
Sección titulada «Configurar Azure AD de forma óptima (ejemplo)»-
Registrar una nueva App en Azure Active Directory
-
Añadir permisos para “openid”, “profile” y “email”
-
Establecer las Redirect-URLs:
- Agentes:
https://tu-dominio.de/otobo/index.pl?Action=Login - Clientes:
https://tu-dominio.de/otobo/customer.pl?Action=Login
- Agentes:
-
Configurar los Claims (
given_name,family_name) en “Token Configuration”
Probar el inicio de sesión
Sección titulada «Probar el inicio de sesión»Tras la configuración y el reinicio del servidor web, los agentes y usuarios clientes podrán autenticarse cómodamente a través de su IdP externo. Los nuevos usuarios se crearán automáticamente en OTOBO, siempre que esto esté configurado.
Ventajas de la integración OIDC en OTOBO
Sección titulada «Ventajas de la integración OIDC en OTOBO»- Autenticación centralizada y segura
- Gestión de identidades unificada
- Creación automática de usuarios
- Menor carga administrativa