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.
Questa funzionalità è disponibile solo per gli utenti Enterprise.
Questa funzionalità non è disponibile per i piani Cognition Platform. Per Cognition Platform, SSO deve invece essere configurato e gestito nelle impostazioni di Cognition Platform.
- SSO di Google
- Microsoft Entra ID
- SSO di Okta
- Azure SCIM
- Okta SCIM
- API SCIM
- Duo
- PingID
Devin Desktop ora supporta l’accesso tramite Single Sign-On (SSO) via SAML. Se la tua organizzazione usa Microsoft Entra, Okta, Google Workspace o un altro provider di identità che supporta SAML, potrai usare SSO con Devin Desktop.
Fai clic su Add app, quindi su Add custom SAML app.
Compila App name con 
Nella pagina delle impostazioni di Codeium, fai clic su Enable Login with SAML, quindi su Save. Assicurati poi di fare clic su Test Login per verificare che l’accesso funzioni come previsto. Da questo momento, l’accesso SSO sarà obbligatorio per tutti gli utenti.
Devin Desktop supporta solo l’SSO avviato da SP; l’SSO avviato da IDP NON è attualmente supportato.
Configurare l’applicazione IDP
Nella console di amministrazione Google (admin.google.com), fai clic su Apps -> Web and mobile apps a sinistra.

Windsurf, quindi fai clic su Next.La schermata successiva (Google Identity Provider details) nella console di Google contiene i dati che dovrai copiare nelle impostazioni SSO di Devin Desktop su https://windsurf.com/team/settings.- Copia SSO URL dalla console di Google nelle impostazioni di Devin Desktop, nel campo SSO URL
- Copia Entity ID dalla console di Google nelle impostazioni di Devin Desktop, nel campo Idp Entity ID
- Copia Certificate dalla console di Google nelle impostazioni di Devin Desktop, nel campo X509 Certificate
- Fai clic su Continue nella console di Google
- Copia Callback URL dalla pagina delle impostazioni di Codeium nella console di Google, nel campo ACS URL
- Copia SP Entity ID dalla pagina delle impostazioni di Codeium nella console di Google, nel campo SP Entity ID
- Imposta il formato di Name ID su EMAIL
- Fai clic su Continue nella console di Google
- Fai clic su Add Mapping, seleziona First name e imposta App attributes su firstName
- Fai clic su Add Mapping, seleziona Last name e imposta App attributes su lastName
- Fai clic su Finish

Devin Desktop Enterprise ora supporta l’accesso tramite Single Sign-On (SSO) via SAML. Se la tua organizzazione usa Microsoft Entra ID (in precedenza Azure AD), potrai usare l’SSO con Devin Desktop.


Devin Desktop supporta solo l’SSO avviato da SP; l’SSO avviato da IDP al momento NON è supportato.
Parte 1: Creare un’applicazione Enterprise in Microsoft Entra ID
Tutti i passaggi in questa sezione vengono eseguiti nel centro di amministrazione di Microsoft Entra ID.
- In Microsoft Entra ID, fai clic su Add, quindi su Enterprise Application.

- Fai clic su Create your own application.

- Assegna alla tua applicazione il nome Devin Desktop, seleziona Integrate any other application you don’t find in the gallery, quindi fai clic su Create.

Parte 2: Configurare SAML e gli attributi utente in Microsoft Entra ID
Tutti i passaggi in questa sezione vengono eseguiti nel centro di amministrazione di Microsoft Entra ID.
- Nella tua nuova applicazione Devin Desktop, fai clic su Set up single sign on, quindi su SAML.
- Fai clic su Edit in Basic SAML Configuration.
- Lascia aperta questa scheda di Entra ID e apri una nuova scheda per accedere alle impostazioni SSO di Devin Desktop Teams all’indirizzo https://windsurf.com/team/settings.
-
Nel modulo di configurazione SAML di Microsoft Entra ID:
- Identifier (Entity ID): copia il valore SP Entity ID dalla pagina delle impostazioni SSO di Devin Desktop
- Reply URL (Assertion Consumer Service URL): copia il valore Callback URL dalla pagina delle impostazioni SSO di Devin Desktop
- Fai clic su Save in alto
- Configura gli attributi utente per visualizzare correttamente il nome. In Microsoft Entra ID, in Attributes & Claims, fai clic su Edit.
-
Crea 2 nuovi claim facendo clic su Add new claim per ciascuno:
- Primo claim: Name =
firstName, Source attribute =user.givenname - Secondo claim: Name =
lastName, Source attribute =user.surname
- Primo claim: Name =
Parte 3: Configurare le impostazioni SSO nel portale Devin Desktop
Completa la configurazione nel portale Devin Desktop (https://windsurf.com/team/settings).
-
Nella pagina delle impostazioni SSO di Devin Desktop:
- Pick your SSO ID: scegli un identificatore univoco per il portale di accesso del tuo team (non potrà essere modificato in seguito)
- IdP Entity ID: copia il valore da Microsoft Entra ID in Set up Devin Desktop → Microsoft Entra Identifier
L’URL dell’IdP Entity ID deve terminare con una
/finale (ad es.,https://sts.windows.net/{tenant-id}/). Se l’URL non include la barra finale, aggiungila manualmente. - SSO URL: copia il valore Login URL da Microsoft Entra ID
- X509 Certificate: scarica il SAML certificate (Base64) da Microsoft Entra ID, apri il file e incollane qui il contenuto testuale
- Nel portale Devin Desktop, fai clic su Enable Login with SAML, quindi su Save.
- Testa la configurazione: fai clic su Test Login per verificare che la configurazione SSO funzioni come previsto.
Importante: non disconnetterti e non chiudere la pagina delle impostazioni di Devin Desktop finché non hai testato correttamente l’accesso. Se il test non riesce, potresti dover risolvere i problemi di configurazione prima di procedere.
Devin Desktop Enterprise ora supporta l’accesso con Single Sign-On (SSO) tramite SAML. Se la tua organizzazione usa Microsoft Entra, Okta, Google Workspaces o un altro provider di identità che supporta SAML, potrai usare SSO con Devin Desktop.
Seleziona SAML 2.0 come metodo di accesso
Imposta come nome dell’app Devin Desktop (o qualsiasi altro nome), quindi fai clic su NextConfigura le impostazioni SAML come segue
Nella sezione feedback, seleziona “This is an internal app that we have created”, quindi fai clic su Finish.
A questo punto dovrebbe essere tutto configurato e ora puoi aggiungere utenti alla nuova applicazione Okta di Devin Desktop.Dovresti condividere con i tuoi utenti l’URL personalizzato del portale di accesso della tua organizzazione e chiedere loro di accedere tramite quel collegamento.
Gli utenti che accedono a Devin Desktop tramite SSO saranno approvati automaticamente nel team.
Questo indica che il tuo SSO ID non è valido oppure che l’URL SSO è errato; assicurati che sia alfanumerico e che non contenga spazi aggiuntivi o caratteri non validi. Ricontrolla i passaggi della guida e assicurati di usare i valori corretti.
Questo indica che il tuo IdP Entity ID non è valido; assicurati di copiarlo correttamente dal portale Okta, senza caratteri o spazi aggiuntivi prima o dopo la stringa.
Devin Desktop supporta solo l’SSO avviato da SP; l’SSO avviato da IDP NON è attualmente supportato.
Configurare l’applicazione IDP
Fai clic su Applications nella barra laterale sinistra, quindi su Create App Integration

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

Registrare Okta come provider SAML
Dovresti essere reindirizzato alla scheda Sign on della tua applicazione SAML personalizzata. A questo punto, dovrai prendere le informazioni presenti in questa pagina e inserirle nelle impostazioni SSO di Devin Desktop.- Apri https://windsurf.com/team/settings e fai clic su Configure SAML
- Copia il testo dopo ‘Issuer’ nella pagina dell’applicazione Okta e incollalo in Idp Entity ID
- Copia il testo dopo ‘Sign on URL’ nella pagina dell’applicazione Okta e incollalo in SSO URL
- Scarica il Signing Certificate e incollalo in X509 certificate
- Seleziona Enable Login with SAML, quindi fai clic su Save
- Verifica l’accesso con il pulsante Test Login. Dovresti vedere un messaggio di conferma:


Avvertenze
Tieni presente che Devin Desktop al momento non supporta i flussi di accesso avviati da IDP.Inoltre, non supportiamo ancora OIDC.Risoluzione dei problemi
Login with SAML config failed: Firebase: Error (auth/operation-not-allowed)

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

Impossibile verificare la firma in samlresponse
Questo indica che il valore del tuo certificato X509 non è corretto; assicurati di copiare la chiave corretta e che sia formattata come:-----BEGIN CERTIFICATE-----
value
------END CERTIFICATE------
Devin Desktop supporta la sincronizzazione SCIM per utenti e gruppi con Microsoft Entra ID / Azure AD. Non è necessario configurare l’SSO (Single Sign-On) per utilizzare la sincronizzazione SCIM, ma è vivamente consigliato.Avrai bisogno di:

Nella pagina di configurazione del provisioning, selezionare le opzioni seguenti.Modalità di provisioning: AutomaticaAdmin Credentials > Tenant URL: https://server.codeium.com/scim/v2
Lascia aperta la pagina di provisioning di Azure, vai al portale web Devin Desktop e fai clic sull’icona del profilo nella barra di navigazione in cima alla pagina. In Team Settings, seleziona Service Key e fai clic su Add Service Key. Inserisci un nome qualsiasi per la chiave (ad esempio ‘Azure SCIM Provisioning’), seleziona il ruolo “SCIM Provisioning” creato in precedenza, quindi fai clic su Create Service Key. Copia la chiave generata, torna alla pagina di Azure e incollala nel campo Secret Token.
(Cosa dovresti vedere dopo aver creato la key su Devin Desktop)Nella pagina Provisioning, fare clic su Test Connection: la connessione SCIM dovrebbe risultare verificata.Ora, nella parte superiore del form di provisioning, fare clic su Save.
Nella sezione Mappature attributi, eliminare tutti i campi sotto displayName, lasciando solo i campi userName, active e displayName.
Per active, fare clic su Edit. In Expression, modificare il campo inQuindi fare clic su Ok.Gli attributi utente dovrebbero essere simili a
Nella pagina Attribute Mapping, fare clic su Save in alto e tornare alla pagina Provisioning.Nella stessa pagina, sotto Mappings fare clic su Provision Microsoft Entra ID Groups. Fare clic su delete solo per externalId, quindi fare clic su Save in alto. Tornare alla pagina Provisioning.
Nella parte inferiore della pagina Provisioning dovrebbe essere presente anche un toggle Stato provisioning. Impostarlo su On per abilitare la sincronizzazione SCIM. Da questo momento, ogni 40 minuti gli utenti e i gruppi dell’applicazione Entra ID verranno sincronizzati con Devin Desktop.
Fare clic su Save per completare l’operazione: la sincronizzazione di utenti e gruppi tramite SCIM è ora abilitata. Solo gli utenti e i gruppi assegnati all’applicazione verranno sincronizzati con Devin Desktop. Tieni presente che la rimozione degli utenti ne disabilita soltanto l’accesso a Devin Desktop (e impedisce loro di occupare un seat), senza eliminarli, a causa del design SCIM di Azure.
- Accesso amministratore a Microsoft Entra ID / Azure AD
- Accesso amministrativo a Devin Desktop
- Un’applicazione desktop Devin già esistente in Entra ID (di norma dalla tua applicazione SSO esistente)
Autorizzazioni richieste per la chiave di servizioLa chiave di servizio usata per il provisioning SCIM deve avere le seguenti autorizzazioni:
- Team User Read - Necessaria per leggere le informazioni su utenti e gruppi
- Team User Update - Necessaria per creare e aggiornare utenti e gruppi
- Team User Delete - Necessaria per disattivare/eliminare utenti e gruppi
Passaggio 1: Creare un ruolo con autorizzazioni SCIM
Prima di configurare il provisioning SCIM, è necessario creare un ruolo con le autorizzazioni necessarie.- Vai a Windsurf Team Settings
- In “Other Settings”, fai clic su Configura accanto a Gestione dei ruoli
- Fai clic su Aggiungi ruolo e assegnagli il nome “SCIM Provisioning”
- Aggiungi le seguenti autorizzazioni:
- Visualizzazione dell’utente del team
- Aggiornamento dell’utente del team
- Eliminazione dell’utente del team
- Fai clic su Save
Passaggio 2: Accedere all’applicazione desktop Devin esistente
Vai a Microsoft Entra ID su Azure, fai clic su Enterprise applications nella barra laterale sinistra, quindi fai clic sull’applicazione Devin Desktop esistente nell’elenco.
Passaggio 3: Configurazione del provisioning SCIM
Fare clic su Get started sotto Provision User Accounts al centro (passaggio 3), quindi fare nuovamente clic su Get started.


Passaggio 4: Configurare il provisioning SCIM
Dopo aver fatto clic su Save, nella pagina Provisioning dovrebbe essere comparsa una nuova opzione Mappings. Espandere Mappings e fare clic su Provision Microsoft Entra ID Users

NOT([IsSoftDeleted])



Devin Desktop supporta la sincronizzazione SCIM di utenti e gruppi con Okta. Non è necessario configurare l’SSO per usare la sincronizzazione SCIM, ma è vivamente consigliato.Ti serviranno:
- accesso Admin a Okta
- accesso Admin a Devin Desktop
- un’applicazione Devin Desktop già esistente in Okta (di norma quella della tua applicazione SSO esistente)
Passaggio 1: vai all’applicazione Devin Desktop esistente
Vai in Okta, fai clic su Applications, poi su Applications nella barra laterale sinistra, quindi fai clic sull’applicazione Devin Desktop esistente nell’elenco delle applicazioni.Passaggio 2: abilita il provisioning SCIM
Nella scheda general, in App Settings fai clic su Edit in alto a destra. Quindi seleziona la casella ‘Enable SCIM Provisioning’, poi fai clic su Save. In alto dovrebbe comparire una nuova scheda provisioning.Ora vai in provisioning, fai clic su Edit e inserisci i seguenti valori nei campi: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 HeaderPer HTTP Header - Authorization, puoi generare il token da:- https://windsurf.com/team/settings e vai a Service Key Configuration
- Fai clic su Configure, poi su Add Service Key, e assegna un nome alla tua API key
- Copia l’API key, torna in Okta e incollala in HTTP Header - Authorization
Passaggio 3: configura il provisioning
Nella scheda provisioning, sulla sinistra dovrebbero esserci due nuove schede. Fai clic su To App, quindi su Edit Provisioning to App. Seleziona le caselle Create Users, Update User Attributes e Deactivate Users, quindi fai clic su Save.Dopo questo passaggio, tutti gli utenti assegnati al gruppo verranno sincronizzati con Devin Desktop.Passaggio 4: configura il provisioning dei gruppi (facoltativo)
Per sincronizzare i gruppi con Devin Desktop, dovrai specificare quali gruppi inviare. Nell’applicazione, fai clic sulla scheda Push Groups in alto. Ora fai clic su + Push Groups -> Find Groups by name. Filtra il gruppo che vuoi aggiungere, assicurati che Push group memberships immediately sia selezionato, quindi fai clic su Save. Il gruppo verrà creato e i membri del gruppo verranno sincronizzati con Devin Desktop. I gruppi possono poi essere usati per filtrare le analytics di gruppo nella pagina analytics.Questa guida illustra come creare e gestire i group in Devin Desktop tramite l’API SCIM.Ci sono casi in cui si preferisce effettuare il provisioning dei gruppi manualmente anziché tramite il proprio provider di identità (Azure/Okta). Le aziende potrebbero voler eseguire il provisioning dei Groups da una fonte interna diversa (sito HR, strumento di gestione del codice sorgente, ecc.) a cui Devin Desktop non ha accesso, oppure potrebbero aver bisogno di un controllo più granulare sui Groups rispetto a quanto offerto dal proprio provider di identità. I Groups possono quindi essere creati tramite API con una richiesta HTTP. Di seguito sono riportati esempi della richiesta HTTP tramite CURL.In questa sezione sono disponibili 5 API principali: Create Group, Add group members, Replace group members, Delete Group e List Users in a Group.È necessario creare prima il gruppo, quindi sostituire group per creare un gruppo con membri al suo interno. Sarà inoltre necessario eseguire la codifica URL dei nomi dei gruppi se il nome del gruppo contiene un carattere speciale come lo spazio; ad esempio, un nome gruppo come ‘Engineering Group’ dovrà essere ‘Engineering%20Group’ nell’URL.Tieni presente che gli utenti devono essere creati in Devin Desktop (tramite SCIM o creando manualmente l’account) prima di poter essere aggiunti a un gruppo.Disabilita l’accesso CLI per un utente (imposta L’attributo Aggiorna nome:
Crea gruppo
curl -k -X POST https://server.codeium.com/scim/v2/Groups -d '{
"displayName": "<group name>",
"schemas": ["urn:ietf:params:scim:schemas:core:2.0:Group"]
}' -H "Authorization: Bearer <api secret key>" -H "Content-Type: application/scim+json"
Aggiungi membri al gruppo
curl -X PATCH https://server.codeium.com/scim/v2/Groups/<group name> -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 <api secret key>" -H "Content-Type: application/scim+json"
Sostituisci i membri del gruppo
curl -X PATCH https://server.codeium.com/scim/v2/Groups/<group name> -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 <api secret key>" -H "Content-Type: application/scim+json"
Elimina gruppo
curl -X DELETE https://server.codeium.com/scim/v2/Groups/<group name> -H "Authorization: Bearer <api secret key>" -H "Content-Type: application/scim+json"
Elenca gruppo
curl -X GET -H "Authorization: Bearer <api secret key>" "https://server.codeium.com/scim/v2/Groups"
Elencare gli utenti in un gruppo
curl -X GET -H "Authorization: Bearer <api secret key>" "https://server.codeium.com/scim/v2/Groups/<group_id>"
API utente
Sono disponibili anche API per gli utenti. Di seguito sono elencate alcune delle API SCIM più comuni supportate da Devin Desktop.Disabilita un utente (per abilitarlo, sostituisci false con true):curl -X PATCH \
https://server.codeium.com/scim/v2/Users/<user api key> \
-H 'Content-Type: application/scim+json' \
-H 'Authorization: Bearer <api secret key>' \
-d '{
"schemas": ["urn:ietf:params:scim:api:messages:2.0:PatchOp"],
"Operations": [
{
"op": "replace",
"path": "active",
"value": false
}
]
}'
cliActive su true per riabilitarlo):curl -X PATCH \
https://server.codeium.com/scim/v2/Users/<user api key> \
-H 'Content-Type: application/scim+json' \
-H 'Authorization: Bearer <api secret key>' \
-d '{
"schemas": ["urn:ietf:params:scim:api:messages:2.0:PatchOp"],
"Operations": [
{
"op": "replace",
"path": "cliActive",
"value": false
}
]
}'
cliActive controlla se un utente può accedere a Devin CLI. È indipendente dall’attributo active — disabilitare l’accesso alla CLI non influisce sul seat dell’utente né sull’accesso agli altri prodotti Devin Desktop. Se cliActive non è impostato per un utente, si applica la policy di accesso alla CLI predefinita del team.Crea un utente:curl -X POST \
https://server.codeium.com/scim/v2/Users \
-H 'Content-Type: application/scim+json' \
-H 'Authorization: Bearer <api secret key>' \
-d '{
"schemas": ["urn:ietf:params:scim:schemas:core:2.0:User"],
"userName": "<email>",
"displayName": "<full name>",
"active": true
}'
curl -X PATCH \
'https://<enterprise portal url>/_route/api_server/scim/v2/Users/<user api key>' \
-H 'Authorization: Bearer <service key>' \
-H 'Content-Type: application/scim+json' \
-d '{
"schemas": ["urn:ietf:params:scim:api:messages:2.0:PatchOp"],
"Operations": [
{
"op": "Replace",
"path": "displayName",
"value": "<new name>"
}
]
}'
Creazione di una chiave API segreta
Vai su https://windsurf.com/team/settings. Nella sezione Service Key Configuration, fai clic su Add Service Key. Inserisci un nome a piacere per la chiave (ad esempio ‘Azure Provisioning Key’) e fai clic su Create Service Key. Copia la chiave generata e salvala: potrai usarla per autorizzare le API indicate sopra.Prerequisiti
Questa guida presuppone che Duo sia configurato e agisca come IdP della tua organizzazione, oppure che sia configurato un IdP esterno.Ti servirà l’accesso da amministratore sia all’account Duo sia all’account Devin Desktop.Configura Duo per Devin Desktop
- Vai su Applications e aggiungi un service provider SAML generico

- Vai su SSO in Team Settings

- Quando abiliti SAML per la prima volta, dovrai configurare il tuo ID SSO. Non potrai più modificarlo in seguito. Ti consigliamo di impostarlo usando il nome della tua organizzazione o del tuo team, con soli caratteri alfanumerici.
-
Copia il valore
Entity IDdal portale Duo e incollalo nel campoIdP Entity IDnel portale Devin Desktop. -
Copia il valore
Single Sign-On URLdal portale Duo e incollalo nel campoSSO URLnel portale Devin Desktop. -
Copia il valore del certificato dal portale Duo e incollalo nel campo
X509 Certificatenel portale Devin Desktop

-
Copia il valore
SP Identity IDdal portale Devin Desktop e incollalo nel campoEntity IDnel portale Duo. -
Copia il valore
Callback URL (Assertion Consumer Service URL)dal portale Devin Desktop e incollalo nel campoAssertion Consumer Service (ACS) URLnel portale Duo. - Nel portale Duo, configura le istruzioni sugli attributi come segue:

- Abilita il login SAML nel portale Devin Desktop in modo da poterlo testare.
- Una volta completato con successo il test, puoi disconnetterti. Ora puoi usare l’accesso tramite SSO quando visiti la pagina del tuo team/della tua organizzazione con l’ID SSO che hai configurato nel passaggio 3.
Prerequisiti
Questa guida presuppone che PingID sia configurato e che funga da provider di identità (IdP) per la tua organizzazione, oppure che sia configurato un IdP esterno.Avrai bisogno di accesso come amministratore sia a PingID sia agli account Devin Desktop.Configura PingID per Devin Desktop
- Vai su Applications e aggiungi Devin Desktop come applicazione SAML

- Vai a SSO in Team Settings

- Quando abiliti SAML per la prima volta, dovrai configurare il tuo ID SSO. Non potrai più modificarlo in seguito.
- In PingID, scegli di inserire manualmente la configurazione e compila i campi con i seguenti valori:
- ACS URLs - questo è il
Callback URL (Assertion Consumer Service URL)del portale Devin Desktop. - Entity ID - questo è lo
SP Entity IDdel portale Devin Desktop.

-
Copia l’
Issuer IDda PingID nel valoreIdP Entity IDdel portale Devin Desktop. -
Copia il valore
Single Signon Serviceda PingID nel valoreSSO URLdel portale Devin Desktop. -
Scarica il certificato di firma da PingID come X509 PEM (.crt), apri il file e copia il contenuto nel valore
X509 Certificatedel portale Devin Desktop.
- Nelle mappature degli attributi, assicurati di mappare:
saml_subject- Indirizzo emailfirstName- NomelastName- Cognome

- Aggiungi/modifica eventuali altre policy e accessi in base alla tua configurazione/organizzazione
- Abilita l’accesso SAML nel portale Devin Desktop in modo da poterlo testare.
- Una volta completato con successo il test, puoi disconnetterti. Ora puoi usare l’accesso tramite SSO quando visiti la pagina del tuo team/della tua organizzazione con l’ID SSO che hai configurato al passaggio 3.
