# Configurar Microsoft Entra ID para inicio de sesión único (SSO) e importación de usuarios en Salto IDM
> Configura Microsoft Entra ID en el portal de Azure para habilitar el inicio de sesión único (SSO) e importar usuarios de Entra ID como usuarios de Salto IDM.


Esta guía explica qué servicios crear y qué ajustes configurar en el [portal de Azure](https://portal.azure.com/) para habilitar el inicio de sesión único (SSO) e importar usuarios de Microsoft Entra ID (antes Azure Active Directory) como usuarios de Salto IDM.

## Instrucciones {#instructions}

Sigue estas instrucciones para crear un registro de aplicación y configurarlo correctamente en Salto IDM.

### Paso 1: Registrar la aplicación con tu tenant de Microsoft Entra ID {#step-1-register-the-application-with-your-microsoft-entra-id-tenant}

1. Accede a la página [Portal de Azure - Registros de aplicaciones](https://portal.azure.com/#blade/Microsoft_AAD_IAM/ActiveDirectoryMenuBlade/RegisteredApps).

2. Elige una aplicación existente en la pestaña **Todas las aplicaciones** o selecciona **Nuevo registro**.

3. Cuando aparezca la página **Registrar una aplicación**, introduce la información de registro de tu aplicación:

   - En la sección **Nombre**, introduce un nombre (por ejemplo, `SaltoIDM-EntraID-Integration`).
   - En la sección **Tipos de cuentas admitidas**, selecciona una de las siguientes opciones:
     - Para permitir usuarios externos y cuentas de diferentes dominios y tenants, selecciona **Cuentas en cualquier directorio organizativo (Cualquier tenant de Microsoft Entra ID - Multitenant)**.
     - Para permitir solo usuarios internos y cuentas de tu propio dominio y tenant, selecciona **Cuentas solo en este directorio organizativo (solo el nombre de tu tenant - Tenant único)**.
   - En la sección **URI de redirección (opcional)**, selecciona **Web** en el menú desplegable e introduce la siguiente URL: `https://{{HOSTNAME}}:{{PORT}}/signin-microsoft`

   ![Página de registro de una aplicación en el portal de Azure](images/entra-id-app-registration.png)
   {.border}

4. Selecciona **Registrar** para crear la aplicación.

{{% info-panel %}}
Para el **URI de redirección**, asegúrate de usar HTTPS (no HTTP) y reemplaza `{{HOSTNAME}}` y `{{PORT}}` con el host y puerto reales donde se ejecutará la aplicación.

Cuando el entorno de producción se ejecuta en el puerto HTTPS predeterminado (443), no necesitas añadir el puerto (por ejemplo, `https://demo.saltoidm.com/signin-microsoft`).

Para mantener tus registros limpios y aislados, lo que permite una depuración y resolución de problemas más sencilla, crea registros de aplicaciones independientes para diferentes entornos (por ejemplo, Localhost, Producción, Staging).
{{% /info-panel %}}

### Paso 2: Configurar la autenticación de la aplicación {#step-2-configure-application-authentication}

1. Después de navegar a la página de registro de la aplicación, selecciona la pestaña **Autenticación**.
2. Actualiza tu **URL de cierre de sesión del canal frontal** para que apunte a `https://{{HOSTNAME}}:{{PORT}}/Account/Signout`.
3. Selecciona las siguientes casillas de verificación para que el punto de conexión de autorización pueda emitir los tokens correctos:

   - **Tokens de acceso (usados para flujos implícitos)**
   - **Tokens de ID (usados para flujos implícitos e híbridos)**

   ![Pestaña de autenticación con tokens de acceso e ID seleccionados](images/entra-id-authentication-tokens.png)

### Paso 3: Configurar el secreto de la aplicación {#step-3-configure-the-application-secret}

1. Selecciona la pestaña **Certificados y secretos** y selecciona **Nuevo client secret**.

2. Agrega una **Descripción** representativa a tu secreto y elige una **Expiración** de acuerdo con tus propias reglas de seguridad y mantenimiento.

   ![Añadir un client secret con descripción y expiración](images/entra-id-client-secret.png)
   {.border}

3. Una vez que crees el secreto, copia el **Valor secreto** (no el ID de secreto) y guárdalo en un lugar seguro, como un administrador de contraseñas.
   Una vez que salgas de esta página, no podrás volver a ver el valor y, si no lo guardas, deberás volver a crear el secreto.

{{% warning-panel %}}
Después de que el secreto expire, el SSO no funcionará.
Debes crear un nuevo secreto y actualizar su valor en Salto IDM.

Asegúrate de tener implementado un mecanismo que te avise cuando el secreto esté por caducar para evitar problemas de inicio de sesión en entornos de producción.
{{% /warning-panel %}}

### Paso 4: Configurar las notificaciones de la aplicación {#step-4-configure-application-claims}

1. Selecciona la pestaña **Configuración de token** y selecciona **Agregar notificación opcional**.

2. Para **Tipo de token**, elige **ID** y marca las siguientes notificaciones:

   - **Correo electrónico**
   - **Nombre**
   - **Apellidos**
   - **ID de objeto**

   ![Cuadro de diálogo de agregar notificación opcional con las notificaciones de token de ID seleccionadas](images/entra-id-optional-claims.png)

3. Selecciona **Agregar**.
   Aparecerá una ventana emergente solicitando acceso para activar los permisos de API necesarios para leer esas notificaciones.
   Marca la casilla de verificación y luego selecciona **Agregar**.

   ![Ventana emergente para activar el permiso de correo electrónico y perfil de Microsoft Graph](images/entra-id-graph-permission-consent.png)

### Paso 5: Configurar permisos de API {#step-5-configure-api-permissions}

1. Selecciona la pestaña **Permisos de API** y asegúrate de que los siguientes permisos se hayan agregado automáticamente en los pasos anteriores.

   ![Permisos de API añadidos automáticamente para Microsoft Graph](images/entra-id-api-permissions.png)

2. Selecciona **Agregar un permiso**, elige **Microsoft Graph**, luego **Permisos de aplicación**, busca y marca `User.Read.All` bajo los derechos de **Usuario**.
   Selecciona **Agregar permisos**.

   ![Selección del permiso de aplicación para leer todos los usuarios](images/entra-id-user-read-all-permission.png)
   {.border}

3. Por último, proporciona **consentimiento de administrador** a esos permisos seleccionando el botón situado sobre la tabla de permisos.
   Una vez que otorgues el permiso, se añadirá una marca de verificación a los permisos.

   ![Estado de consentimiento de administrador concedido para los permisos](images/entra-id-admin-consent.png)

### Paso 6: Añadir la configuración de registro de la aplicación a Salto IDM {#step-6-add-the-app-registration-settings-to-salto-idm}

1. En Salto IDM, asegúrate de que tu licencia tenga activada la integración de **Microsoft Entra ID**.
   Contacta a nuestro equipo de soporte si tu instalación no cuenta con la integración.
2. Inicia sesión como un usuario de aplicación con derechos para actualizar **Microsoft Entra ID**.
3. Navega a **Administración** > **Configuración**.
   Elige **Microsoft Entra ID** en el menú de la izquierda.
4. Asegúrate de que la opción **Usar inicio de sesión único de Microsoft Entra ID** esté activada.
5. Completa todos los valores según los IDs de registro de tu aplicación en Azure y el secreto almacenado previamente:

   ![Configuración de credenciales de inicio de sesión único en Salto IDM](images/idm-entra-id-sso-credentials.png)
   {.border}

   Puedes encontrar el **ID de directorio (tenant)** y el **ID de aplicación (cliente)** en la página **Información general** del registro de tu aplicación en Azure.

   ![Información general del registro de la aplicación mostrando los IDs de aplicación y directorio](images/entra-id-app-overview-ids.png)

{{% info-panel %}}
Una vez que guardes los valores, el campo **Client secret (valor)** aparecerá vacío.
Esto no es un error.
Está diseñado para evitar la exposición de tus secretos en el frontend.

Al guardar nuevos valores, si cambias el secreto, se actualizará automáticamente.
Si lo dejas vacío, no se reemplazará.
{{% /info-panel %}}

### Paso 7: Iniciar sesión usando Microsoft Entra ID SSO {#step-7-log-in-using-microsoft-entra-id-sso}

1. Una vez que esta opción esté activada y configurada correctamente, puedes iniciar sesión usando tu cuenta de Microsoft.

2. Navega a la página de inicio de sesión y elige **Iniciar sesión con Microsoft**.

   ![Página de inicio de sesión de Salto IDM con la opción de Iniciar sesión con Microsoft](images/idm-sign-in-with-microsoft.png)
   {.border}

3. Sigue los pasos habituales necesarios para iniciar sesión en tu cuenta.
   Una vez que seas redirigido a Salto IDM, confirma que estás vinculando tu cuenta de Microsoft con un usuario de la aplicación Salto IDM:

   ![Información de asociación que confirma el vínculo de la cuenta de Microsoft](images/idm-account-association.png)
   {.border}

4. Después de esto, puedes iniciar sesión en Salto IDM como un usuario limitado.
   Pide a tu administrador que asigne los roles y derechos correctos a tu usuario de aplicación para que puedas usar las funciones necesarias.

### Paso 8: Importar usuarios de Microsoft Entra ID como usuarios de Salto IDM {#step-8-import-microsoft-entra-id-users-as-salto-idm-users}

1. Ve a **Administración** > **Automatizaciones** y crea una nueva automatización.
   Selecciona la opción **Importación de Microsoft Entra ID** y utiliza la pestaña **Credenciales** a la derecha para añadir las credenciales guardadas.

   ![Creación de una automatización de importación de Microsoft Entra ID en Salto IDM](images/idm-entra-id-import-automation.png)
   {.border}

2. Guarda la automatización y utiliza la pestaña **Configuración** para ajustar completamente la importación según tus necesidades.

   ![Pestaña de configuración para la automatización de importación de Microsoft Entra ID](images/idm-entra-id-import-configuration.png)
   {.border}

3. Una vez finalizada la automatización, por ejemplo ejecutándola manualmente, puedes ver los usuarios creados como Usuarios en Salto IDM.

   ![Confirmación de que la automatización se completó en Salto IDM](images/idm-automation-success.png)
   {.border}

