Passa al contenuto principale

Keycloak IdP

Introduzione​

Single Sign-On (SSO) è una tecnologia che consente agli utenti di effettuare l'accesso una sola volta e poi ottenere l'accesso a più applicazioni/servizi senza dover autenticarsi nuovamente.

Se un portale web include diverse sezioni indipendenti di grandi dimensioni (forum, chat, blog, ecc.), un utente può sottoporsi alla procedura di autenticazione in uno dei servizi e ottenere automaticamente l'accesso a tutti gli altri servizi senza dover inserire le credenziali più volte.

SSO è sempre garantito dalla cooperazione di due applicazioni: un Identity Provider e un Service Provider (anche chiamati IdP e SP). ONLYOFFICE SSO implementa solo il SP. Molti fornitori diversi possono agire come IdP, ma questo articolo considera l'implementazione di Keycloak.

Creare un IdP in Keycloak​

  1. Accedi a Keycloak come amministratore.

  2. Vai su Gestisci realm e seleziona il realm in cui verrà configurata la connessione.

  3. Vai su Client e clicca sul pulsante Crea client.

  4. Nella pagina che si apre, imposta quanto segue: nel campo Tipo di client, seleziona SAML. Nel campo ID client, inserisci https://myportal-address.com/sso/metadata, sostituendo myportal-address.com con il nome di dominio del tuo spazio di lavoro. Nei campi Nome e Descrizione, inserisci un nome e una descrizione qualsiasi per il client.

    How to configure ONLYOFFICE SP and Keycloak IdP

  5. Clicca sul pulsante Avanti.

  6. Compila i seguenti campi:

    note

    Sostituisci myportal-address.com con il nome di dominio del tuo spazio di lavoro.

    Dettagli dell'applicazione
    URL radicehttps://myportal-address.com/sso
    URL principalehttps://myportal-address.com/sso
    URI di reindirizzamento validihttps://myportal-address.com/sso/slo/callback
    https://myportal-address.com/sso/acs
    URI di reindirizzamento post logout validihttps://myportal-address.com/sso/slo/callback
    URL di elaborazione SAML principalehttps://myportal-address.com/sso/acs

    How to configure ONLYOFFICE SP and Keycloak IdP

    Compila i seguenti campi nella scheda Avanzate:

    URL di binding POST dell'Assertion Consumer Servicehttps://myportal-address.com/sso/acs
    URL di binding di reindirizzamento dell'Assertion Consumer Servicehttps://myportal-address.com/sso/acs
    URL di binding POST del servizio di logouthttps://myportal-address.com/sso/slo/callback
    URL di binding di reindirizzamento del servizio di logouthttps://myportal-address.com/sso/slo/callback

    How to configure ONLYOFFICE SP and Keycloak IdP

  7. Clicca sul pulsante Salva.

  8. Nella sezione Capacità SAML, imposta Formato ID nome su email.

  9. Nella sezione Firma e Crittografia, abilita l'opzione Firma Asserzioni e seleziona un algoritmo di firma: RSA_SHA1, RSA_SHA256 o RSA_SHA512.

    How to configure ONLYOFFICE SP and Keycloak IdP

  10. Clicca sul pulsante Salva.

  11. Vai alla sezione Ambiti Client e clicca sul link con il nome del tuo spazio di lavoro https://myportal-address.com/sso/metadata-dedicated.

    Clicca sul pulsante Aggiungi mappers predefiniti e nella finestra pop-up seleziona i seguenti mappers:

    • X500 email
    • X500 givenName
    • X500 surname

    Quindi clicca sul pulsante Aggiungi.

    How to configure ONLYOFFICE SP and Keycloak IdP

Configurazione di ONLYOFFICE SP​

  1. Assicurati di essere connesso come Amministratore al tuo spazio di lavoro ONLYOFFICE Apps e vai al menu Impostazioni, seleziona la sezione Integrazione e apri la scheda Single Sign-On.

  2. Abilita SSO utilizzando l'interruttore Abilita autenticazione Single Sign-on e incolla https://<keycloakurl>/realms/<realm_name>/protocol/saml/descriptor nel campo URL per il metadato XML Idp. Sostituisci <keycloakurl> e <realm_name> con l'indirizzo del tuo server Keycloak e il nome del realm in cui è stata creata la connessione. Il link finale deve essere accessibile da un browser.

    How to configure ONLYOFFICE SP and Keycloak IdP

  3. Premi il pulsante con la freccia verso l'alto per caricare i metadati IdP. Il modulo delle impostazioni del fornitore di servizi ONLYOFFICE verrà automaticamente compilato con i tuoi dati dall'IdP Keycloak.

  4. Seleziona lo stesso Algoritmo di Verifica della Firma Predefinito specificato in Keycloak.

    How to configure ONLYOFFICE SP and Keycloak IdP

  5. Cambia il Formato NameId in emailAddress.

    How to configure ONLYOFFICE SP and Keycloak IdP

  6. Ora devi creare un certificato nella sezione Certificati SP. Per farlo, clicca sul pulsante Aggiungi certificato.

  7. Nella finestra modale aperta, clicca sul link Genera Nuovo Certificato Auto-Firmato, e scegli l'opzione firma e cifra nella lista Usa per. Prima di salvare il certificato, copia il testo del Certificato Pubblico negli appunti e salvalo in un file (sarà necessario per Keycloak), quindi clicca sul pulsante OK.

    How to configure ONLYOFFICE SP and Keycloak IdP

  8. Vai alla sezione Mapping degli attributi e assegna i seguenti valori agli attributi:

    • Nome: urn:oid:2.5.4.42
    • Cognome: urn:oid:2.5.4.4
    • Email: urn:oid:1.2.840.113549.1.9.1

    How to configure ONLYOFFICE SP and Keycloak IdP

    Nella sezione Impostazioni Avanzate, puoi selezionare l'opzione Nascondi pagina di autenticazione per nascondere la pagina di autenticazione predefinita e reindirizzare automaticamente al servizio SSO.

    Se hai bisogno di ripristinare la pagina di autenticazione predefinita (per poter accedere allo spazio di lavoro se il tuo server IdP fallisce), puoi aggiungere la chiave /login?skipssoredirect=true dopo il nome di dominio del tuo spazio di lavoro nella barra degli indirizzi del browser.

  9. Clicca sul pulsante Salva.

  10. Ritorna a Keycloak per configurare la crittografia, apri il tuo client e vai alla sezione Chiavi. Disabilita l'opzione Firma client richiesta e abilita Cifra asserzioni. Nella finestra pop-up, seleziona Importa, imposta il Formato archivio come Certificato PEM e clicca sul pulsante Sfoglia. Specifica il percorso al file del certificato dal passo 7 e clicca su Conferma.

Verifica del funzionamento di ONLYOFFICE SP con Keycloak IdP​

  1. Vai alla pagina di autenticazione di ONLYOFFICE Apps (ad es., https://myportal-address.com/login).

  2. Clicca sul pulsante Single Sign-on. Se il pulsante manca, significa che SSO non è abilitato.

    How to configure ONLYOFFICE SP and Keycloak IdP

  3. Se tutti i parametri SP e IdP sono impostati correttamente, verrai reindirizzato al modulo di login di Keycloak IdP:

    How to configure ONLYOFFICE SP and Keycloak IdP

  4. Inserisci il login e la password dell'utente Keycloak e clicca sul pulsante Accedi.

  5. Se le credenziali sono corrette, verrai reindirizzato alla pagina principale dello spazio di lavoro (l'utente verrà creato automaticamente se mancante, o i dati verranno aggiornati se modificati nell'IdP).

    How to configure ONLYOFFICE SP and Keycloak IdP