Saltar al contenido principal

Documentation Index

Fetch the complete documentation index at: https://docs.devinenterprise.com/llms.txt

Use this file to discover all available pages before exploring further.

Esta guía acompaña a los administradores de empresa a lo largo de todo el ciclo de vida de SSO con Devin, desde la configuración inicial hasta la configuración de grupos de IdP, y explica cómo Devin gestiona el aprovisionamiento de usuarios sin SCIM. Para obtener instrucciones de configuración específicas de cada proveedor, consulta Okta, Azure AD, SAML o OIDC genérico.

1. Configuración del SSO (inicio de sesión único)

Creación de tu aplicación de SSO

Crea una aplicación en tu proveedor de identidad (Okta, Azure AD o cualquier IdP compatible con SAML/OIDC) y comparte las siguientes credenciales con tu equipo de Cognition:
Tipo de conexiónProtocoloQué proporcionar
OktaOIDC (Okta Workforce Identity)Dominio de Okta, ID de cliente, secreto de cliente, ámbitos
Azure ADOIDC (Microsoft Entra ID)Dominio de Azure AD, ID de cliente, secreto de cliente
SAMLSAML 2.0 (cualquier IdP)URL de inicio de sesión, certificado de firma X.509
Generic OIDCOIDCURL de descubrimiento, ID de cliente, secreto de cliente, ámbitos
También debes proporcionar tus dominios de correo electrónico verificados para que Devin sepa en qué direcciones de correo electrónico de tu IdP debe confiar.

Qué sucede después de la configuración

Una vez que tu equipo de Cognition tiene las credenciales, configura la conexión de SSO. Cuando la configuración se completa:
  1. La conexión de SSO se vincula a tu cuenta Enterprise de Devin
  2. Se habilita la membresía automática al iniciar sesión — cualquier usuario que se autentique mediante SSO se agrega automáticamente a tu empresa
  3. Tus dominios de correo electrónico se registran como de confianza — solo se aceptan direcciones de correo electrónico de esos dominios
  4. Se habilita la asignación de roles basada en grupos (RBAC) — los grupos de IdP enviados durante el inicio de sesión pueden mapearse a roles de Devin
  5. Los inicios de sesión sociales predeterminados (Google, GitHub) se deshabilitan — SSO pasa a ser el método de autenticación obligatorio

La experiencia de inicio de sesión del usuario

  1. El usuario accede a tu URL de Devin
  2. Se le redirige al IdP configurado (Okta, Azure AD, etc.)
  3. El usuario se autentica normalmente
  4. El IdP envía a Devin la información del usuario y su pertenencia a grupos
  5. Devin automáticamente:
    • Crea la cuenta del usuario si es su primer inicio de sesión (aprovisionamiento just-in-time)
    • Le asigna el rol predeterminado de Miembro de Enterprise
    • Sincroniza su pertenencia a grupos del IdP: agrega grupos nuevos y elimina los inactivos
    • Registra el inicio de sesión en el registro de auditoría de Enterprise

Administración de autoservicio

Lo siguiente está disponible directamente para los administradores de empresa en la aplicación web de Devin.

Gestión de grupos de IdP

Settings → Enterprise → Grupos de IdP
  • Ver todos los grupos que se han sincronizado a partir de los inicios de sesión de los usuarios
  • Asignar un grupo a un rol a nivel Enterprise (p. ej., “Todos los miembros de Engineering-Admins reciben el rol de Enterprise Admin”)
  • Asignar un grupo a orgs específicas con roles específicos (p. ej., “Team-Backend recibe acceso de Member en la org Backend”)
  • Agregar o quitar grupos en bloque en múltiples orgs
  • Ver a cuántas orgs está asignado cada grupo

Gestión de miembros

Settings → Enterprise → Miembros
  • Ver todos los miembros de Enterprise, incluidos los grupos de IdP a los que pertenecen
  • Invitar a nuevos miembros por correo electrónico
  • Actualizar los roles de los miembros
  • Eliminar miembros

Roles personalizados

Settings → Enterprise → Roles
  • Crea roles personalizados con permisos granulares
  • Asigna roles personalizados a usuarios individuales o a grupos de IdP
Consulta Roles personalizados y RBAC para obtener más información.

API para la automatización

Devin ofrece una API v2 que puede usar para automatizar la gestión de miembros:
AcciónEndpoint de la API
Listar todos los miembrosGET /v2/enterprise/members
Invitar usuarios por correo electrónico (en bloque)POST /v2/enterprise/members/invite
Eliminar un miembroDELETE /v2/enterprise/members/{user_id}
Actualizar en bloque los roles de los miembrosPATCH /v2/enterprise/members/roles
Migrar miembros entre rolesPATCH /v2/enterprise/members/migrate-roles
Listar todos los rolesGET /v2/enterprise/roles
Listar todos los grupos de IdPGET /v2/enterprise/groups
Crear grupos de IdP de antemanoPUT /v2/enterprise/groups
Obtener las asignaciones de organización de un grupoGET /v2/enterprise/groups/{group_name}

2. Cómo funciona Devin sin SCIM

Actualmente, Devin no admite el protocolo SCIM. Toda la gestión de usuarios y grupos se realiza mediante eventos de inicio de sesión con SSO y la UI/API de Devin. Esto es lo que significa en la práctica.

Aprovisionamiento de usuarios: solo al iniciar sesión

Con SCIMDevin (sin SCIM)
Cómo se crean los usuariosEl IdP crea el usuario en la aplicación de inmediato cuando se le asignaEl usuario solo existe en Devin después de su primer inicio de sesión con SSO, o tras una invitación manual a través de la UI o la API
Cuándo ocurreEl Admin asigna la aplicación al usuario → el usuario aparece en cuestión de segundosEl Admin asigna la aplicación al usuario → no ocurre nada en Devin hasta que inicia sesión
PreaprovisionamientoLa cuenta de usuario está lista antes de que visite la aplicación por primera vezNo hay preaprovisionamiento, a menos que el Admin lo invite explícitamente a través de la UI de Devin o la API
Al incorporar a nuevos empleados, el Admin puede invitarlos por adelantado (Settings → Enterprise → Miembros → Invitar, o mediante la API) o simplemente dejar que se aprovisionen automáticamente en su primer inicio de sesión.

Desaprovisionamiento de usuarios: solo manual

Con SCIMDevin (sin SCIM)
Cómo se eliminan los usuariosEl IdP desactiva/elimina al usuario → la aplicación lo desactiva de inmediatoDesactivar/eliminar a un usuario en el IdP no tiene ningún efecto en Devin
BajaEl empleado dado de baja pierde el acceso en cuestión de minutosEl empleado dado de baja mantiene el acceso hasta que se lo elimina manualmente de Devin y su sesión expira
CumplimientoCumplimiento automatizado: sin cuentas huérfanasRiesgo de cuentas huérfanas, a menos que el administrador gestione ambos sistemas
Esta es la mayor carencia operativa. Al dar de baja a un empleado, el administrador debe eliminarlo por separado de Devin (Settings → Enterprise → Miembros → Eliminar, o mediante la API). Las sesiones activas siguen funcionando hasta que expiran de forma natural: el IdP no activa una revocación instantánea de la sesión.

Sincronización de grupos: solo al iniciar sesión, no en tiempo real

Con SCIM (Group Push)Devin (sin SCIM)
Momento de sincronizaciónEl IdP envía los cambios de pertenencia a grupos en tiempo realLos grupos solo se sincronizan cuando el usuario inicia sesión
Agregar a un grupoEl Admin agrega al usuario al grupo → la app lo refleja de inmediatoEl Admin agrega al usuario al grupo → Devin no lo detecta hasta que el usuario vuelva a iniciar sesión
Quitar de un grupoEl Admin quita al usuario del grupo → la app lo refleja de inmediatoEl Admin quita al usuario del grupo → Devin sigue mostrando la pertenencia anterior hasta el siguiente inicio de sesión
Fuente de verdadEl IdP es siempre la fuente de verdadEl IdP es la fuente de verdad solo en el momento del inicio de sesión; puede desincronizarse entre inicios de sesión
Si un admin cambia el grupo de IdP de alguien (p. ej., lo mueve de Engineering a Sales), Devin no reflejará ese cambio hasta que el usuario vuelva a iniciar sesión. Mientras tanto, el usuario conserva sus Roles basados en grupos y el acceso a la org anterior.

Alternativas nativas a SCIM

Devin incluye varias funciones que cubren casos de uso habituales de SCIM:
  1. Aprovisionamiento just-in-time — los usuarios se crean automáticamente en el primer inicio de sesión con SSO con el rol empresarial predeterminado
  2. Sincronización completa de grupos en cada inicio de sesión — cada vez que un usuario inicia sesión, Devin realiza una comparación completa de sus grupos de IdP: agrega los nuevos y elimina los antiguos
  3. RBAC basado en grupos — puedes asignar grupos de IdP a roles empresariales y acceso a la organización en la configuración de Devin; esto se aplica en el siguiente inicio de sesión
  4. API v2 para automatización — las invitaciones, eliminaciones y modificaciones masivas de roles se pueden automatizar con scripts para cerrar la brecha entre el aprovisionamiento y el desaprovisionamiento
  5. Registros de auditoría — cada inicio de sesión queda registrado, lo que da visibilidad sobre quién ha accedido a Devin

3. Configuración de grupos gestionados por el IdP

Si usas SCIM con otras aplicaciones (p. ej., Slack, Box), esta sección explica cómo funciona el modelo de grupos de Devin y cómo configurar correctamente tu IdP.

Contexto: grupos de SCIM vs. grupos de IdP

  • Grupos de SCIM: La app de destino le indica al IdP qué grupos existen (el IdP los “importa”). La app es la fuente de verdad de la estructura de los grupos. El IdP sincroniza a los usuarios con esos grupos definidos por la app.
  • Grupos de IdP (lo que usa Devin): El IdP es la fuente de verdad. Los grupos se definen en el directorio del IdP, y las membresías de los grupos se envían a Devin mediante claims de SAML/OIDC en el momento del inicio de sesión.
Como Devin no usa SCIM, ya estás operando en el modo de “grupos de IdP”. La clave es asegurarte de que se estén enviando los grupos correctos desde tu IdP y de que se asignen correctamente en Devin.

Paso 1: Definir grupos en el IdP

En la consola de administración de tu IdP (los ejemplos a continuación usan Okta):
  1. Ve a Directory → Groups
  2. Crea grupos que se correspondan con los niveles de acceso de Devin (p. ej., Devin-Engineering, Devin-Admins, Devin-DataScience)
  3. Asigna usuarios a estos grupos
Estos son grupos nativos del IdP: tu IdP es la fuente de verdad para determinar quién pertenece a cada uno.

Paso 2: Configurar los claims de grupo en la aplicación del IdP

Los grupos deben incluirse en la respuesta de autenticación para que Devin pueda leerlos.

Para conexiones SAML

  1. Ve a Applications → [Devin App] → SAML Settings → Edit
  2. En Group Attribute Statements, agrega:
    • Name: groups
    • Filter: “Comienza con” → Devin- (o usa “Matches regex” para patrones más complejos)
  3. Esto le indica al IdP que incluya en la aserción SAML los nombres de los grupos que coincidan

Para conexiones OIDC

  1. Ve a Applications → [app de Devin] → Sign On → Edit
  2. En OpenID Connect ID Token → Groups claim type, selecciona “Filter”
  3. Configura el filtro para que coincida con los grupos de Devin (p. ej., “Starts with” → Devin-)
Usa un prefijo de filtro como Devin- para que solo se envíen los grupos relevantes. No es necesario enviar todos los grupos del IdP de la organización.

Paso 3: Asigna grupos a roles y orgs en Devin

Una vez que los grupos se transmitan al iniciar sesión, asígnalos en Devin.

En la UI de Devin

  1. Settings → Enterprise → Grupos de IdP
  2. Los grupos aparecen automáticamente después de que inicie sesión cualquier miembro de ese grupo
  3. Haz clic en un grupo → asígnale un rol a nivel de Enterprise (p. ej., Enterprise Admin o un rol personalizado)
  4. Haz clic en un grupo → asígnalo a orgs específicas con roles específicos a nivel de org

A través de la API (para la configuración previa o la automatización)

  • Cree los grupos de antemano, antes de que alguien inicie sesión: PUT /v2/enterprise/groups
  • Liste los grupos y las org a las que están asignados: GET /v2/enterprise/groups

Paso 4: Si migras desde grupos de SCIM en otras aplicaciones

Si estás cambiando tu estrategia general de IdP, de grupos gestionados por SCIM a grupos gestionados por el IdP en todas tus herramientas (no solo en Devin):
  1. Detén la importación de grupos de SCIM en las otras aplicaciones:
    • En el IdP: ve a la pestaña Provisioning → Integration de la aplicación → desmarca “Import Groups”
    • Esto evita que la aplicación de destino sea la fuente de verdad de los grupos
  2. Crea grupos equivalentes en el directorio del IdP:
    • Ve a Directory → Groups y crea grupos que reflejen los que existían en la aplicación de destino
    • Asigna usuarios a estos grupos nativos del IdP
  3. Configura Group Push (para las aplicaciones que lo admiten):
    • En la configuración del IdP de la aplicación: pestaña Push Groups → busca los grupos por nombre → vincúlalos con los grupos existentes en la aplicación de destino
    • Esto hace que el IdP sobrescriba la membresía interna de la aplicación; el IdP pasa a ser la única fuente de verdad
    • Devin no necesita Group Push porque lee los grupos directamente de la aserción de inicio de sesión
  4. Desactiva la sincronización de grupos de SCIM en las otras aplicaciones:
    • Asegúrate de que “Import Groups” siga desactivado para evitar que la aplicación de destino vuelva a declararse como fuente de verdad
En el caso específico de Devin, no hace falta ninguna migración. Solo asegúrate de completar los pasos 1–3 anteriores (grupos definidos en tu IdP, claims configurados y mapeos establecidos en Devin).

Consideraciones clave

Si se cambia el nombre de un grupo, Devin lo trata como un grupo nuevo. Las asignaciones de roles del grupo anterior no se transfieren automáticamente; tendrás que volver a configurar el nuevo nombre del grupo en Settings de Devin.
Un usuario agregado a un grupo del IdP asignado a Devin no obtendrá ese acceso hasta que inicie sesión.
Quitar a un usuario de un grupo del IdP no revoca de inmediato su acceso a Devin. En su próximo inicio de sesión, Devin sincroniza y elimina la membresía de grupo obsoleta. Cualquier membresía directa (asignada fuera de los grupos) no se ve afectada.
El nombre del grupo en el IdP debe coincidir exactamente con lo que ve Devin. Distingue entre mayúsculas y minúsculas.
Devin no admite grupos anidados/jerárquicos. Si el IdP envía un grupo principal, los miembros de los grupos secundarios no se incluyen automáticamente. Cada grupo debe asignarse explícitamente.

Para tener el control más estricto posible sin SCIM, sigue este enfoque:
1

Configura tu proveedor de identidad (fuente de verdad)

  1. Define grupos: Devin-Admins, Devin-Backend, Devin-Frontend, etc.
  2. Asigna usuarios a los grupos
  3. Configura los claims de grupo de SAML/OIDC filtrados por “Empieza por: Devin-
2

Devin se sincroniza en cada inicio de sesión

Cuando un usuario inicia sesión mediante SSO, Devin automáticamente:
  • Crea al usuario automáticamente si es nuevo
  • Realiza una sincronización completa de grupos (agrega grupos nuevos y elimina los obsoletos)
  • Aplica de inmediato las asignaciones de grupos a roles y a organizaciones
3

Opcional: Automatiza con la API V2

Configura un job programado para cubrir las brechas de SCIM:
  1. Lee los usuarios activos desde la API de tu IdP
  2. Lee los miembros de Devin desde GET /v2/enterprise/members
  3. Invita a nuevos empleados mediante POST /v2/enterprise/members/invite
  4. Elimina a los empleados que ya no están mediante DELETE /v2/enterprise/members/{user_id}
Esto te da aprovisionamiento y desaprovisionamiento de tipo push sin SCIM.

Lo que esto te ofrece

  • Tu IdP como fuente única de verdad para la estructura de grupos y la pertenencia a ellos
  • Acceso automático basado en grupos en cada inicio de sesión
  • Aprovisionamiento y desaprovisionamiento mediante API para cubrir la brecha que normalmente llenaría SCIM
  • Registro de auditoría completo de todos los inicios de sesión y cambios de membresía

Limitaciones actuales

  • Sincronización de grupos en tiempo real entre inicios de sesión — los grupos solo se actualizan cuando los usuarios inician sesión
  • Revocación instantánea de sesiones tras el desaprovisionamiento — las sesiones siguen activas hasta que expiran
  • Eventos del ciclo de vida iniciados por el IdP, como suspender/reactivar, no se admiten