Introduzione
Questo articolo descrive come configurare l’integrazione fra Docebo e SAML utilizzando il processo di configurazione smart. Questa opzione di configurazione è il default per le piattaforme attivate dopo il 25 Febbraio 2020, e per le piattaforme che hanno attivato l'app SAML dopo il 25 Febbraio 2020. Ulteriori informazioni sulle opzioni disponibili per configurare l’integrazione di SAML con Docebo.
Attivando l’App SAML in Docebo, gli utenti potranno connettersi alla piattaforma utilizzando le credenziali delle sessioni attive in altre piattaforme web. Questo articolo è una guida all’attivazione e alla configurazione dell’app utilizzando la procedura di configurazione Smart.
Attenzione: Per evitare configurazioni non corrette di SAML, a partire dal mese di Aprile 2018 Docebo ha attivato un blocker. Se la connessione continua a saltare, uno stopper mostrerà una pagina di errore, e il browser che ha iniziato il loop non sarà utilizzabile per un’ora.
Configurare SAML utilizzando Google, Microsoft Entra ID (Azure AD) e OneLogin Se si desidera configurare SAML utilizzando Google, Microsoft Entra ID (Azure AD) o OneLogin, fare riferimento agli esempi di configurazione step-by-step: Inoltre, quando si configura SAML, è necessario definire il parametro Assertion Encryption a Unencrypted.
Attivare l’app SAML
Attivare l'app SAML come descritto nell'articolo della knowledge base dedicato alla gestione di applicazioni e funzionalità. L'app si trova nella tab Single Sign On.
Dopo l’attivazione è possibile iniziare la configurazione. Fare riferimento alla sezione che segue per ulteriori informazioni.
Configurare l’app SAML con il processo di configurazione smart
Iniziare la configurazione accedendo al Menu Amministrazione dall’icona ingranaggio in alto a destra. Individuare la sezione dedicata a SAML e cliccare Impostazioni per accedere alla pagina di configurazione. Selezionare l’opzione Smart Configuration nella sezione Attiva. Questa opzione non è abilitata al momento dell’attivazione dell’app in piattaforma ma è necessario abilitarla per procedere con la configurazione dell’app in piattaforma.
Inserire l’URL del SSO nel campo di testo della sezione URL SSO, e l’Issuer nel campo di testo nella sezione Issuer. Entrambi i campi sono obbligatori. Se necessario, chiedere al proprio manager IT di fornire queste informazioni necessarie per autenticare l’app con l’Identity Provider.
Certificato x509
Caricare il certificato X509 selezionando Carica Certificato all’interno della sezione Certificato X509. Il certificato X509 è obbligatorio per la configurazione. Al caricamento del certificato, la piattaforma valida la chiave pubblica che si sta caricando. Una volta completato il caricamento, sarà visualizzato un messaggio nella sezione Certificato X509 a conferma della validità (o mancata validità) del certificato caricato. Premere Visualizza Dettagli per maggiori informazioni sulla lettura e la validazione del certificato da parte di Docebo, incluso lo stato della validità e le date di scadenza. Se Docebo non riesce a validare il certificato, non sarà possibile procedere con la configurazione.
Attenzione! La piattaforma utilizza in automatico le date di scadenza del certificato X509 caricato per inviare a tutti i Superadmin della piattaforma le notifiche obbligatorie riguardanti gli aggiornamenti necessari per la configurazione SAML (30, 15, 5 e un giorno prima della scadenza del certificato). Le notifiche non possono essere modificate né disabilitate. In questo modo, è possibile aggiornare la configurazione di SAML prima della sua scadenza, così che il login degli utenti in piattaforma non venga bloccato. Se l'app Extended Enterprise è attiva in piattaforma, le notifiche saranno inviate al dominio principale, e a tutti i sottodomini.
Service provider signing
A questo punto, premere Carica File per caricare il File Chiave Privata (PEM) e il File Certificato (CRT) nella sezione Service Provider Signing utilizzando il pulsante Carica File. Questa azione non è obbligatoria all’interno della configurazione, ma è necessario caricare questi certificati se si vuole utilizzare la funzionalità di single logout (SLO).
È obbligatorio caricare entrambi i file. È necessario caricare sia il file PEM sia il file CRT. Nessuno di questi file contiene informazioni aggiuntive (il primo include soltanto la chiave privata e il secondo soltanto il certificato), altrimenti si riceverà un messaggio di errore durante la configurazione dell’app. Esempio di certificato in formato PEM e esempio di file private key in formato PEM. Esempio di certificato in formato PEM:
-----BEGIN CERTIFICATE----- MIIEJDCCAwygAwIBAgIJAKZrejX6JSfmMA0GCSqGSIb3DQEBBQUAMGkxCzAJBgNV BAYTAklUMQ4wDAYDVQQIEwVJdGFseTEOMAwGA1UEBxMFTWlsYW4xDzANBgNVBAoT BkRvY2VibzELMAkGA1UECxMCSVQxHDAaBgNVBAMTE3Rlc3QuZG9jZWJvc2Fhcy5j b20wHhcNMTcwMTE5MTQzNzI3WhcNMTgwMTE5MTQzNzI3WjBpMQswCQYDVQQGEwJJ VDEOMAwGA1UECBMFSXRhbHkxDjAMBgNVBAcTBU1pbGFuMQ8wDQYDVQQKEwZEb2Nl Ym8xCzAJBgNVBAsTAklUMRwwGgYDVQQDExN0ZXN0LmRvY2Vib3NhYXMuY29tMIIB IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwS2ucXntCD59zCC27PCMr3+o HGaqIv1m9GkNf/I0CiX/hvlYUwzWy7UP91ccLSTvJYF4917WWxhN8HBqBNYCwiOo PkdFUXC0VF6Fxc6ti33thKqi7u8uR+ZwFTjdaeW9mJQt9qC1bdlvvbo0fmTbrcUC 5/975USpejfxtMLX4znX3DkcxD5gdBE3kgwwZmlchkSYSWngxBIbs6HtCvsVx1hE QjiPPClWO6U3+Ho5Lb981JNVvaRVWzbcE8osE7Ogt0j7R5PNkvgFtJttPAEjZZBa 4CDM2IXRJahrF5Kyk4BWukehSn2Kw7C/lf5SD2n0tFiiqHdK8mLvQEC0h+gJ2wID AQABo4HOMIHLMB0GA1UdDgQWBBTcGhjhW6mD31Cox6ftIxjERuYj6TCBmwYDVR0j BIGTMIGQgBTcGhjhW6mD31Cox6ftIxjERuYj6aFtpGswaTELMAkGA1UEBhMCSVQx DjAMBgNVBAgTBUl0YWx5MQ4wDAYDVQQHEwVNaWxhbjEPMA0GA1UEChMGRG9jZWJv MQswCQYDVQQLEwJJVDEcMBoGA1UEAxMTdGVzdC5kb2NlYm9zYWFzLmNvbYIJAKZr ejX6JSfmMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBAEU2JOtj60v3 1wIX7iIUwMM2UsbE52ZOAM+xRSUIJoDJvuvcNNT45fNCAz5V5HTjyhZvd81bJ/8r 8AT47YYHO2ngWxKWklbRdvWuDhwvEFulUnVt5DcVVGy3JgH98hIBNTf+BMDGkm1z HviID1Zuaa5KByCKTbr2ib2nVLDqdJMvPyT8yaWd5VQxb4F5WqUz8EjS12KtLnHc 4Uh51/fJA8StUyADaeb74Uj/e/0/XIvsOIGUuBzhF3dfPBGWXCwTAbQmSaqk/B3n wAUznTV6BahfIeZJz5PmI7VEkw+3AdGwwhxrGPxcKHXf/5yDyPdjOOuYsDXAV54n PnHnWAxctA0= -----END CERTIFICATE------ Esempio di chiave privata in formato PEM:
-----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEAwS2ucXntCD59zCC27PCMr3+oHGaqIv1m9GkNf/I0CiX/hvlY UwzWy7UP91ccLSTvJYF4917WWxhN8HBqBNYCwiOoPkdFUXC0VF6Fxc6ti33thKqi 7u8uR+ZwFTjdaeW9mJQt9qC1bdlvvbo0fmTbrcUC5/975USpejfxtMLX4znX3Dkc xD5gdBE3kgwwZmlchkSYSWngxBIbs6HtCvsVx1hEQjiPPClWO6U3+Ho5Lb981JNV vaRVWzbcE8osE7Ogt0j7R5PNkvgFtJttPAEjZZBa4CDM2IXRJahrF5Kyk4BWukeh Sn2Kw7C/lf5SD2n0tFiiqHdK8mLvQEC0h+gJ2wIDAQABAoIBAQCqpZT0zxURdEqi GMAe3Hwax/UUaaif0iOxgl+Xh7hqwphQflGEw9G3D5I0F3JfesH66r2WH+PRgs3O uS8eaIL1RpRnt4PHZn0WDo2zaFir4akAyc+2q/jBMRIP3TTSSE1MzJExzVOX3z0z Z5rZkHTysxdXI7wpkpb3zRWqbXhSUwyvLxHFWOamRNJb/LjiLko30pblyGZG744Q XmoHrDcpN46OpZTITMqF8SJbnJXKKPzIWRvTVxVRUzVwth4OgXFNPkfyJgsZ1DD+ wFvH+kI72l9yhF9UcI0IoEbk6I5Ao3O6O3+X6FV2YJhFPb4vfhKJI1irMS+rpCzB h9prqE4BAoGBAOC4rnPb7bltW7+7Dvi3e5CO1SfKBShFhmPM6mYSC6A2uSjcjfG5 Phgjc7pDbH2Ec0wdYezJUAsXFCrNAbVECSrSfoDqncar9cJUA61xT2q2CcUbvHYJ w7rroQk4WYXhxov9K4PiSljateyDelAxrstfRcokyHu8fT8C02k6hmcBAoGBANwR DfckqbFfcSsWvpTGT7gVv6aDuKGgfmvrUElDgY6K6Nt49pdiExXKI3jdx7JIkqZg t8LnXC4tFgLpFXkxHnikIW4twt0qrhe19z9phq6AW8d6rcePM7TuAVpXLzhWHPK6 UY4PESl4SBzoB4yyWKCDBcsDBJrOh8cYCWFg+ezbAoGADa9ReF7BSFR/jNqAW+cY kEISevzTeZNaTsOQ1qxsptIOTo232yuTu3aVOpeWiMJDHzR+3SOZS0OZh826N+av xDrTV1hySUH5kl75ZluLIY16ZNV+kZWgpMZqpRwYX43TQH0nZD2ol2aiQ4fyL+YG pf3kSx4YU2i0G905MKROwQECgYAMMUmzyq04LZCIkZ8HgSFDkrjmkd+13L2EXyo4 lOvlqN6T4lTPOFjUWTmz5Z29y/WMEEm+G7FowYi5qo5NA6KrjnRntVNZi21egO9s 7PzQSD5NhAeCyfVUbedXSQNNvL+n1xjTpRQPVyGvsE9SxULRydCVWdp0dULijftf EM9oBwKBgBzpA1Qj9fgj7hOVCDdrqcuX3/qWmuwiqV+bjGK2FPrW/7G5BSNsj8Gc /KuXgcZCPMRlobEue5ha0kFnPbUGhYngqJQEmsodkbK3Kz21zHOP4nTc3FublfLo Hzsrl5PEUsehiA+lf6TZtW/Jlo5vnrGEchSgTau09I4meN803DdX -----END RSA PRIVATE KEY-----
Come nel caso del certificato X509, i certificati PEM e CRT verranno validati al caricamento. Una volta terminato il caricamento, nella sezione Certificato X509 sotto ogni pulsante Carica File apparirà un messaggio sulla validità (o mancata validità) del certificato caricato. Premere Visualizza Dettagli per maggiori informazioni sulla lettura e la validazione del certificato da parte di Docebo, incluso lo stato della validità e le date di scadenza. Se Docebo non è in grado di validare il certificato, non sarà possibile procedere con la configurazione.
Attenzione! La piattaforma utilizza in automatico le date di scadenza nei file PEM e CERT caricati per inviare a tutti i Superadmin della piattaforma notifiche obbligatorie riguardanti gli aggiornamenti necessari per la configurazione SAML (30, 15, 5 e un giorno prima della scadenza del certificato). Le notifiche non possono essere modificate né disabilitate. In questo modo, si ha la possibilità di aggiornare la configurazione di SAML prima della sua scadenza, così che il login degli utenti in piattaforma non venga bloccato. Se l'app Extended Enterprise è attiva in piattaforma, le notifiche saranno inviate al dominio principale, e a tutti i sottodomini.
Username attribute
Nella sezione Username Attribute, selezionare una delle opzioni fornite dall’Identity Provider. L’attributo selezionato sarà lo username degli utenti di Docebo. Al momento della scelta, assicurarsi che l’attributo selezionato sia popolato per tutti gli utenti dell’Identity Provider. L’attributo selezionato deve essere univoco. Per esempio, selezionando l’attributo Family Name, è necessario assicurarsi che nessuno degli utenti abbia lo stesso cognome. Consigliamo di utilizzare lo Username Attribute di tipo Email.
Se si è selezionata l’opzione Nome e cognome sono campi obbligatori per la registrazione nella tab Autoregistrazione della sezione Configurazione del Menu amministrazione di Docebo, l’Identity Provider deve fornire i nomi e i cognomi degli utenti per una corretta registrazione in piattaforma.
Tutti i campi obbligatori sono stati configurati (Issuer, URL SSO e X509). Se non si desidera configurare il campo unico, l’SSO behavior, il logout behavior o il provisioning dell’utente, premere Salva le modifiche per terminare. Copiare ora l’URL di Login e l’URL di Logout visualizzati nella sezione Metadati SAML 2.0 SP per passarli all’Identity Provider.
Se necessario, scaricare il file dei metadati selezionando Scarica nella sezione Metadati SAML 2.0 SP. Ricordare però che gli unici file da passare obbligatoriamente sono l’URL di Login e l’URL di Logout, forniti nella stessa sezione.
Se si desidera configurare il logout behavior, l’SSO behavior e/o il provisioning dell’utente non premere Salva Modifiche. Fare riferimento alle sezioni successive per ulteriori informazioni riguardo i campi di questa pagina.
SSO behavior
Per configurare il SSO Behavior è possibile scegliere fra due opzioni: visualizzare la pagina di login standard della piattaforma o reindirizzare automaticamente i visitatori alla pagina dell’Identity Provider. Selezionando la prima opzione, è possibile selezionare se mostrare il pulsante SSO nella pagina di login della piattaforma.
Selezionando l’opzione per il re-indirizzamento automatico all’Identity Provider, è possibile indicare la pagina che sarà visualizzata quando gli utenti si disconnettono dalla piattaforma invece di mantenere la pagina standard di logout. Utilizzare il campo di testo per digitare l’URL della pagina.
La configurazione SSO è testata per gli Identity Provider standard. Generalmente, Docebo inizializza l'SSO con l'Identity Provider, e la prima chiamata non è eseguita in sicurezza perché gli utenti devono ancora inserire le proprie credenziali nell'Identity Provider. La configurazione lato Identity Provider creerà un canale sicuro da qui in poi.
Logout behavior
La sezione Logout Behavior permette di selezionare l’opzione per la disconnessione automatica dall’Identity Provider quando l’utente si disconnette dalla piattaforma. Non è possibile abilitare questa opzione se non si sono ancora caricati e validati in piattaforma i file PEM e CRT. Affinché la richiesta di logout sia accettata da un Identity Provider, la richiesta deve essere firmata. Questo significa che sono necessari entrambi i file per selezionare questa opzione.
Quando si seleziona questa opzione, si attiva il campo di testo Logout endpoint per definire l’URL dove gli utenti saranno reindirizzati una volta scollegati dalla piattaforma e dell’Identity Provider. Grazie a questa configurazione, gli utenti potranno essere reindirizzati ad un URL diverso da quello utilizzato per il SSO. È obbligatorio definire l’endpoint di logout quando si seleziona l’opzione Logout behavior.
Provisioning dell’utente
Questa sezione consente di creare istantaneamente in Docebo gli utenti presenti nell’Identity Provider ma non ancora presenti del database della piattaforma. Selezionare l’opzione Abilita per attivare il provisioning dell’utente, e attivare i parametri della sezione. L’opzione Blocca campi provisioning utenti permette di impedire agli utenti di modificare dettagli nei propri profili che siano stati creati tramite SAML.
Attenzione! L'opzione di blocco dei campi utente derivanti dal provisioning non sarà applicata agli utenti creati con un metodo diverso in piattaforma, anche se i loro campi aggiuntivi utente saranno aggiornati successivamente tramite provisioning JIT.
Quando si modifica un profilo utente, le opzioni vengono disattivate.
Nel caso in cui esistano utenti già presenti in entrambi i database, definire se aggiornare le informazioni dell’utente per gli utenti esistenti. Se questa opzione non è selezionata, sarà necessario registrare (opzione abilita) o aggiornare (opzione aggiorna) manualmente gli utenti in piattaforma.
Ora è possibile indicare per quali campi aggiuntivi si desidera creare delle associazioni fra Docebo e l’Identity Provider, creando delle corrispondenze fra i nomi dei campi di Docebo e i nomi dei campi dell’Identity Provider (Attribute Statement).
-
Attenzione! Se si desidera popolare il campo aggiuntivo dell'utente relativo al Paese tramite SSO, un valore accettabile potrebbe essere l'ID del Paese o il nome del Paese, come indicato nell'articolo Elenco dei Codici ISO 3166-1 per i Paesi.
Ogni campo deve essere unico, non è quindi possibile utilizzare lo stesso nome per più campi. Nel campo di testo, indicare il nome del campo aggiuntivo della piattaforma, quindi premere Aggiungi. Il campo aggiuntivo sarà visualizzato in un elenco nella parte inferiore di questa sezione, e il nome del campo e la categoria del campo saranno automaticamente completati dalla piattaforma. Inserire l’attributo corrispondente dell’Identity Provider nei campi di testo corrispondenti.
È possibile definire la lingua degli utenti creati in piattaforma tramite SAML utilizzando il campo Lingua. In questo modo, una volta creato l’utente, la sua piattaforma sarà nella lingua definita attraverso SAML. Una volta aggiunto il campo Lingua, inserire nel campo di testo Attribute Statement la stessa stringa inserita nel campo dell’Identity Provider che si sta interfacciando.
Attenzione! Nel campo lingua dell’Identity Provider, la stringa deve utilizzare uno dei codici utilizzati dalla piattaforma per identificare le lingue (en=inglese, de=tedesco, ecc). Elenco completo dei codici lingua (24kb, PDF). Se il codice di questo campo per un utente specifico non corrisponde ai codici lingua utilizzati dalla piattaforma, al momento dell’attivazione, l’utente utilizzerà la lingua di default della piattaforma.
Premere Salva le modifiche per terminare. Ora è possibile scaricare il file XML e importarlo nel proprio Identity Provider per configurare le autorizzazioni necessarie e completare il processo.
In base al campo, è possibile eseguire l'impor via CSV, SAML o app Automation. Segue un confronto fra i campi importabili via Automation e via SSO SAML:
Campi utente Docebo | Automation | SAML SSO |
---|---|---|
Username | Sì | Sì |
First Name | Sì | Sì |
Last Name | Sì | Sì |
Sì | Sì | |
Level | Sì | |
Profile Name | Sì | |
Branch Name | Sì | Sì |
Branch Code | Sì | Sì |
Branch Name Path | Sì | |
Branch Code Path | Sì | |
Password | Sì | |
Hashed Password | Sì | |
Active | Sì | |
Force Password Change | Sì | |
Expire On | Sì | |
Language | Sì | Sì |
Date Format | Sì | |
Time Zone | Sì | |
New Username | Sì | |
User ID | ||
Is Manager | ||
UUID | ||
Direct Manager |
Sì |
|
Other Manager Types | ||
Additional Fields | Sì | Sì |
Attenzione! La creazione dei rami in SAML non è supportata attraverso l'import via CSV. Tutti gli utenti saranno automaticamente inseriti nel ramo principale nelle configurazioni con un solo dominio, o, se l'app Extended Enterprise è attiva, nel ramo corrispondente al sottodominio.
Consigli d’utilizzo
Per sfruttare al meglio questa integrazione, consigliamo di definire dei gruppi automatici e di utilizzare l'app Regole di Iscrizione di Docebo per iscrivere automaticamente questi gruppi ai corsi e ai piani formativi. Alla creazione di un nuovo utente, non sarà quindi necessario assegnarlo manualmente ad un gruppo o iscriverlo ad un corso o ad un piano formativo.
Per creare le corrette corrispondenze fra i campi SAML e i campi aggiuntivi di Docebo e per utilizzarli per il popolamento automatico dei gruppi, è necessario disconnettersi sia dall’Identity Provider che dalla piattaforma Docebo. Assicurarsi di aver selezionato l’opzione nella sezione Logout Behavior. Se questa opzione non è selezionata, il processo di user provisioning non funzionerà.
Alcuni Identity Provider SAML non consentono l’utilizzo degli endpoint standard di SAML forniti da metadati XML. In questo caso, Docebo può utilizzare endpoint semplificati. Docebo utilizza metadati SAML 2.0 senza la parte della query, rendendo possibile l’utilizzo di OpenSAML:
http(s)://exampleLMS.docebosaas.com/simplesaml/modules/saml/sp/saml2-logout.php/default-sp
http(s)://exampleLMS.docebosaas.com/simplesaml/modules/saml/sp/saml2-acs.php/default-sp
Certificazione AWS
Docebo è disponibile nel Catalogo AWS SSO.