Autenticación OAuth para inicio de sesión único

OAuth es un protocolo de autorización estándar que proporciona acceso a un recurso protegido mediante el uso de tokens web en lugar de contraseñas. Con OAuth, los propietarios de recursos pueden configurar permisos independientes para cada cliente que solicite acceso al mismo recurso y modificar/revocar el acceso en cualquier momento.

¿Cómo funciona OAuth?     

Terminologías

  • Propietario del recurso: El usuario que es propietario del recurso protegido.
  • Cliente: Una aplicación o servicio que solicita acceso al recurso protegido en nombre del usuario.
  • Servidor de autorización: El servidor que genera un token de acceso para el cliente.
  • Servidor de recursos: El servidor que aloja el recurso protegido. 

Para acceder a un recurso protegido, el cliente debe obtener una concesión de autorización del propietario del recurso y enviarla al servidor de autorización. El servidor de autorización valida la concesión de autorización y genera un token de acceso. El cliente puede usar este token para acceder al recurso protegido alojado por el servidor de recursos.      

OAuth para inicio de sesión único 

ServiceDesk Plus actúa como el cliente que solicita acceso y obtiene la concesión de autorización del usuario utilizando sus credenciales del servidor de autorización (por ejemplo, Microsoft Azure para Azure AD).

Esta concesión de autorización se procesa a través del servidor de autorización para generar un token de acceso. Con este token de acceso, ServiceDesk Plus puede acceder a Azure AD (Servidor de recursos) para recuperar los datos del usuario y autenticarlo para iniciar sesión en la aplicación.

 Hemos probado OAuth 2.0 con Microsoft Azure y Google Workspace como servidores de autorización. Para configurar OAuth en ServiceDesk Plus, debe registrar la aplicación en el servidor de autorización.

Configuración de OAuth para un servidor de autorización

Rol requerido: SDAdmin
  • Vaya a Admin > Usuarios y permisos > Inicio de sesión único > OAuth SSO.
  • Para configuraciones de ESM, vaya a Directorio ESM > Administración de usuarios > Inicio de sesión único > OAuth SSO. Rol requerido: OrgAdmin
  • Haga clic en + Nuevo.
  • En el panel lateral Nueva configuración de OAuth, ingrese los siguientes detalles: 

Sección

Campo

Descripción

Detalles del proveedor OAuth

 

 

 

Nombre del proveedor

Registre el servidor de autorización haciendo clic en Agregar nuevo en la lista desplegable.

Si ya está registrado en Admin > Usuarios y permisos > Proveedores OAuth, elija la autorización requerida en la lista desplegable.

 

ID de cliente

Si se elige Agregar nuevo, especifique el ID de cliente, la URL de autorización y la URL del token generados al registrar la aplicación en el servidor de autorización.

De lo contrario, estos campos se completarán automáticamente.

URL de autorización
URL del token

Detalles de la función OAuth

 

 

 

 

 

Alcance

Especifique los alcances necesarios para obtener los datos del usuario desde la URL del recurso. Los alcances más usados son openid, profile y email

  • openid - Requerido para iniciar una solicitud de autenticación OpenID.
  • profile - Para obtener la información básica del perfil del usuario, como nombre, género, etc.
  • email - Para obtener la dirección de correo electrónico del usuario.
Secreto del clienteEspecifique el secreto del cliente generado al registrar la aplicación en el servidor de autorización. 
Propiedad del usuarioEspecifique la clave requerida en la respuesta JSON recibida desde la URL del recurso. Esta clave se utilizará para identificar al usuario durante la autenticación. 
Propiedad asignadaElija el campo de usuario de ServiceDesk Plus al que debe asignarse la propiedad del usuario. Use User Principal Name para asignar campos de usuarios importados mediante AD.
URL del recursoEspecifique el endpoint de API que el cliente llama para obtener los datos del usuario después de obtener el token de acceso. Puede obtener esta información en la documentación de la API REST del servidor de autorización. 
URL de redirecciónEste campo se completa automáticamente con la URL a la que se redirigirá al usuario después de iniciar sesión. Esta URL no se puede editar.

Campos adicionales

 

Campos predeterminados

Configure la asignación de campos para crear el perfil del usuario para los usuarios dinámicos que inician sesión en la aplicación mediante OAuth SSO.

• Mediante las casillas de verificación, habilite los campos de usuario de ServiceDesk Plus requeridos en Campos predeterminados y Campos definidos por el usuario.

• Para cada campo habilitado, especifique la propiedad JSON de respuesta correspondiente. 

Nota:

• Esta configuración no se utilizará para actualizar perfiles de usuario existentes. 

• Los campos de fecha/hora y multilínea no son compatibles durante la adición dinámica de usuarios. Sin embargo, pueden sincronizarse mediante la sincronización AD/LDAP existente.

Campos definidos por el usuario
  • Después de configurar, haga clic en Guardar

  • En la vista de lista,
    • Habilite la configuración de OAuth para activarla.
    • Para implementar OAuth en ServiceDesk Plus, habilite el interruptor OAuth SSO

 

Para habilitar OAuth SSO, debe haber al menos una configuración activa.
Cuando esté habilitado, se activará la adición dinámica de usuarios. Para los usuarios existentes, asegúrese de que el nombre de inicio de sesión o la dirección de correo electrónico en el servidor de autorización coincidan con la información de su perfil en la aplicación. De lo contrario, por cada discrepancia, se creará un nuevo perfil de usuario.
Si tiene una sincronización AD/LDAP activa, asegúrese de que el nombre de inicio de sesión y el dominio del usuario dinámico coincidan con la información de su perfil durante la importación. De lo contrario, se creará un nuevo usuario durante la importación. 

Acciones de la vista de lista 

  • Habilite o deshabilite Contraer el formulario de inicio de sesión de forma predeterminada para mostrar u ocultar el formulario de inicio de sesión predeterminado según sea necesario.
  • Use Accionesjunto a una configuración de OAuth para editarla o eliminarla. 

Iniciar sesión en ServiceDesk Plus mediante OAuth  

La página de inicio de sesión después de habilitar el inicio de sesión único con OAuth se mostrará como se indica a continuación:

Los usuarios pueden iniciar sesión usando la autenticación local (habilitada de forma predeterminada) o iniciar sesión usando OAuth haciendo clic en el enlace del servidor de autorización requerido sobre el formulario de inicio de sesión predeterminado.

Solución de problemas

 

Código de error

Descripción

Solución

6

El código de autorización es nulo

Asegúrese de que ClientID, el alcance y la URL de autorización sean correctos.

46No se puede acceder a las URL configuradas en la página de OAuth.

Esto puede ocurrir por las siguientes razones:

  • No se puede acceder a la URL del token o a la URL del recurso
  • Un proxy o firewall está bloqueando el acceso a los hosts especificados en la URL del token o en la URL del recurso.
  • Falla en la resolución de DNS o tiempo de espera de conexión al acceder a estas URL.

Verifique si las URL configuradas son correctas y accesibles desde el servidor. Asegúrese de que la resolución de DNS funcione y de que el firewall/proxy permita el acceso a los hosts.

50Falta el atributo InResponseTo en la respuesta SAML  Más información

60

Usuario no encontrado (durante el inicio de sesión OAuth basado en correo electrónico)

  • Si el usuario no existe en ServiceDesk Plus y la adición dinámica de usuarios está deshabilitada, cree manualmente un nuevo usuario y configure la dirección de correo electrónico.

  • Si la adición dinámica de usuarios está habilitada, el nuevo usuario se agregará automáticamente. Si el usuario ya existe en la aplicación, configure su dirección de correo electrónico para que coincida con el ID de correo electrónico de inicio de sesión en ServiceDesk Plus.

61

El inicio de sesión está deshabilitado para el usuario.

Habilite el inicio de sesión para el usuario.

62

Hay más de un usuario configurado con el ID de correo electrónico de inicio de sesión.

Asegúrese de que la dirección de correo electrónico de inicio de sesión esté configurada con un solo usuario. Este error se genera si el ID de correo electrónico de inicio de sesión está configurado como dirección de correo principal/secundaria de otro usuario.

52 (En ServiceDesk Plus)

La adición dinámica de usuarios está deshabilitada.

  • Si el usuario no existe en ServiceDesk Plus, cree manualmente un nuevo usuario con el nombre de inicio de sesión recibido en la respuesta o habilite la adición dinámica de usuarios desde la configuración del Portal de autoservicio.

  • Si el usuario ya existe en la aplicación, asegúrese de que no haya discrepancias en la asignación de atributos.

52 (En Asset Explorer)

No existe tal usuario en la aplicación o el usuario no es un técnico.

Cree manualmente un nuevo técnico con la propiedad recibida o convierta al solicitante en técnico.

3

Secreto del cliente no válido

Asegúrese de que el valor del secreto se copie correctamente desde el proveedor (no el ID del secreto)

 

Con la confianza de las mejores organizaciones del mundo

Brindemos un mejor soporte juntos, más rápido y más fácil