Vai al contenuto

Come configurare l'integrazione di GitLab con Trusted.ID Service#

In questa guida imparerai come configurare il single sign-on (SSO) in GitLab tramite il sistema Trusted.ID Service.

📌 GitLab è una piattaforma web per la gestione di progetti e repository di codice software, basata sul popolare sistema di controllo versione Git.

La configurazione dell'accesso tramite Trusted.ID Service consiste in diverse fasi chiave eseguite in due sistemi differenti.


Passaggio 1. Creazione dell'applicazione#

  1. Accedi al sistema Trusted.ID Service.
  2. Crea un'applicazione con le seguenti impostazioni:

  3. Indirizzo Applicazione - l'indirizzo della tua installazione GitLab;

  4. URL di reindirizzamento #1 (Redirect_uri) - <indirizzo installazione GitLab>/users/auth/oauth2_generic/callback.

    🔍 Per maggiori dettagli sulla creazione di applicazioni, consulta le istruzioni.

  5. Apri le impostazioni dell'applicazione e copia i valori dei seguenti campi:

    • Identificativo (Client_id),
    • Chiave segreta (client_secret).

Passaggio 2. Configurazione del sistema GitLab#

La configurazione dell'autorizzazione utente per il servizio GitLab tramite Trusted.ID Service viene eseguita nel file di configurazione gitlab.rb di GitLab, situato nella cartella di configurazione del servizio (/config).

  1. Apri il file di configurazione gitlab.rb in modalità modifica e vai al blocco OmniAuth Settings.
  2. Imposta i seguenti valori per i parametri:

        gitlab_rails['omniauth_enabled'] = true  
        gitlab_rails['omniauth_allow_single_sign_on'] = ['oauth2_generic', '<Trusted.ID ServiceSystemName>']  
        gitlab_rails['omniauth_block_auto_created_users'] = false  
    
        Il valore per gitlab_rails['omniauth_providers'] dovrebbe apparire come segue:  
    
        gitlab_rails['omniauth_providers'] = [  
        {  
        'name' => 'oauth2_generic',   
        'app_id' => '<Client_id dell'applicazione creata in Trusted.ID Service>',  
        'app_secret' => '<Client_secret dell'applicazione creata in Trusted.ID Service>',  
        'args' => {  
        client_options: {  
        'site' => 'https://<indirizzo sistema Trusted.ID Service>/',  
        'authorize_url' => '/api/oidc/auth',  
        'user_info_url' => '/api/oidc/me',  
        'token_url' => '/api/oidc/token'  
        },  
        user_response_structure: {  
        root_path: [],  
        id_path: ['sub'],  
        attributes: { email:'email',  name:'nickname' },  
        },  
        scope: 'openid profile email',  
        'name' => '<Trusted.ID ServiceSystemName>’  
        }  
        }  
        ]  
    

    Configurazione del file gitlab.rb

  3. Riavvia il servizio GitLab per applicare le nuove impostazioni.

  4. Se necessario, accedi come amministratore all'interfaccia del servizio GitLab. Vai al percorso delle impostazioni Admin (Admin Area) — Settings-General.

    Nella pagina che si apre, nel blocco Sign-in restrictions, spunta la casella accanto a nel sotto-blocco Enabled OAuth authentication sources.

    Configurazione pannello admin GitLab


Passaggio 3. Verifica dell'integrazione#

  1. Apri la pagina di login di GitLab.
  2. Assicurati che sia apparso il pulsante Login via Trusted.ID Service.
  3. Clicca sul pulsante e accedi utilizzando il tuo account aziendale:

  4. Il sistema ti reindirizzerà alla pagina di autenticazione di Trusted.ID Service.

  5. Inserisci le tue credenziali aziendali.

    Widget di login GitLab

  6. Dopo l'autenticazione riuscita, dovresti essere reindirizzato a GitLab ed effettuare automaticamente l'accesso al tuo account.