Autenticazione OpenID Connect

Se la tua istanza di Looker è stata creata dopo Looker 22.10, la pagina OpenID Connect è disponibile per impostazione predefinita nella sezione Authentication del menu Admin.

Se non vedi la pagina OpenID Connect nella sezione Authentication del menu Admin, apri una richiesta di assistenza nel Centro assistenza di Looker facendo clic su Contattaci.

Le aziende utilizzano diversi provider OpenID Connect (OP) per coordinarsi con OpenID Connect (ad esempio, Okta o OneLogin). I termini utilizzati nelle istruzioni di configurazione seguenti e nella UI di Looker potrebbero non corrispondere direttamente a quelli utilizzati dal tuo OP.

La pagina OpenID Connect nella sezione Authentication del menu Amministratore ti consente di configurare Looker per autenticare gli utenti utilizzando il protocollo OpenID Connect. Questa pagina descrive questo processo e include le istruzioni per collegare i gruppi OpenID Connect ai ruoli e alle autorizzazioni di Looker.

Considerazioni sulla pianificazione

  • Valuta la possibilità di utilizzare l'opzione Alternate Login for Specific Users (Accesso alternativo per utenti specificati) per consentire agli amministratori di Looker di accedere a Looker senza OpenID Connect.
  • Non disattivare l'autenticazione OpenID Connect mentre sei connesso a Looker utilizzando OpenID Connect a meno che non hai configurato un accesso alternativo all'account. In caso contrario, potresti non riuscire ad accedere all'app.
  • Looker può eseguire la migrazione degli account esistenti a OpenID Connect utilizzando indirizzi email che provengono da configurazioni di email/password correnti, LDAP, SAML o Google Auth. Potrai configurare questa funzionalità durante la procedura di configurazione.
  • Looker supporta solo l'autenticazione OpenID Connect utilizzando il flusso del codice di autorizzazione di OpenID Connect. Non sono supportati altri flussi di codice.
  • La specifica OpenID Connect include un meccanismo di rilevamento facoltativo. Looker non supporta questo meccanismo, pertanto devi fornire gli URL espliciti nella sezione OpenID Connect Auth Settings (Impostazioni di autenticazione OpenID Connect) come descritto di seguito.

Configurazione di OpenID Connect

Per configurare la connessione tra Looker e OpenID Connect, esegui le seguenti attività:

  1. Fornisci l'URL di Looker al tuo provider OpenID Connect (OP).
  2. Ottieni le informazioni necessarie dal tuo operatore.

Configurazione di Looker sul tuo OP

Il tuo provider OpenID Connect (OP) avrà bisogno dell'URL dell'istanza di Looker. L'operatore può chiamarlo URI di reindirizzamento o URI di reindirizzamento dell'accesso, tra gli altri nomi. Sul tuo sito web dell'operatore, fornisci al tuo sistema operativo l'URL in cui solitamente accedi all'istanza di Looker in un browser, seguito da /openidconnect. Ad esempio: https://instance_name.looker.com/openidconnect.

Recupero delle informazioni dall'OP

Per configurare Looker per l'autenticazione OpenID Connect, sono necessarie le seguenti informazioni dall'OP:

  • Un identificatore client e un client secret. Di solito vengono forniti dall'OP sul proprio sito web quando configuri l'URI di reindirizzamento come descritto sopra.
  • Durante il processo di autenticazione OpenID Connect, Looker si connetterà a tre endpoint diversi, un endpoint di autenticazione, un endpoint token ID e un endpoint informazioni utente. Avrai bisogno degli URL che il tuo OP utilizza per ciascuno di questi endpoint.
  • Ogni OP fornirà le informazioni relative all'utente in insiemi denominati ambiti. Devi conoscere i nomi degli ambiti utilizzati dall'operatore. OpenID Connect richiede l'ambito openid, ma l'OP probabilmente includerà altri ambiti, come email, profile e groups.
  • In OpenID Connect, gli attributi che archiviano i dati dell'utente sono chiamati claims (rivendicazioni). Devi sapere quali affermazioni il tuo OP passa a Looker per fornire le informazioni utente che vuoi nella tua istanza di Looker. Looker richiede risorse che contengono indirizzi email e informazioni sui nomi, ma se disponi di altri attributi utente, come il fuso orario o il reparto, dovrà anche identificare le rivendicazioni che contengono tali informazioni. Le rivendicazioni possono essere incluse nella risposta dall'endpoint delle informazioni utente o dall'endpoint del token ID. Looker può mappare le rivendicazioni restituite da entrambi gli endpoint agli attributi utente di Looker.

Molti OP forniscono informazioni sulla configurazione di OpenID Connect sotto forma di documento di rilevamento, permettendoti di raccogliere alcune o tutte le informazioni necessarie per configurare Looker per OpenID Connect. Se non hai accesso a un documento di rilevamento, devi ottenere le informazioni necessarie dal team operativo o dall'autenticazione interna.

Ad esempio, questa è una sezione di un documento di esempio di rilevamento fornito da Google:

Configurazione delle impostazioni di autenticazione OpenID Connect

Utilizza le informazioni di configurazione ottenute dal documento di rilevamento dell'OP, dal tuo OP o dal team di autenticazione interno per inserire le impostazioni di connessione nei seguenti campi:

Identificatore: l'identificatore del client univoco della tua istanza di Looker. Dovrebbe essere fornito dall'OP.

Secret: il codice segreto del client univoco per la tua istanza di Looker. Dovrebbe essere fornito dall'OP.

Issuer (Emittente): l'URL sicuro che identifica l'OP.

Pubblico: un identificatore che indica al tuo operatore chi è il cliente. Spesso è uguale al valore Identificatore, ma può essere un valore diverso.

URL di autorizzazione: l'URL dell'OP da cui inizia la sequenza di autenticazione. Spesso chiamata authorization_endpoint in un documento di rilevamento.

Token URL (URL token): l'URL in cui Looker recupera un token OAuth dopo che Looker è stato autorizzato. Spesso chiamata token_endpoint in un documento di rilevamento.

User Info URL (URL informazioni utente): l'URL da cui Looker recupera informazioni utente dettagliate. Spesso chiamata userinfo_endpoint in un documento di rilevamento.

Scopes (Ambiti): un elenco di ambiti separati da virgole utilizzati dall'OP per fornire informazioni sugli utenti a Looker. Devi includere l'ambito openid e qualsiasi ambito che includa le informazioni richieste da Looker, inclusi indirizzi email, nomi utente ed eventuali attributi utente configurati sulla tua istanza di Looker.

Configurazione delle impostazioni degli attributi utente

In questa sezione, mapperai le tue rivendicazioni di OP agli attributi utente di Looker.

Nella sezione Impostazioni attributi utente, inserisci il nome della tua richiesta di OP che contiene le informazioni corrispondenti per ciascun campo. Questo indica a Looker come mappare tali dichiarazioni alle informazioni degli utenti di Looker al momento dell'accesso. Looker non considera il modo in cui vengono create le rivendicazioni, ma è importante che le informazioni inserite qui corrispondano al modo in cui sono definite nel tuo OP.

Rivendicazioni standard

Looker richiede dati utente e email per l'autenticazione dell'utente. Inserisci le informazioni sulla rivendicazione OP in questa sezione:

Rivendicazione email: la rivendicazione utilizzata dal tuo OP per gli indirizzi email degli utenti, ad esempio email.

Rivendicazione del nome: la rivendicazione utilizzata dal tuo OP per i nomi degli utenti, ad esempio given_name.

Rivendicazione cognome: la rivendicazione utilizzata dal tuo operatore per i cognomi degli utenti, ad esempio family_name.

Tieni presente che alcuni OP utilizzano una singola rivendicazione per i nomi, invece di separare il nome e il cognome. In questo caso, inserisci la rivendicazione che memorizza nomi nei campi Rivendicazione nome e Rivendicazione cognome. Per ciascun utente, Looker utilizzerà i contenuti fino al primo spazio come nome e tutto ciò che segue in seguito come cognome.

Associazioni degli attributi

Facoltativamente, puoi utilizzare i dati delle tue richieste OpenID Connect per inserire automaticamente i valori negli attributi utente Looker quando un utente esegue l'accesso. Ad esempio, se hai configurato OpenID Connect in modo da creare connessioni specifiche per l'utente al database, puoi abbinare le richieste OpenID Connect agli attributi utente di Looker per rendere le connessioni al database specifiche per l'utente in Looker.

Per associare le rivendicazioni agli attributi utente di Looker corrispondenti:

  1. Inserisci la richiesta come identificata dal tuo OP nel campo Claim (Rivendica) e l'attributo utente di Looker che vuoi accoppiare nel campo Looker User Attributes (Attributi utente Looker).
  2. Seleziona Obbligatorio se vuoi bloccare l'accesso per qualsiasi account utente a cui manca un valore in quel campo di rivendicazione.
  3. Fai clic su + e ripeti questi passaggi per aggiungere altre coppie di rivendicazioni e attributi.

Tieni presente che alcuni OP possono avere "nidificare" le rivendicazioni. Ad esempio:

"zoneinfo": "America/Los Angeles",
"phone_number": "555-1235",
"address": {
  "street_address": "1234 Main Street",
  "locality": "Anyton",
  "region": "IL",
  "postal_code": "60609",
  "country": "US"
},

Nell'esempio precedente, la rivendicazione locality viene nidificata all'interno della rivendicazione address. Per le rivendicazioni nidificate, specifica le rivendicazioni principali e nidificate, separate da una barra ( /). Per configurare Looker per la rivendicazione locality riportata sopra, dovrai inserire address/locality.

Gruppi e ruoli

Puoi scegliere di creare gruppi che rispecchino i gruppi OpenID Connect gestiti esternamente e poi di assegnare i ruoli Looker agli utenti in base ai gruppi OpenID Connect con mirroring. Quando apporti modifiche all'iscrizione al gruppo OpenID Connect, queste vengono propagate automaticamente nella configurazione del gruppo di Looker

Il mirroring dei gruppi OpenID Connect ti consente di utilizzare la directory OpenID Connect definita esternamente per gestire i gruppi e gli utenti Looker. Questo, a sua volta, ti consente di gestire l'iscrizione al gruppo per più strumenti Software as a Service (SaaS), come Looker, in un unico posto.

Se attivi Mirroring gruppi OpenID Connect, Looker creerà un gruppo Looker per ogni gruppo OpenID Connect introdotto nel sistema. Questi gruppi di Looker possono essere visualizzati nella pagina Groups (Gruppi) della sezione Admin (Amministrazione) di Looker. I gruppi possono essere utilizzati per assegnare ruoli ai membri dei gruppi, impostare i controlli dell'accesso ai contenuti e assegnare gli attributi utente.

Gruppi e ruoli predefiniti

Per impostazione predefinita, l'opzione Esegui il mirroring dei gruppi OpenID Connect è disattivata. In questo caso, puoi impostare un gruppo predefinito per i nuovi utenti OpenID Connect. Nei campi New User Groups (Nuovi gruppi di utenti) e New User Roles (Nuovi ruoli utente), inserisci i nomi di qualsiasi gruppo o ruolo Looker a cui vuoi assegnare nuovi utenti Looker al primo accesso a Looker:

Questi gruppi e ruoli vengono applicati ai nuovi utenti al momento dell'accesso iniziale. Non vengono applicati agli utenti preesistenti e non vengono riapplicati se vengono rimossi dagli utenti dopo l'accesso iniziale.

Se in seguito attivi i gruppi OpenID Connect di mirroring, i valori predefiniti verranno rimossi per gli utenti all'accesso successivo e sostituiti dai ruoli assegnati nella sezione Gruppi mirroring OpenID Connect. Queste opzioni predefinite non saranno più disponibili o assegnate e saranno completamente sostituite dalla configurazione dei gruppi con mirroring.

Abilitazione del mirroring dei gruppi OpenID Connect

Per eseguire il mirroring dei gruppi OpenID Connect all'interno di Looker, attiva l'opzione Mirror OpenID Connect Groups (Esegui il mirroring dei gruppi OpenID Connect):

Rivendicazione di gruppi: inserisci la rivendicazione utilizzata dal tuo operatore per archiviare i nomi dei gruppi. Looker creerà un gruppo Looker per ogni gruppo OpenID Connect introdotto nel sistema dalla rivendicazione di Gruppi. Questi gruppi di Looker possono essere visualizzati nella pagina Groups (Gruppi) della sezione Admin (Amministrazione) di Looker. I gruppi possono essere utilizzati per impostare i controlli di accesso ai contenuti e assegnare gli attributi utente.

Nome gruppo di ruoli / Ruoli / Nome gruppo OpenID Connect: questo insieme di campi consente di assegnare un nome di gruppo personalizzato e uno o più ruoli assegnati al gruppo OpenID Connect corrispondente in Looker:

  1. Inserisci il nome del gruppo OpenID Connect nel campo OpenID Connect Group Name (Nome gruppo OpenConnect). Gli utenti OpenID Connect che sono inclusi nel gruppo OpenID Connect verranno aggiunti al gruppo sottoposto a mirroring all'interno di Looker.

  2. Inserisci un nome personalizzato per il gruppo sottoposto a mirroring nel campo Nome personalizzato. Questo è il nome che verrà visualizzato nella pagina Groups (Gruppi) della sezione Admin (Amministrazione) di Looker.

  3. Nel campo a destra del campo Nome personalizzato, seleziona uno o più ruoli Looker che verranno assegnati a ciascun utente del gruppo.

  4. Fai clic su + per aggiungere altri insiemi di campi per configurare altri gruppi con mirroring. Se hai configurato più gruppi e vuoi rimuovere la configurazione di un gruppo, fai clic su X accanto all'insieme di campi di quel gruppo.

Se modifichi un gruppo sottoposto a mirroring precedentemente configurato in questa schermata, la configurazione del gruppo cambierà, ma il gruppo stesso rimarrà invariato. Ad esempio, puoi modificare il nome personalizzato di un gruppo, cambiando il modo in cui il gruppo viene visualizzato nella pagina Gruppi di Looker, ma non i ruoli e i membri del gruppo assegnati. La modifica dell'ID gruppo OpenID Connect manterrà il nome e i ruoli del gruppo, ma i membri del gruppo verranno riassegnati in base agli utenti che sono membri del gruppo OpenID Connect esterno che dispone del nuovo ID gruppo OpenID Connect.

Se elimini un gruppo in questa pagina, il gruppo non sarà più sottoposto a mirroring in Looker e ai suoi membri non verranno più assegnati i ruoli di Looker tramite il gruppo.

Eventuali modifiche apportate a un gruppo con mirroring verranno applicate agli utenti di quel gruppo al successivo accesso a Looker.

Gestione avanzata dei ruoli

Se hai attivato l'opzione Esegui il mirroring dei gruppi OpenID Connect, Looker visualizza queste impostazioni. Le opzioni di questa sezione determinano la flessibilità che gli amministratori di Looker possono avere durante la configurazione dei gruppi Looker e degli utenti di cui è stato eseguito il mirroring da OpenID Connect.

Ad esempio, se vuoi che la configurazione utente e il tuo gruppo Looker corrispondano esattamente alla tua configurazione OpenID Connect, attiva queste opzioni. Se tutte le prime tre opzioni sono abilitate, gli amministratori di Looker non possono modificare l'appartenenza dei gruppi sottoposti a mirroring e possono assegnare ruoli agli utenti solo tramite i gruppi con mirroring OpenID Connect.

Se vuoi avere una maggiore flessibilità per personalizzare ulteriormente i tuoi gruppi in Looker, disattiva queste opzioni. I gruppi Looker rispecchieranno la configurazione di OpenID Connect, ma potrai eseguire altre operazioni di gestione di gruppi e utenti in Looker, come aggiungere utenti OpenID Connect a gruppi specifici di Looker o assegnare ruoli di Looker direttamente agli utenti di OpenID Connect.

Per nuove istanze di Looker o istanze che non hanno configurato gruppi speculari configurati in precedenza, queste opzioni sono disattivate per impostazione predefinita.

Per le istanze Looker esistenti che attualmente hanno gruppi di mirroring configurati, queste opzioni sono attive per impostazione predefinita.

Se attivi impostazioni più restrittive, gli utenti perderanno le iscrizioni ai gruppi o i ruoli assegnati che sono stati configurati direttamente in Looker. Questo si verifica la prossima volta che questi utenti accedono a Looker.

La sezione Gestione avanzata dei ruoli contiene le seguenti opzioni:

Impedisci ai singoli utenti di OpenID Connect di ricevere ruoli diretti: l'attivazione di questa opzione impedisce agli amministratori di Looker di assegnare i ruoli Looker direttamente agli utenti OpenID Connect. Gli utenti OpenID Connect riceveranno i ruoli solo tramite le iscrizioni ai gruppi. Se agli utenti OpenID Connect è consentita l'appartenenza ai gruppi di Looker nativi (non sottoposti a mirroring), possono ereditare i propri ruoli sia dai gruppi OpenID Connect con mirroring che dai gruppi nativi di Looker. Tutti i ruoli a cui è stato assegnato direttamente un ruolo OpenID Connect verranno rimossi al momento dell'accesso successivo.

Se questa opzione è disattivata, gli amministratori di Looker possono assegnare i ruoli Looker direttamente agli utenti OpenID Connect come se fossero utenti configurati in modo nativo in Looker.

Prevent Direct Membership in non-OpenID Connect Groups (Impedisci l'iscrizione diretta a gruppi non OpenID Connect): questa opzione impedisce agli amministratori di Looker di aggiungere utenti OpenID Connect direttamente ai gruppi nativi Looker. Se i gruppi OpenID Connect sottoposti a mirroring possono essere membri di gruppi Looker nativi, gli utenti OpenID Connect possono mantenere l'appartenenza in qualsiasi gruppo Looker principale. Tutti gli utenti OpenID Connect che erano stati assegnati in precedenza a gruppi nativi di Looker verranno rimossi da questi gruppi al successivo accesso.

Se questa opzione è disattivata, gli amministratori di Looker possono aggiungere direttamente gli utenti OpenID Connect ai gruppi nativi di Looker.

Impedisci l'ereditarietà dei ruoli dai gruppi non OpenID Connect: attivando questa opzione impedisci ai membri dei gruppi OpenID Connect con mirroring di ereditare ruoli dai gruppi nativi di Looker. Tutti gli utenti di OpenID Connect che in precedenza ereditavano i ruoli da un gruppo Looker principale perderanno tali ruoli al momento dell'accesso successivo.

Se questa opzione è disattivata, i gruppi OpenID Connect mirroring o gli utenti OpenID Connect che vengono aggiunti come membri di un gruppo nativo di Looker ereditano i ruoli assegnati al gruppo Looker principale.

Autenticazione richiede ruolo: se questa opzione è attiva, agli utenti OpenID Connect è necessario assegnare un ruolo. Qualsiasi utente di OpenID Connect a cui non è assegnato un ruolo non potrà accedere a Looker.

Se questa opzione è disattivata, gli utenti OpenID Connect possono autenticarsi a Looker anche se non hanno alcun ruolo assegnato. Un utente a cui non è assegnato alcun ruolo non potrà visualizzare dati o eseguire azioni in Looker, ma potrà accedere a Looker.

Configurazione delle opzioni di migrazione

Come spiegato in questa sezione, Looker consiglia di abilitare l'Accesso alternativo e di fornire una strategia di unione per gli utenti esistenti.

Accesso alternativo per utenti specificati

Gli accessi email/password di Looker sono sempre disattivati per gli utenti normali quando è abilitata l'autenticazione OpenID Connect. L'opzione Accesso alternativo per utenti specificati consente di accedere in base all'indirizzo email alternativo utilizzando /login/email per gli amministratori e per gli utenti specificati con l'autorizzazione login_special_email.

L'attivazione di questa opzione è utile come riserva durante la configurazione di OpenID Connect in caso di problemi di configurazione di OpenID Connect in un secondo momento o se devi supportare alcuni utenti che non hanno account nella directory OpenID Connect.

Per abilitare gli accessi alternativi utilizzando l'API Looker, consulta la pagina della documentazione Abilitare l'opzione di accesso alternativo.

Specifica il metodo utilizzato per unire gli utenti OpenID Connect a un account Looker

Nel campo Unisci utenti che utilizzano, specifica il metodo da utilizzare per unire un accesso di Open ID Connect per la prima volta a un account utente esistente. Le opzioni sono Looker Email/Password, Google, LDAP e SAML.

Se sono presenti più sistemi di autenticazione, in questo campo puoi specificare più di un sistema di unione. Looker cercherà gli utenti dai sistemi elencati nell'ordine in cui sono specificati. Supponi, ad esempio, di aver creato alcuni utenti utilizzando il servizio email/password di Looker, di aver attivato il protocollo LDAP e di voler utilizzare OpenID Connect. Nell'esempio precedente, Looker verrà prima unito via email/password, quindi LDAP.

Quando un utente accede per la prima volta con OpenID Connect, questa opzione connetterà l'utente al suo account esistente trovando l'account con un indirizzo email corrispondente. Se non esiste un account utente per l'utente, verrà creato un nuovo account utente.

Test autenticazione utente

Durante la specifica di questa configurazione, fai clic sul pulsante Test (Prova) per testare la configurazione di OpenID Connect.

Leggi con attenzione i risultati del test; alcune parti del test possono avere esito positivo anche se altre non hanno esito positivo.

I test eseguiranno il reindirizzamento agli endpoint e apriranno una nuova scheda del browser. Nella scheda sono visualizzati:

  • La capacità di Looker di comunicare con i vari endpoint e di convalidarli.
  • Una traccia della risposta dell'endpoint di autenticazione
  • Le informazioni utente che Looker recupera dall'endpoint informazioni utente
  • Sono state ricevute sia la versione decodificata che quella non elaborata del token ID

Puoi utilizzare questo test per verificare che le informazioni ricevute dai vari endpoint siano corrette e per correggere eventuali errori.

Suggerimenti:

  • Puoi eseguire questo test in qualsiasi momento, anche se OpenID Connect è configurato parzialmente. L'esecuzione di un test può essere utile durante la configurazione per capire quali parametri richiedono una configurazione.
  • Il test utilizza le impostazioni inserite nella pagina OpenID Connect Authentication, anche se tali impostazioni non sono state salvate. Il test non influirà o modificherà le impostazioni di quella pagina.

Salva e applica le impostazioni

Assicurati di testare la configurazione e leggere attentamente i risultati del test per verificare che tutte le parti del test siano andate a buon fine. Il salvataggio di informazioni di configurazione OpenID Connect non corrette potrebbe bloccare te e altre persone all'esterno di Looker.

Una volta inseriti i dati e superati tutti i test, seleziona Ho confermato la configurazione qui sopra e voglio abilitarla a livello globale e fai clic su Aggiorna impostazioni per salvare.