> For the complete documentation index, see [llms.txt](https://docs.devolutions.net/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.devolutions.net/server/es/knowledge-base/how-to-articles/configure-microsoft-authentication-with-entra-id.md).

# Configurar la autenticación de Microsoft con Entra ID

Configure correctamente Microsoft Entra ID y Devolutions Server para utilizar la autenticación de Microsoft siguiendo las instrucciones que se indican a continuación.

Devolutions Server admite dos modos de autenticación para el inicio de sesión de Microsoft: ***Permisos de aplicación*** (valor predeterminado recomendado) y ***Permisos delegados*** (para inquilinos donde los permisos de aplicación están bloqueados por directiva). Es importante elegir el modo adecuado para la directiva de su inquilino antes de comenzar el procedimiento, ya que los URIs de redirección y los permisos de Microsoft Graph diferirán según su elección.

| Función                                   | Aplicación    | Delegado                             |
| ----------------------------------------- | ------------- | ------------------------------------ |
| ***Actúa como***                          | La aplicación | Un usuario de cuenta de servicio     |
| ***Consentimiento del administrador***    | Obligatorio   | Obligatorio para los ámbitos `*.All` |
| ***Autenticación de inicio de sesión***   | Sí            | Sí                                   |
| ***PAM***                                 | Sí            | No, utilice Aplicación               |
| ***Correo electrónico de Microsoft 365*** | Sí            | No, utilice el modo Aplicación       |
| ***Creación automática de usuarios***     | Sí            | Sí                                   |

## Requisitos <a href="#requirements" id="requirements"></a>

* El programador de Devolutions Server instalado y en ejecución
* Una suscripción a Microsoft Entra ID
* Una aplicación web de Entra ID para la aplicación web de Devolutions Server y la caché

## Registro de la aplicación en el Azure Portal

1. Inicie sesión en su [Microsoft Azure Portal](https://portal.azure.com) con credenciales de administrador.
2. Una vez que haya iniciado sesión, seleccione ***Microsoft Entra ID*** en la sección de servicios de Azure. Si no lo ve, haga clic en ***Más servicios*** para que aparezcan otros servicios o búsquelo en la barra de búsqueda.
3. En el panel de navegación de la izquierda, seleccione ***Registros de aplicaciones***.
4. Haga clic en ***+ Nuevo registro***.
5. Introduzca un nombre para la aplicación. Este nombre no se utilizará fuera del Azure Portal.
6. Defina qué ***Tipos de cuenta compatibles*** pueden conectarse. Normalmente, seleccionar ***Solo inquilino único*** es más que suficiente para su autenticación de Entra ID.
7. Establezca el ***URI de redirección*** en ***Web*** e introduzca los URIs correspondientes al modo de autenticación elegido. Todos los URIs deben apuntar a la URL pública de su instancia de Devolutions Server, incluida cualquier ruta virtual (por ejemplo `https://dvls.contoso.com/dvls/api/...`):
   1. **Modo de permisos de aplicación**:
      1. Callback de inicio de sesión del usuario: `https:///api/external-provider-response`.
      2. Vaya a ***Autenticación (versión preliminar)*** – ***Configuración***, marque la casilla ***Tokens de ID (usados para flujos implícitos e híbridos)*** y haga clic en ***Guardar***.
   2. **Modo de permisos delegados**:
      1. Callback de inicio de sesión del usuario: `https:///api/external-provider-response`
      2. Vinculación de la cuenta de servicio, inicio: `https:///api/configuration/authentication/azure/connect`
      3. Vinculación de la cuenta de servicio, callback: `https:///api/configuration/authentication/azure/connect-callback`
8. Seleccione el registro de aplicación que acaba de crear. En la sección ***Certificados y secretos***, haga clic en ***+ Nuevo secreto de cliente***.

{% hint style="warning" %}
Cuando el secreto de cliente caduque, nadie podrá conectarse a la instancia de Devolutions Server asociada. Entonces tendrá que crear un nuevo secreto de cliente. Le recomendamos que establezca un recordatorio antes de la fecha de caducidad.
{% endhint %}

9. Introduzca una descripción y establezca una fecha de caducidad. Haga clic en ***Añadir***.
10. Copie el ***Valor***. Asegúrese de guardarlo en una nota segura antes de cambiar a otra página del Azure Portal, ya que el botón de copiar dejará de estar disponible.
11. Seleccione el registro de aplicación que acaba de crear.
12. En la sección ***Permisos de API***, haga clic en ***+ Agregar un permiso***.
13. Seleccione ***Microsoft Graph***.
14. Elija el tipo de permiso de API y añada permisos en función de su modo de autenticación:

| Modo                       | Permisos de API                                                                                                                                                                                                         |
| -------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Permisos de aplicación** | `User.Read.All`, `Group.Read.All` (tipo Aplicación): se requiere el consentimiento del administrador.                                                                                                                   |
| **Permisos delegados**     | `User.Read` (tipo Delegado, con consentimiento del usuario) además de `User.Read.All`, `Group.Read.All` (tipo Delegado) para las lecturas del directorio: se requiere el consentimiento del administrador para `*.All`. |

{% hint style="info" %}
Aunque el consentimiento del administrador no es necesario de forma predeterminada, su organización puede forzar el consentimiento para `openid`, `profile` y `offline_access` en el primer inicio de sesión del usuario. Puede añadir estos permisos aquí para eliminar ese aviso.
{% endhint %}

15. Haga clic en ***Añadir permisos***.
16. En la página ***Descripción general*** del registro de aplicación, localice el ***ID de aplicación (cliente)*** en la sección ***Aspectos esenciales*** y el ***ID de inquilino*** en la sección ***Información básica***. Mantenga esta página abierta o guarde estos valores en una nota segura. Los necesitará más adelante para la configuración de Devolutions Server, por lo que conviene dejar la página abierta.

## Configuración del modo de autenticación en Devolutions Server

1. Inicie sesión en su Devolutions Server y navegue a ***Administración*** – ***Configuración del servidor*** – ***Autenticación***.
2. En **Modos de autenticación**, asegúrese de que **Autenticar con usuario de Microsoft** esté habilitado.
3. En **Configuración**, haga clic en **Autenticación de Microsoft**.
4. En el menú desplegable **Modo de autenticación**, seleccione el modo de autenticación que se corresponda con el registro de aplicación que acaba de configurar, es decir, ***Permisos de aplicación*** o ***Permisos delegados***.
5. Pegue el ID de inquilino de la aplicación en el campo ***Tenant ID*** de la página de configuración de ***Autenticación de Microsoft*** (consulte el paso n.º 18 de la sección Registro de la aplicación en el Azure Portal).

{% hint style="info" %}
La opción ***Usar un ID de cliente específico*** ***para la caché de usuarios y grupos de usuarios*** solo debe marcarse cuando se migra desde una versión de Devolutions Server anterior a 2024.1. Habilitarla en una instalación limpia puede deshabilitar la caché de usuarios.
{% endhint %}

6. Pegue el ***ID de aplicación (cliente)*** en el campo ***Client ID*** (consulte el paso n.º 18 de la sección Registro de la aplicación en el Azure Portal).
7. Pegue el ***Valor*** en el campo ***Valor del secreto***.
8. En el menú desplegable ***Tipo de interacción del usuario al iniciar sesión***, establezca el comportamiento del aviso de inicio de sesión de Entra ID:
   * ***Seleccionar cuenta*** (`select_account`): muestra siempre el selector de cuentas, incluso si el usuario ya tiene una sesión activa.
   * Déjelo en el valor predeterminado para un inicio de sesión silencioso cuando ya exista una sesión válida.
9. Solo para el modo de ***Permisos delegados***:
   * Introduzca el UPN de la cuenta de usuario que Devolutions Server suplantará para las llamadas a Microsoft Graph (por ejemplo, `svc-dvls@contoso.com`).
   * Haga clic en ***Conectar a Microsoft***. Se abre una ventana de inicio de sesión OAuth. Inicie sesión con la cuenta de servicio para vincularla a Devolutions Server. Una vez que el flujo de OAuth se complete correctamente, el estado ***Conectado*** mostrará el UPN de la cuenta de servicio vinculada.
   * Haga clic en ***Probar conexión*** para ejecutar una llamada delegada a la API de Graph y verificar que el token de la cuenta de servicio funciona correctamente.

{% hint style="info" %}
Para revocar el token almacenado en caché y borrar la vinculación de la cuenta de servicio en cualquier momento, haga clic en ***Desconectar***. Hágalo antes de cambiar la cuenta de servicio o rotar las credenciales.

La rotación del secreto de cliente o el cambio de la configuración del inquilino invalidan automáticamente el token delegado almacenado en caché. Al cambiar la contraseña de la cuenta de servicio o revocar la sesión, un administrador debe volver a conectarse desde ***Administración – Configuración del servidor – Autenticación – Autenticación de Microsoft***; el resto de la configuración se conserva.
{% endhint %}

10. Haga clic en ***Guardar***.

Ahora debería poder utilizar el botón ***Microsoft*** en la interfaz web de Devolutions Server.

{% hint style="info" %}
Después de activar la autenticación de Microsoft, la caché puede tardar un poco en cargarse antes de que pueda importar usuarios y grupos de usuarios.
{% endhint %}

#### Flujo de consentimiento

Según la configuración de su inquilino, se producirá uno de los siguientes resultados una vez gestionado el consentimiento:

| Escenario                                                                                                                                | Resultado                                                                                                                             |
| ---------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------- |
| **El administrador concede el consentimiento para todo el inquilino en el portal**                                                       | Silencioso: se cubren todos los usuarios, sin ventana emergente.                                                                      |
| **El administrador no da su consentimiento + la cuenta de servicio tiene los roles Administrador de usuarios y Administrador de grupos** | El primer inicio de sesión muestra una ventana emergente de consentimiento; la cuenta de servicio puede dar su propio consentimiento. |
| **El administrador no da su consentimiento + la cuenta de servicio no puede dar su propio consentimiento**                               | Inicio de sesión bloqueado con `AADSTS65001.`                                                                                         |

{% hint style="info" %}
Para inquilinos restringidos: los usuarios que no pueden obtener el consentimiento del administrador para todo el inquilino aún pueden utilizar el ***Modo delegado*** si conceden a la cuenta de servicio los dos roles integrados de Entra mencionados anteriormente.
{% endhint %}

## Limitaciones del modo delegado <a href="#delegated-mode-limitations" id="delegated-mode-limitations"></a>

* Solo inicio de sesión: PAM (acceso privilegiado) y la integración de correo electrónico de Microsoft 365 requieren ***Permisos de aplicación***. Si utiliza esas funciones, mantenga el modo Aplicación o ejecute una configuración híbrida con registros de aplicación separados.
* Lecturas del directorio en todo el inquilino: `User.Read.All` y `Group.Read.All` son ámbitos de todo el inquilino. Entra ID no tiene un ámbito de subconjunto nativo para OAuth. Para restringir qué usuarios puede crear automáticamente Devolutions Server, utilice la opción de restricción de creación automática por grupo en Devolutions Server.
* Dependencia de la cuenta de servicio: el modo delegado vincula Devolutions Server a la identidad de una única cuenta de servicio. Si la cuenta de servicio se deshabilita, se le rota la contraseña o se revoca su sesión, un administrador debe volver a conectarse a través de ***Administración*** – ***Configuración del servidor*** – ***Autenticación*** – ***Autenticación de Microsoft***.
* Solo inicio de sesión: la gestión de accesos privilegiados (PAM) y la integración de correo de Microsoft 365 requieren permisos de aplicación. Si utiliza esas funciones, mantenga el modo Aplicación o mantenga una configuración híbrida con dos registros de aplicación separados.
* Vinculación a una sola cuenta: el modo delegado vincula Devolutions Server a una única cuenta de servicio. Si esa cuenta se deshabilita o se le rota la contraseña, un administrador debe volver a conectarse.

## Notas de mantenimiento

#### Rotación del secreto de cliente

Antes de que caduque el secreto de cliente, cree uno nuevo en la página **Certificados y secretos** del registro de aplicación, pegue el nuevo valor en el campo **Valor del secreto** de la página *Autenticación de Microsoft* de Devolutions Server y haga clic en **Guardar**. Elimine el secreto antiguo del registro de aplicación solo después de confirmar que el inicio de sesión sigue funcionando.

#### Rotación de la cuenta de servicio (modo delegado)

Rotar la contraseña de la cuenta de servicio, revocar su sesión o rotar el secreto de cliente invalida el token de actualización delegado almacenado en caché. Un administrador debe volver a conectarse haciendo clic en **Desconectar** y después en **Conectar a Microsoft** en la página *Autenticación de Microsoft* utilizando las credenciales actualizadas. El resto de la configuración se conserva.

#### Primer inicio de sesión sin el consentimiento del administrador para todo el inquilino (modo delegado)

Si no se concedió el consentimiento del administrador en el paso n.º 14 del registro de la aplicación:

* Si la cuenta de servicio tiene los roles integrados de Entra **Administrador de usuarios** y **Administrador de grupos**, el primer inicio de sesión solicita el consentimiento y la cuenta de servicio puede aceptarlo por sí misma.
* De lo contrario, el primer inicio de sesión fallará hasta que un administrador de Entra conceda el consentimiento para los permisos `*.All`.

## Resolución de problemas

| Síntoma                                                                                                                                                                                | Causa probable                                                                                                           | Resolución                                                                                                                                                                   |
| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `AADSTS50011: The redirect URI specified in the request does not match the redirect URIs configured for the application` al hacer clic en **Conectar a Microsoft** en el modo delegado | Solo se registró el URI de redirección de inicio de sesión del usuario en el registro de aplicación.                     | Añada los URIs `/api/configuration/authentication/azure/connect` y `/api/configuration/authentication/azure/connect-callback` y guarde.                                      |
| El inicio de sesión del usuario funciona, pero las búsquedas de directorio o de grupos fallan con `Insufficient privileges`                                                            | Se añadieron los permisos de Microsoft Graph `*.All` necesarios, pero sin el consentimiento del administrador.           | En la página ***Permisos de API*** del registro de aplicación, haga clic en ***Conceder consentimiento de administrador para*** `<tenant>`.                                  |
| El inicio de sesión devuelve `invalid_client` o `unauthorized_client`                                                                                                                  | El secreto de cliente ha caducado o el valor pegado en Devolutions Server no coincide con el del registro de aplicación. | Cree un nuevo secreto de cliente, pegue el nuevo valor en la página *Autenticación de Microsoft* de Devolutions Server y guarde.                                             |
| En modo Delegado, el indicador ***Conectado*** se borra de forma inesperada                                                                                                            | La contraseña de la cuenta de servicio vinculada se rotó, sus sesiones se revocaron o el secreto de cliente se cambió.   | Vuelva a conectarse desde la página *Autenticación de Microsoft* haciendo clic en ***Desconectar*** y luego en ***Conectar a Microsoft*** con las credenciales actualizadas. |


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.devolutions.net/server/es/knowledge-base/how-to-articles/configure-microsoft-authentication-with-entra-id.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
