- SSO de Google
- SSO de Azure AD (inicio de sesión único)
- SSO de Okta
- Azure SCIM (Sistema para la Gestión de Identidades entre Dominios)
- Okta SCIM (Sistema para la Gestión de Identidades entre Dominios)
- API de SCIM (Sistema para la Gestión de Identidades entre Dominios)
- Duo
- PingID
Windsurf ahora admite el inicio de sesión con SSO (inicio de sesión único) mediante SAML. Si tu organización usa Microsoft Entra, Okta, Google Workspace u otro proveedor de identidad que admita SAML, podrás usar SSO con Windsurf.
Haz clic en Add app y luego en Add custom SAML app.
Rellena App name con 
En la página de configuración de Codeium, haz clic en Enable Login with SAML y luego en Save. Asegúrate de hacer clic en Test Login para comprobar que el inicio de sesión funciona según lo esperado. A partir de ahora, todos los usuarios tendrán el inicio de sesión por SSO obligatorio.
Windsurf solo admite SSO iniciado por el SP; actualmente NO se admite el SSO iniciado por el IdP.
Configurar la aplicación del IdP
En la consola de administración de Google (admin.google.com), haz clic en Apps -> Web and mobile apps en el panel izquierdo.

Windsurf y haz clic en Next.La siguiente pantalla (Google Identity Provider details) en la consola de Google contiene datos que deberás copiar a la configuración de SSO de Windsurf en https://windsurf.com/team/settings.- Copia la SSO URL desde la consola de Google a la configuración de Windsurf en SSO URL
- Copia el Entity ID desde la consola de Google a la configuración de Windsurf en IdP Entity ID
- Copia el Certificate desde la consola de Google a la configuración de Windsurf en X509 Certificate
- Haz clic en Continue en la consola de Google
- Copia la Callback URL desde la página de configuración de Codeium a la consola de Google en ACS URL
- Copia el SP Entity ID desde la página de configuración de Codeium a la consola de Google en SP Entity ID
- Cambia el formato de Name ID a EMAIL
- Haz clic en Continue en la consola de Google
- Haz clic en Add Mapping, selecciona First name y establece los App attributes en firstName
- Haz clic en Add Mapping, selecciona Last name y establece los App attributes en lastName
- Haz clic en Finish

Windsurf Enterprise ahora admite el inicio de sesión con SSO (inicio de sesión único) mediante SAML. Si tu organización usa Microsoft Entra ID (antes Azure AD), podrás usar SSO con Windsurf.


Windsurf solo admite SSO iniciado por SP; actualmente NO se admite SSO iniciado por IdP.
Parte 1: Crear una aplicación Enterprise en Microsoft Entra ID
Todos los pasos de esta sección se realizan en el centro de administración de Microsoft Entra ID.
- En Microsoft Entra ID, haz clic en Add y luego en Enterprise Application.

- Haz clic en Create your own application.

- Nombra tu aplicación Windsurf, selecciona Integrate any other application you don’t find in the gallery y luego haz clic en Create.

Parte 2: Configurar SAML y los atributos de usuario en Microsoft Entra ID
Todos los pasos de esta sección se realizan en el centro de administración de Microsoft Entra ID.
- En tu nueva aplicación de Windsurf, haz clic en Set up single sign on y luego en SAML.
- Haz clic en Edit en Basic SAML Configuration.
- Mantén esta pestaña de Entra ID abierta y abre una pestaña nueva para ir a los ajustes de SSO de Windsurf Teams en https://windsurf.com/team/settings.
-
En el formulario de configuración SAML de Microsoft Entra ID:
- Identifier (Entity ID): Copia el valor de SP Entity ID de la página de ajustes de SSO de Windsurf
- Reply URL (Assertion Consumer Service URL): Copia el valor de Callback URL de la página de ajustes de SSO de Windsurf
- Haz clic en Save en la parte superior
- Configura los atributos de usuario para mostrar correctamente el nombre. En Microsoft Entra ID, en Attributes & Claims, haz clic en Edit.
-
Crea 2 nuevos claims haciendo clic en Add new claim para cada uno:
- Primer claim: Name =
firstName, Source attribute =user.givenname - Segundo claim: Name =
lastName, Source attribute =user.surname
- Primer claim: Name =
Parte 3: Configurar los ajustes de SSO en el portal de Windsurf
Completa la configuración en el portal de Windsurf (https://windsurf.com/team/settings).
-
En la página de ajustes de SSO de Windsurf:
- Pick your SSO ID: Elige un identificador único para el portal de inicio de sesión de tu equipo (esto no se puede cambiar después)
- IdP Entity ID: Copia el valor de Microsoft Entra ID en Set up Windsurf → Microsoft Entra Identifier
- SSO URL: Copia el valor de Login URL de Microsoft Entra ID
- X509 Certificate: Descarga el SAML certificate (Base64) desde Microsoft Entra ID, abre el archivo y pega aquí el contenido de texto
- En el portal de Windsurf, haz clic en Enable Login with SAML y luego en Save.
- Prueba la configuración: Haz clic en Test Login para verificar que la configuración de SSO funcione como se espera.
Importante: No cierres sesión ni cierres la página de configuración de Windsurf hasta que hayas probado correctamente el inicio de sesión. Si la prueba falla, es posible que debas solucionar la configuración antes de continuar.
Windsurf Enterprise ahora admite el inicio de sesión con SSO (inicio de sesión único) mediante SAML. Si tu organización usa Microsoft Entra, Okta, Google Workspace u otro proveedor de identidad que admita SAML, podrás usar SSO con Windsurf.
Selecciona SAML 2.0 como método de inicio de sesión.
Establece el nombre de la aplicación como Windsurf (o cualquier otro nombre) y haz clic en Next.Configura los ajustes de SAML como:
En la sección de comentarios, selecciona “This is an internal app that we have created” y haz clic en Finish.
En este punto, todo debería haber quedado configurado y ahora puedes agregar usuarios a la nueva aplicación de Windsurf en Okta.Debes compartir la URL del portal de inicio de sesión personalizado de tu organización con tus usuarios y pedirles que inicien sesión mediante ese enlace.
Los usuarios que inicien sesión en Windsurf mediante SSO serán aprobados automáticamente en el equipo.
Esto indica que tu ID de SSO no es válido o que tu SSO URL es incorrecta. Asegúrate de que sea alfanumérica y que no tenga espacios adicionales ni caracteres no válidos. Vuelve a revisar los pasos de la guía y asegúrate de usar los valores correctos.
Esto indica que tu IdP Entity ID es inválido. Asegúrate de copiarlo correctamente desde el portal de Okta, sin caracteres adicionales ni espacios antes o después de la cadena.
Windsurf solo admite SSO iniciado por el SP; el SSO iniciado por el IdP NO es compatible actualmente.
Configurar la aplicación del IdP
Haz clic en Applications en la barra lateral izquierda y luego en Create App Integration.

- Single sign-on URL en https://auth.windsurf.com/__/auth/handler
- Audience URI (SP Entity ID) en www.codeium.com
- NameID format en EmailAddress
- Application username en Email

Registrar Okta como proveedor SAML
Deberías ser redirigido a la pestaña Sign on de tu aplicación SAML personalizada. Ahora tendrás que tomar la información de esta página y completarla en la configuración de SSO de Windsurf.- Abre https://windsurf.com/team/settings y haz clic en Configure SAML
- Copia el texto después de ‘Issuer’ en la página de la aplicación de Okta y pégalo en IdP Entity ID
- Copia el texto después de ‘Sign on URL’ en la página de la aplicación de Okta y pégalo en SSO URL
- Descarga el Signing Certificate y pégalo en X509 certificate
- Marca Enable Login with SAML y luego haz clic en Save
- Prueba el inicio de sesión con el botón Test Login. Deberías ver un mensaje de éxito:


Advertencias
Ten en cuenta que Windsurf actualmente no admite flujos de inicio de sesión iniciados por el IdP.Tampoco admitimos OIDC todavía.Solución de problemas
Login with SAML config failed: Firebase: Error (auth/operation-not-allowed)

Login with SAML config failed: Firebase: SAML Response <Issuer> mismatch. (auth/invalid-credential)

Failed to verify the signature in samlresponse
Esto indica que el valor de tu X509 certificate es incorrecto. Asegúrate de copiar la clave correcta y de que tenga el formato:Copiar
Preguntar a la IA
-----BEGIN CERTIFICATE-----
valor
------END CERTIFICATE------
Windsurf admite la sincronización SCIM (Sistema para la Gestión de Identidades entre Dominios) para usuarios y grupos con Microsoft Entra ID / Azure AD. No es necesario configurar SSO (inicio de sesión único) para usar la sincronización SCIM, pero se recomienda encarecidamente.Necesitarás:

En la página de configuración de Aprovisionamiento, selecciona las siguientes opciones.Modo de Aprovisionamiento: AutomáticoCredenciales de Administrador > URL del Tenant: https://server.codeium.com/scim/v2
Mantén abierta la página de aprovisionamiento de Azure, ahora ve al portal web de Windsurf y haz clic en el ícono de perfil en la barra de navegación en la parte superior de la página. En Configuración del equipo, selecciona Clave de servicio y haz clic en Agregar clave de servicio. Introduce cualquier nombre de clave (como ‘Aprovisionamiento SCIM (Sistema para la Gestión de Identidades entre Dominios) de Azure’), selecciona el rol “Aprovisionamiento SCIM (Sistema para la Gestión de Identidades entre Dominios)” que creaste anteriormente, y haz clic en Crear clave de servicio. Copia la clave generada, vuelve a la página de Azure y pégala en Token secreto.
(Lo que deberías ver después de crear la clave en Windsurf)En la página de Aprovisionamiento, haz clic en Probar Conexión y esto debería verificar la conexión SCIM (Sistema para la Gestión de Identidades entre Dominios).Ahora, arriba del formulario de Aprovisionamiento, haz clic en Guardar.
En Mapeos de atributos, elimina todos los campos bajo displayName, dejando solo los campos userName, active y displayName.
Para activarlo, ahora haz clic en Editar. En Expresión, modifica el campo aLuego haz clic en Aceptar.Los atributos de usuario deben verse así
En la página de Mapeo de Atributos, haz clic en Guardar en la parte superior y regresa a la página de Aprovisionamiento.Ahora haz clic en la misma página, en Asignaciones haz clic en Aprovisionar grupos de Microsoft Entra ID. Ahora solo haz clic en eliminar para externalId, y haz clic en Guardar en la parte superior. Regresa a la página de Aprovisionamiento.
En la página de Aprovisionamiento, en la parte inferior, también debería haber un interruptor de Estado de Aprovisionamiento. Actívalo para habilitar la sincronización SCIM (Sistema para la Gestión de Identidades entre Dominios). A partir de ese momento, cada 40 minutos se sincronizarán tus usuarios y grupos de la aplicación Entra ID con Windsurf.
Haz clic en Guardar para finalizar, ahora has habilitado la sincronización de usuarios y grupos para SCIM (Sistema para la Gestión de Identidades entre Dominios). Solo los usuarios y grupos asignados a la aplicación se sincronizarán con Windsurf. Ten en cuenta que eliminar usuarios solo desactiva su acceso a Windsurf (y evita que ocupen una licencia) en lugar de eliminar usuarios debido al diseño SCIM de Azure.
- Acceso de administrador a Microsoft Entra ID/Azure AD
- Acceso de administración a Windsurf
- Una aplicación existente de Windsurf en Entra ID (normalmente de tu aplicación de SSO existente)
Permisos requeridos para la Clave de servicioLa clave de servicio utilizada para el aprovisionamiento de SCIM (Sistema para la Gestión de Identidades entre Dominios) debe tener los siguientes permisos:
- Team User Read - Necesario para leer información de usuarios y grupos
- Team User Update - Necesario para crear y actualizar usuarios y grupos
- Team User Delete - Necesario para desactivar/eliminar usuarios y grupos
Paso 1: Crear un Rol con Permisos SCIM
Antes de configurar el aprovisionamiento SCIM (Sistema para la Gestión de Identidades entre Dominios), debes crear un rol con los permisos necesarios.- Ve a Windsurf Team Settings
- En «Other Settings», haz clic en Configure junto a Role Management
- Haz clic en Add Role y asígnale el nombre «SCIM Provisioning»
- Añade los siguientes permisos:
- Lectura de usuario del equipo
- Actualización de usuario del equipo
- Eliminación de usuario del equipo
- Haz clic en Guardar
Paso 2: Navega a la aplicación Windsurf existente
Ve a Microsoft Entra ID en Azure, haz clic en Aplicaciones empresariales en la barra lateral izquierda y luego haz clic en la aplicación Windsurf existente en la lista.
Paso 3: Configurar el aprovisionamiento SCIM
Haz clic en Comenzar bajo Provisionar Cuentas de Usuario en el medio (paso 3), y luego haz clic en Comenzar de nuevo.


Paso 4: Configurar el Aprovisionamiento SCIM
Después de hacer clic en Guardar, debería haber aparecido una nueva opción Asignaciones en la página de Aprovisionamiento. Expande Asignaciones y haz clic en Aprovisionar usuarios de Microsoft Entra ID

Copiar
Preguntar a la IA
NOT([IsSoftDeleted])



Windsurf admite la sincronización SCIM para usuarios y grupos con Okta. No es necesario configurar SSO (inicio de sesión único) para usar la sincronización SCIM, pero es muy recomendable.Necesitarás:
- Acceso de administrador a Okta
- Acceso de administrador a Windsurf
- Una aplicación de Windsurf existente en Okta (normalmente a partir de tu aplicación de SSO existente)
Paso 1: Navega a la aplicación de Windsurf existente
Ve a Okta, haz clic en Applications, Applications en la barra lateral izquierda y luego haz clic en la aplicación de Windsurf existente en la lista de aplicaciones.Paso 2: Habilita el aprovisionamiento SCIM
En la pestaña General, App Settings, haz clic en Edit en la parte superior derecha. Luego marca la casilla ‘Enable SCIM Provisioning’ y haz clic en Save. Debería haber aparecido una nueva pestaña de aprovisionamiento en la parte superior.Ahora ve a Provisioning, haz clic en Edit e introduce lo siguiente en los campos correspondientes:SCIM connector base URL: https://server.codeium.com/scim/v2Unique identifier field for users: emailSupported provisioning actions: Push New Users, Push Profile Updates, Push GroupsAuthentication Mode: HTTP HeaderPara HTTP Header - Authorization, puedes generar el token desde:- https://windsurf.com/team/settings y ve a Service Key Configuration
- Haz clic en Configure, luego en Add Service Key y asigna un nombre a tu clave de API
- Copia la clave de API, vuelve a Okta y pégala en HTTP Header - Authorization
Paso 3: Configura el aprovisionamiento
En la pestaña de aprovisionamiento, a la izquierda deberían aparecer dos nuevas secciones. Haz clic en To App y en Edit Provisioning to App. Marca las casillas Create Users, Update User Attributes y Deactivate Users, y haz clic en Save.Después de este paso, todos los usuarios asignados al grupo se sincronizarán con Windsurf.Paso 4: Configura el aprovisionamiento de grupos (opcional)
Para sincronizar grupos con Windsurf, tendrás que especificar qué grupos enviar. En la aplicación, haz clic en la pestaña Push Groups en la parte superior. Ahora haz clic en + Push Groups -> Find Groups by name. Filtra por el grupo que deseas agregar, asegúrate de que Push group memberships immediately esté marcado y luego haz clic en Save. El grupo se creará y los miembros del grupo se sincronizarán con Windsurf. Luego se podrán usar los grupos para filtrar las métricas de grupos en la página de Analytics.Esta guía muestra cómo crear y mantener grupos en Windsurf con la API de SCIM (Sistema para la Gestión de Identidades entre Dominios).Existen razones por las que se podría querer aprovisionar grupos manualmente en lugar de hacerlo con el Proveedor de Identidad (Azure/Okta). Las empresas pueden querer que los grupos se aprovisionen desde una fuente interna diferente (sitio web de RRHH, herramienta de gestión de código fuente, etc.) a la que Windsurf no tiene acceso, o las empresas pueden necesitar un control más granular sobre los grupos que el que proporciona su Proveedor de Identidad. Por lo tanto, los grupos se pueden crear mediante una API a través de solicitudes HTTP. A continuación se proporcionan ejemplos de solicitudes HTTP mediante CURL.Aquí hay 5 APIs principales: Crear Grupo, Agregar miembros del grupo, Reemplazar miembros del grupo, Eliminar Grupo y Listar Usuarios en un Grupo.Primero deberás crear al menos el grupo, y luego reemplazarlo para crear un grupo con miembros. También necesitarás codificar en URL los nombres de grupo si el nombre contiene caracteres especiales como espacios, por lo que un nombre de grupo como ‘Engineering Group’ deberá ser ‘Engineering%20Group’ en la URL.Ten en cuenta que los usuarios deben crearse en Windsurf (a través de SCIM o creando la cuenta manualmente) antes de poder agregarlos a un grupo.Crear un usuario:Actualizar nombre:
Crear Grupo
Copiar
Preguntar a la IA
curl -k -X POST https://server.codeium.com/scim/v2/Groups -d '{
"displayName": "<nombre del grupo>",
"schemas": ["urn:ietf:params:scim:schemas:core:2.0:Group"]
}' -H "Authorization: Bearer <clave secreta de API>" -H "Content-Type: application/scim+json"
Agregar Miembros del Grupo
Copiar
Preguntar a la IA
curl -X PATCH https://server.codeium.com/scim/v2/Groups/<nombre del grupo> -d '{"schemas": ["urn:ietf:params:scim:api:messages:2.0:PatchOp"],
"Operations":[
{
"op": "add",
"path":"members",
"value": [{"value": "<email 1>"}, {"value": "<email 2>"}]
}]}' -H "Authorization: Bearer <clave secreta de api>" -H "Content-Type: application/scim+json"
Reemplazar miembros del grupo
Copiar
Preguntar a la IA
curl -X PATCH https://server.codeium.com/scim/v2/Groups/<nombre del grupo> -d '{"schemas": ["urn:ietf:params:scim:api:messages:2.0:PatchOp"],
"Operations":[
{
"op": "replace",
"path":"members",
"value": [{"value": "<email 1>"}, {"value": "<email 2>"}]
}]}' -H "Authorization: Bearer <clave secreta de api>" -H "Content-Type: application/scim+json"
Eliminar Grupo
Copiar
Preguntar a la IA
curl -X DELETE https://server.codeium.com/scim/v2/Groups/<nombre del grupo> -H "Authorization: Bearer <clave secreta de la API>" -H "Content-Type: application/scim+json"
Lista de Grupos
Copiar
Preguntar a la IA
curl -X GET -H "Authorization: Bearer <clave secreta de API>" "https://server.codeium.com/scim/v2/Groups"
Listar Usuarios en un Grupo
Copiar
Preguntar a la IA
curl -X GET -H "Authorization: Bearer <clave secreta de API>" "https://server.codeium.com/scim/v2/Groups/<group_id>"
APIs de Usuario
También hay APIs para usuarios. Las siguientes son algunas de las APIs de SCIM (Sistema para la Gestión de Identidades entre Dominios) más comunes que admite Windsurf.Deshabilitar un usuario (Para habilitar, cambiar false por true):Copiar
Preguntar a la IA
curl -X PATCH \
https://server.codeium.com/scim/v2/Users/<clave de API del usuario> \
-H 'Content-Type: application/scim+json' \
-H 'Authorization: Bearer <clave secreta de API>' \
-d '{
"schemas": ["urn:ietf:params:scim:api:messages:2.0:PatchOp"],
"Operations": [
{
"op": "replace",
"path": "active",
"value": false
}
]
}'
Copiar
Preguntar a la IA
curl -X POST \
https://server.codeium.com/scim/v2/Users \
-H 'Content-Type: application/scim+json' \
-H 'Authorization: Bearer <clave secreta de API>' \
-d '{
"schemas": ["urn:ietf:params:scim:schemas:core:2.0:User"],
"userName": "<email>",
"displayName": "<nombre completo>",
"active": true,
}'
Copiar
Preguntar a la IA
curl -X PATCH \
'https://<enterprise portal url>/_route/api_server/scim/v2/Users/<user api key>' \
-H 'Authorization: Bearer <clave de servicio>' \
-H 'Content-Type: application/scim+json' \
-d '{
"schemas": ["urn:ietf:params:scim:api:messages:2.0:PatchOp"],
"Operations": [
{
"op": "Replace",
"path": "displayName",
"value": "<nuevo nombre>"
}
]
}'
Creando una Clave Secreta de API
Ve a https://windsurf.com/team/settings. En Configuración de Clave de Servicio, haz clic en Agregar Clave de Servicio. Ingresa cualquier nombre de clave (como ‘Clave de Aprovisionamiento de Azure’) y haz clic en Crear Clave de Servicio. Copia la clave generada y guárdala; ahora puedes usar la clave para autorizar las API mencionadas anteriormente.Requisitos previos
Esta guía asume que tienes Duo configurado y que actúa como tu IdP organizacional, o que tienes un IdP externo configurado.Necesitarás acceso de administrador tanto a las cuentas de Duo como de Windsurf.Configurar Duo para Windsurf
- Ve a Applications y agrega un proveedor de servicios SAML genérico.

- Ve a SSO en Team Settings.

- Al habilitar SAML por primera vez, se te pedirá que configures tu ID de SSO. No podrás cambiarlo más adelante. Se recomienda establecerlo con el nombre de tu organización o equipo usando solo caracteres alfanuméricos.
-
Copia el valor de
Entity IDdel portal de Duo y pégalo en el campoIdP Entity IDen el portal de Windsurf. -
Copia el valor de
Single Sign-On URLdel portal de Duo y pégalo en el campoSSO URLen el portal de Windsurf. -
Copia el valor del certificado del portal de Duo y pégalo en el campo
X509 Certificateen el portal de Windsurf.

-
Copia el valor de
SP Identity IDdel portal de Windsurf y pégalo en el campoEntity IDen el portal de Duo. -
Copia la
Callback URL (Assertion Consumer Service URL)del portal de Windsurf y pégala en el campoAssertion Consumer Service (ACS) URLen el portal de Duo. - En el portal de Duo, configura las declaraciones de atributos como se indica a continuación:

- Habilita el inicio de sesión SAML en el portal de Windsurf para poder probarlo.
- Una vez que la prueba se complete correctamente, puedes cerrar sesión. Ahora puedes usar el inicio de sesión con SSO al ir a la página de tu equipo/organización con el ID de SSO que configuraste en el paso 3.
Prerrequisitos
Esta guía asume que tienes PingID configurado y que actúa como tu IdP organizacional, o que tienes un IdP externo configurado.Necesitarás acceso de administrador tanto a las cuentas de PingID como de Windsurf.Configurar PingID para Windsurf
- Ve a Applications y agrega Windsurf como una SAML Application

- Ve a SSO en Team Settings

- Al habilitar SAML por primera vez, se te pedirá configurar tu SSO ID. No podrás cambiarlo después.
- En PingID, elige ingresar la configuración manualmente y completa los campos con los siguientes valores:
- ACS URLs: este es el
Callback URL (Assertion Consumer Service URL)del portal de Windsurf. - Entity ID: este es el
SP Entity IDdel portal de Windsurf.

-
Copia el
Issuer IDde PingID en el valorIdP Entity IDdel portal de Windsurf. -
Copia el valor
Single Signon Servicede PingID en el valorSSO URLdel portal de Windsurf. -
Descarga el Signing Certificate desde PingID como X509 PEM (.crt), abre el archivo y copia su contenido en el valor
X509 Certificatedel portal de Windsurf.
- En attribute mappings, asegúrate de mapear:
saml_subject- Email AddressfirstName- Given NamelastName- Family Name

- Agrega/edita cualquier otra política y acceso según lo requiera tu configuración/organización.
- Habilita el inicio de sesión SAML en el portal de Windsurf para poder probarlo.
- Una vez que la prueba se complete correctamente, puedes cerrar sesión. Ahora puedes usar el inicio de sesión con SSO al navegar a la página de tu equipo/organización con el SSO ID que configuraste en el paso 3.