SAML con Keycloak

Passaggio 1: Configurazione Keycloak

  • Per aggiungere Zammad come client, salva la configurazione XML su disco (https://your.zammad.domain/auth/saml/metadata) e utilizza Client > Elenco client > Importa client nel pannello di amministrazione di Keycloak.

  • Per aiutare Zammad a corrispondere i propri account utente agli utenti Keycloak, crea un mapper di attributi utente (o “proprietà”). In Elenco client, fai clic sul tuo ID client appena creato, scegli la scheda Scope client e fai clic sul link che si riferisce alla tua istanza Zammad. Scegli Aggiungi mapper > Per configurazione > Proprietà utente e crea un mapper con le seguenti voci:

    Nome

    email

    Tipo di Mapper

    Proprietà utente

    Proprietà

    emailAddress

    Nome Attributo SAML

    email

    Formato Nome Attributo SAML

    basic

    Nell’esempio sopra, stiamo dicendo a Zammad che ogni volta che riceve una richiesta di login SAML, dovrebbe prendere la proprietà email da Keycloak, cercare un utente Zammad con lo stesso attributo email e creare una nuova sessione per quell’utente.

    Se gli indirizzi email degli utenti Keycloak sono memorizzati su un’altra proprietà (ad es., username), adatta di conseguenza.

  • Tornando in Impostazioni, inserisci l’ID client (https://your.zammad.domain/auth/saml/metadata) nel campo URL principale di elaborazione SAML.

  • Devi anche abilitare Firma asserzioni.

2. Configura Zammad

  • Accedi a Zammad come amministratore

  • Nel pannello di amministrazione vai su «Impostazioni» > «Sicurezza» > «Applicazioni di terze parti» > «Autenticazione tramite SAML»

  • Fornisci le seguenti informazioni:

    • URL di login IdP SAML: https://your.domain/realms/your-realm/protocol/saml

    • URL di logout IdP SAML: https://your.domain/realms/your-realm/protocol/saml

  • Formato identificatore nome: urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress

  • Certificato IdP SAML: Carica il certificato Base64 precedentemente scaricato.

  • Salva le impostazioni

Suggerimento

Continua a leggere su Configurazione generale di Zammad per una descrizione dei campi specifici in Zammad.