> ## Documentation Index
> Fetch the complete documentation index at: https://docs.devin.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Configuración de SSO con OIDC

> Configura el inicio de sesión único (SSO) con un proveedor de identidad genérico de OpenID Connect

Si tu organización utiliza un proveedor de identidad OpenID Connect (OIDC) distinto de Microsoft Entra ID u Okta (por ejemplo, Ping Identity, OneLogin, Keycloak, Auth0 u otro IdP compatible con OIDC), puedes configurar SSO para Devin Enterprise mediante una conexión OIDC genérica.

<Note>
  Esta guía es para clientes cuyo proveedor de identidad **no** es compatible de forma nativa con las integraciones de [Microsoft Entra ID (OIDC)](/es/enterprise/security-access/sso/azure) u [Okta (OIDC)](/es/enterprise/security-access/sso/okta). Si tu IdP es Microsoft Entra ID u Okta, te recomendamos usar la integración nativa, ya que ofrece una experiencia de configuración más sencilla.
</Note>

<div id="what-youll-need">
  ## Qué necesitarás
</div>

La siguiente información es necesaria para configurar SSO de OIDC para Devin. La recopilarás durante los pasos de configuración que se indican a continuación y se la enviarás a tu equipo de cuentas de Cognition en el paso final.

* **Discovery URL** - El endpoint de OIDC Discovery de tu IdP (por ejemplo, `https://idp.example.com/.well-known/openid-configuration`)
* **Client ID** - El Client ID de la aplicación en tu IdP
* **Client Secret** - El Client Secret de la aplicación en tu IdP
* **Identity Provider Domains** - Todos los dominios de correo electrónico corporativos que se autenticarán a través de este IdP (por ejemplo, `example.com`, `subsidiary.example.com`)
* **Scopes** - Los scopes de OIDC que se solicitarán (normalmente `openid profile email`; agrega `groups` si utilizas grupos del IdP)

<div id="setup-instructions">
  ## Instrucciones de configuración
</div>

<div id="step-1-register-an-application-in-your-idp">
  ### Paso 1: Registrar una aplicación en su IdP
</div>

En la consola de administración de su proveedor de identidad, cree una nueva aplicación OIDC / OAuth 2.0 (a veces llamada "Web Application" o "Confidential Client") con la siguiente configuración:

| Configuración                           | Valor                                  |
| :-------------------------------------- | :------------------------------------- |
| **Application Type**                    | Web Application / Confidential Client  |
| **Sign-in Redirect URI (Callback URL)** | `https://auth.devin.ai/login/callback` |
| **Sign-out Redirect URI**               | Dejar vacío                            |
| **Grant Type**                          | Authorization Code                     |
| **Token Endpoint Authentication**       | Client Secret (POST)                   |

Después de crear la aplicación, tome nota del **Client ID** y el **Client Secret** proporcionados por su IdP.

<div id="step-2-locate-your-discovery-url">
  ### Paso 2: Localiza tu Discovery URL
</div>

La mayoría de los proveedores de identidad compatibles con OIDC publican un documento de descubrimiento de OpenID Connect (OpenID Connect Discovery). Esta URL permite que Devin obtenga automáticamente los endpoints de autorización, token y userinfo de tu IdP.

La Discovery URL suele seguir este patrón:

```
https://<your-idp-domain>/.well-known/openid-configuration
```

<Note>
  Formatos comunes de URL de descubrimiento según el proveedor:

  * **Keycloak**: `https://<host>/realms/<realm>/.well-known/openid-configuration`
  * **Ping Identity**: `https://<host>/<tenant-id>/as/.well-known/openid-configuration`
  * **OneLogin**: `https://<subdomain>.onelogin.com/oidc/2/.well-known/openid-configuration`
  * **Auth0**: `https://<domain>/.well-known/openid-configuration`
  * **Google Workspace**: `https://accounts.google.com/.well-known/openid-configuration`

  Puedes verificar la URL abriéndola en un navegador; debería devolver un documento JSON que contenga campos como `authorization_endpoint`, `token_endpoint` y `issuer`.
</Note>

<div id="step-3-configure-scopes">
  ### Paso 3: Configurar scopes
</div>

Los scopes de OIDC controlan qué información de usuario recibe Devin durante la autenticación. Como mínimo, debes solicitar los siguientes scopes:

| Scope     | Propósito                                                         | Requerido                  |
| :-------- | :---------------------------------------------------------------- | :------------------------- |
| `openid`  | Requerido para todos los flujos de OIDC                           | Sí                         |
| `profile` | Devuelve el nombre visible del usuario                            | Sí                         |
| `email`   | Devuelve la dirección de correo electrónico del usuario           | Sí                         |
| `groups`  | Devuelve las membresías de grupo del usuario (para grupos de IdP) | Solo si usas grupos de IdP |

Tu cadena de scopes debería ser: `openid profile email` (o `openid profile email groups` si usas grupos de IdP).

<Note>
  Algunos IdP usan un nombre de scope diferente para las declaraciones de grupo (por ejemplo, `roles` o un scope personalizado). Consulta la documentación de tu IdP para encontrar el nombre de scope correcto que devuelve la información de membresía de grupo.
</Note>

<div id="step-4-configure-group-claims-required-for-idp-groups">
  ### Paso 4: Configurar las *group claims* (obligatorio para grupos del IdP)
</div>

<Warning>
  Si deseas usar la [integración de grupos del IdP](/es/enterprise/security-access/idp-groups) para el control de acceso basado en roles en Devin, **debes** configurar tu IdP para que incluya la pertenencia a grupos en el ID token o en la respuesta de `userinfo`. De lo contrario, los usuarios se autenticarán correctamente, pero los grupos del IdP no se sincronizarán.
</Warning>

Para habilitar la sincronización de grupos del IdP:

1. En tu IdP, asegúrate de que el *scope* `groups` esté disponible para la aplicación
2. Configura tu IdP para que incluya una *claim* `groups` en el ID token o en la respuesta de `userinfo`

<Note>
  Si tu IdP no incluye *group claims* de manera predeterminada, es posible que necesites crear un *scope* personalizado o configurar una política de asignación de *claims*. Consulta la documentación de tu IdP para obtener instrucciones sobre cómo agregar *group claims* a los tokens OIDC.
</Note>

<div id="step-5-send-configuration-to-cognition">
  ### Paso 5: Enviar la configuración a Cognition
</div>

Envía lo siguiente al equipo de cuentas de Cognition:

1. **Discovery URL** (por ejemplo, `https://idp.example.com/.well-known/openid-configuration`)
2. **Client ID**
3. **Client Secret**
4. **Identity Provider Domains** (todos los dominios de correo electrónico para este IdP)
5. **Scopes** (por ejemplo, `openid profile email groups`)

El equipo de cuentas de Cognition configurará la conexión OIDC para que los grupos del IdP se sincronicen automáticamente cada vez que un usuario inicie sesión.

<div id="verifying-your-setup">
  ## Verifying Your Setup
</div>

Después de que el equipo de cuentas de Cognition confirme que la configuración está completa:

1. Ve a la URL de tu instancia de Devin Enterprise (por ejemplo, `https://<your_subdomain>.devinenterprise.com`)
2. Haz clic en **Sign in with OIDC** (o el botón de SSO equivalente) para iniciar el flujo de inicio de sesión
3. Deberías ser redirigido a la página de inicio de sesión de tu IdP
4. Después de autenticarte, deberías llegar a tu organización de Devin Enterprise

Para verificar que los grupos del IdP estén funcionando:

1. Ve a **Settings** > **IdP Groups** en la aplicación web de Devin
2. Deberías ver tus grupos de IdP en la lista después de que al menos un miembro de algún grupo haya iniciado sesión
3. Los grupos se sincronizan en cada inicio de sesión, por lo que cualquier cambio en la membresía de tu IdP surtirá efecto la próxima vez que un usuario inicie sesión

<Note>
  Los grupos del IdP se recuperan cuando el usuario inicia sesión, por lo que los cambios en la membresía de los grupos requerirán una nueva autenticación. Consulta [IdP Group Integration](/es/enterprise/security-access/idp-groups) para obtener más detalles sobre cómo configurar el control de acceso basado en grupos.
</Note>
