Impostazioni amministratore - Autenticazione OpenID Connect

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

La pagina OpenID Connect nella sezione Autenticazione del menu Amministratore consente di configurare Looker per l'autenticazione degli utenti mediante il protocollo OpenID Connect. Questa pagina descrive il processo e include le istruzioni per collegare i gruppi OpenID Connect a ruoli e autorizzazioni di Looker.

Considerazioni di pianificazione

  • Valuta la possibilità di utilizzare l'opzione Accesso alternativo per gli utenti specificati per consentire agli amministratori di Looker di accedere a Looker senza OpenID Connect.
  • Non disabilitare l'autenticazione OpenID Connect dopo aver eseguito l'accesso a Looker utilizzando OpenID Connect, a meno che tu non abbia configurato un accesso a un account alternativo. In caso contrario, potresti bloccare l'accesso all'app.
  • Looker può eseguire la migrazione di account esistenti a OpenID Connect utilizzando indirizzi email provenienti dalle configurazioni attuali di email e password, da LDAP, SAML o Google Auth. Potrai configurarlo durante la procedura di configurazione.
  • Looker supporta solo l'autenticazione OpenID Connect tramite il flusso del codice di autorizzazione di OpenID Connect. Altri flussi di codice non sono supportati.
  • La specifica OpenID Connect include un meccanismo di rilevamento facoltativo. Looker non supporta questo meccanismo, quindi devi fornire URL espliciti nella sezione Impostazioni di autenticazione OpenID Connect, come descritto di seguito.

Configurazione di OpenID Connect

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

  1. Assegna l'URL di Looker al tuo provider OpenID Connect (OP).
  2. Richiedi le informazioni richieste al tuo OP.

Configurazione di Looker sul tuo OP

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

Recupero delle informazioni dal tuo OP

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

  • Un identificatore client e un client secret. In genere questi vengono forniti dall'OP sul sito web quando configuri l'URI di reindirizzamento come descritto sopra.
  • Durante il processo di autenticazione OpenID Connect, Looker si connetterà a tre diversi endpoint: un endpoint di autenticazione, un endpoint del token ID e un endpoint delle informazioni degli utenti. Avrai bisogno degli URL utilizzati dal tuo OP per ciascuno di questi endpoint.
  • Ogni OP fornirà informazioni all'utente in insiemi chiamati ambiti. è necessario conoscere i nomi degli ambiti utilizzati dal vostro OP. OpenID Connect richiede l'ambito openid, ma il tuo OP probabilmente includerà altri ambiti, quali email, profile e groups.
  • In OpenID Connect, gli attributi che archiviano i dati utente sono denominati rivendicazioni. Devi sapere quali attestazioni il tuo OP passa a Looker per fornire le informazioni utente che vuoi sulla tua istanza Looker. Looker richiede attestazioni che contengono informazioni su indirizzo email e nome, ma se hai altri attributi utente, come fuso orario o reparto, Looker dovrà anche identificare quali attestazioni contengono queste informazioni. Le attestazioni possono essere incluse nella risposta dall'endpoint Informazioni utente o dall'endpoint del token ID. Looker può mappare le attestazioni 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, per consentirti 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 tuo OP o dal team di autenticazione interno.

La sezione seguente proviene da un esempio di documento di rilevamento:

{
  "issuer": "https://accounts.google.com",
  "authorization_endpoint": "https://accounts.google.com/o/oauth2/v2/auth",
  "token_endpoint": "https://www.googleapis.com/oauth2/v4/token",
  "userinfo_endpoint": "https://www.googleapis.com/oauth2/v3/userinfo",
  "revocation_endpoint": "https://accounts.google.com/o/oauth2/revoke",
  "jwks_uri": "https://www.googleapis.com/oauth2/v3/certs",
  "response_types_supported": [
    "code",
    "token",
    "id_token",
    "code token"
    "code id_token",
    "token id_token",
    "code token id_token",
    "none"
  ],
  "subject_types_supported": [
    "public"
  ],
  "id_token_signing_alg_values_supported": [
    "RS256"
  ],
  "scopes_supported": [
    "openid",
    "email",
    "profile"
  ],
  "token_endpoint_auth_methods_supported": [
    "client_secret_post",
    "client_secret_basic"
  ],
  "claims_supported": [
    "aud",
    "email",
    "email_verified",
    "exp",
    "family_name",
    "given_name",
    "iat",
    "iss",
    "locale",
    "name",
    "picture",
    "sub"
  ],

Configurazione delle impostazioni di autenticazione OpenID Connect

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

Identificatore: l'identificatore client univoco della tua istanza Looker. Dovrebbe essere fornito dal tuo OP.

Secret: la chiave client secret univoca per l'istanza di Looker. Dovrebbe essere fornito dal tuo OP.

Issuer (Emittente): l'URL protetto che identifica il tuo OP.

Pubblico: un identificatore che indica al tuo OP chi è il cliente. Spesso corrisponde al valore Identificatore, ma potrebbe essere un valore diverso.

Authorization URL (URL di autorizzazione): l'URL dell'OP in cui inizia la sequenza di autenticazione. Spesso chiamato authorization_endpoint in un documento di rilevamento.

URL token: l'URL in cui Looker recupera un token OAuth dopo l'autorizzazione di Looker. Spesso chiamato token_endpoint in un documento di rilevamento.

URL informazioni utente: l'URL in cui Looker recupererà informazioni dettagliate sull'utente. Spesso chiamato userinfo_endpoint in un documento di rilevamento.

Ambiti: un elenco separato da virgole di ambiti utilizzati dall'OP per fornire informazioni sugli utenti a Looker. Devi includere l'ambito openid e tutti gli ambiti che includono le informazioni richieste da Looker, tra cui indirizzi email, nomi utente ed eventuali attributi utente configurati nella tua istanza Looker.

Configurazione delle impostazioni degli attributi utente

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

Nella sezione Impostazioni attributi utente, inserisci il nome del reclamo del OP contenente le informazioni corrispondenti per ogni campo. Questo indica a Looker come mappare queste attestazioni alle informazioni utente di Looker al momento dell'accesso. Looker non è particolarmente specifico su come vengono create le rivendicazioni, ma è solo importante che le informazioni sulle rivendicazioni inserite qui corrispondano al modo in cui vengono definite nel tuo OP.

Attestazioni standard

Looker richiede informazioni su nome utente e indirizzo email per l'autenticazione utente. Inserisci le informazioni sul reclamo corrispondente del tuo OP in questa sezione:

Dichiarazione via 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 del cognome: la rivendicazione utilizzata dal tuo OP per i cognomi degli utenti, ad esempio family_name.

Tieni presente che alcuni OP utilizzano un'unica dichiarazione per i nomi, invece di separare il nome e il cognome. Se questo è il caso del tuo OP, inserisci la rivendicazione che memorizza i nomi in entrambi i campi Rivendicazione nome e Rivendicazione cognome. Per ogni utente, Looker utilizzerà i contenuti fino al primo spazio come Nome e tutto ciò che segue come Cognome.

Associazioni di attributi

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

Per accoppiare le rivendicazioni con gli attributi utente di Looker corrispondenti:

  1. Inserisci il reclamo come identificato dal tuo OP nel campo Claim (Rivendicazione) e l'attributo utente di Looker con cui vuoi accoppiarlo nel campo User Attributes (Attributi utente Looker).
  2. Seleziona Obbligatorio se vuoi bloccare l'accesso da parte di qualsiasi account utente a cui manca un valore nel campo della rivendicazione.
  3. Fai clic su + e ripeti questi passaggi per aggiungere altre coppie di rivendicazioni e attributi.

Tieni presente che alcuni OP possono avere attestazioni "nidificate". 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 è nidificata all'interno della rivendicazione address. Per le rivendicazioni nidificate, specifica le rivendicazioni principali e nidificate, separate da una barra ( /). Per configurare Looker per l'attestazione locality nell'esempio, devi inserire address/locality.

Gruppi e ruoli

Puoi scegliere Looker di creare gruppi che eseguono il mirroring dei gruppi OpenID Connect gestiti esternamente e quindi di assegnare ruoli Looker agli utenti in base ai gruppi OpenID Connect con mirroring. Quando apporti modifiche all'appartenenza al gruppo OpenID Connect, queste vengono automaticamente propagate alla configurazione del gruppo di Looker

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

Se attivi Esegui il mirroring dei gruppi OpenID Connect, Looker creerà un gruppo Looker per ogni gruppo OpenID Connect introdotto nel sistema. Questi gruppi Looker possono essere visualizzati nella pagina Groups della sezione Admin (Amministrazione) di Looker. I gruppi possono essere utilizzati per assegnare i ruoli ai membri, impostare i controlli di 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 Nuovi gruppi di utenti e Nuovi ruoli utente, inserisci i nomi dei gruppi o dei ruoli Looker a cui vuoi assegnare i nuovi utenti Looker quando accedono per la prima volta 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 applicati nuovamente se vengono rimossi dagli utenti dopo l'accesso iniziale.

Abilitazione dei gruppi OpenID Connect di mirroring

Per eseguire il mirroring dei tuoi gruppi OpenID Connect all'interno di Looker, attiva l'opzione Esegui il mirroring dei gruppi OpenID Connect:

Dichiarazione di gruppi: inserisci l'affermazione che il tuo OP utilizza per archiviare i nomi dei gruppi. Looker creerà un gruppo Looker per ogni gruppo OpenID Connect introdotto nel sistema dall'attestazione Gruppi. Questi gruppi 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 preferito / 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 Nome gruppo OpenID Connect. Gli utenti OpenID Connect inclusi nel gruppo OpenID Connect verranno aggiunti al gruppo con mirroring in Looker.

  2. Inserisci un nome personalizzato per il gruppo con mirroring nel campo Nome personalizzato. Questo è il nome che verrà visualizzato nella pagina Groups 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 per un gruppo, fai clic sulla X accanto all'insieme di campi del gruppo.

Se modifichi un gruppo con mirroring configurato in precedenza in questa schermata, la configurazione del gruppo cambierà, ma il gruppo rimarrà invariato. Ad esempio, puoi modificare il nome personalizzato di un gruppo, cambiando il modo in cui il gruppo viene visualizzato nella pagina Groups (Gruppi) di Looker, senza modificare 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 vengono riassegnati in base agli utenti che sono membri del gruppo OpenID Connect esterno a cui è associato il nuovo ID del 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 saranno più assegnati i ruoli in Looker tramite quel gruppo.

Eventuali modifiche apportate a un gruppo sottoposto a mirroring verranno applicate agli utenti del gruppo al successivo accesso a Looker.

Gestione avanzata dei ruoli

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

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

Se vuoi avere una maggiore flessibilità per personalizzare ulteriormente i gruppi all'interno di Looker, disattiva queste opzioni. I tuoi gruppi Looker continueranno a riflettere la configurazione di OpenID Connect, ma potrai eseguire ulteriori operazioni di gestione di gruppi e utenti all'interno di Looker, ad esempio potrai aggiungere utenti OpenID Connect a gruppi specifici di Looker o assegnare ruoli Looker direttamente agli utenti OpenID Connect.

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

Per le istanze di Looker esistenti in cui sono configurati gruppi con mirroring, queste opzioni sono attive per impostazione predefinita.

La sezione Gestione avanzata dei ruoli contiene le seguenti opzioni:

Impedisci ai singoli utenti OpenID Connect di ricevere ruoli diretti: l'attivazione di questa opzione impedisce agli amministratori di Looker di assegnare i ruoli di Looker direttamente agli utenti OpenID Connect. Gli utenti di OpenID Connect riceveranno i ruoli solo tramite le loro iscrizioni ai gruppi. Se agli utenti di OpenID Connect è consentita l'appartenenza a gruppi Looker integrati (senza mirroring), possono comunque ereditare i propri ruoli sia dai gruppi OpenID Connect con mirroring sia dai gruppi Looker integrati. Tutti gli utenti di OpenID Connect a cui erano stati assegnati direttamente ruoli verranno rimossi all'accesso successivo.

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

Impedisci l'appartenenza diretta a gruppi di tipo OpenID Connect: l'attivazione di questa opzione impedisce agli amministratori di Looker di aggiungere gli utenti OpenID Connect direttamente ai gruppi Looker integrati. Se i gruppi OpenID Connect con mirroring possono essere membri di gruppi Looker integrati, gli utenti OpenID Connect possono mantenere l'appartenenza a qualsiasi gruppo Looker padre. Tutti gli utenti OpenID Connect precedentemente assegnati ai gruppi Looker integrati verranno rimossi da questi gruppi all'accesso successivo.

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

Impedisci l'ereditarietà dei ruoli dai gruppi Connect non OpenID: l'attivazione di questa opzione impedisce ai membri dei gruppi OpenID Connect con mirroring di ereditare i ruoli dai gruppi Looker integrati. Tutti gli utenti OpenID Connect che in precedenza ereditavano i ruoli da un gruppo Looker padre perderanno questi ruoli all'accesso successivo.

Se questa opzione è disattivata, i gruppi OpenID Connect con mirroring o gli utenti OpenID Connect aggiunti come membri di un gruppo Looker integrato erediteranno i ruoli assegnati al gruppo Looker padre.

L'autenticazione richiede un ruolo: se questa opzione è attiva, agli utenti di OpenID Connect deve essere assegnato un ruolo. Gli utenti OpenID Connect a cui non è stato assegnato un ruolo non potranno accedere a Looker.

Se questa opzione è disattivata, gli utenti OpenID Connect possono eseguire l'autenticazione su Looker anche se non hanno alcun ruolo assegnato. Un utente a cui non è assegnato un ruolo non potrà visualizzare i dati o eseguire alcuna azione in Looker, ma potrà accedere a Looker.

Disattivazione dei gruppi OpenID Connect di mirroring

Se vuoi interrompere il mirroring dei tuoi gruppi OpenID Connect all'interno di Looker, disattiva l'opzione Esegui il mirroring dei gruppi OpenID Connect. Verranno eliminati i gruppi OpenID Connect mirror vuoti.

I gruppi OpenID Connect mirror non vuoti rimarranno disponibili per l'utilizzo nella gestione dei contenuti e nella creazione di ruoli. Tuttavia, gli utenti non possono essere aggiunti o rimossi dai gruppi OpenID Connect di mirroring.

Configurazione delle opzioni di migrazione

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

Accesso alternativo per gli utenti specificati

Gli accessi tramite email e password di Looker sono sempre disabilitati per gli utenti normali quando l'autenticazione OpenID Connect è abilitata. L'opzione Accesso alternativo per gli utenti specificati consente l'accesso alternativo basato su email utilizzando /login/email per gli amministratori e per gli utenti specificati con l'autorizzazione login_special_email.

L'attivazione di questa opzione è utile come opzione di riserva durante la configurazione di OpenID Connect nel caso in cui si verifichino problemi di configurazione di OpenID Connect in un secondo momento o per supportare alcuni utenti che non dispongono di account nella directory OpenID Connect.

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

Nel campo Unisci utenti utilizzando, specifica il metodo da utilizzare per unire il primo accesso Open ID Connect a un account utente esistente. Puoi unire gli utenti dai seguenti sistemi:

  • Email/password di Looker (non disponibile per Looker (Google Cloud core))
  • Google
  • LDAP (non disponibile per Looker (Google Cloud core))

Se disponi di più sistemi di autenticazione, puoi specificare più sistemi da utilizzare per l'unione in questo campo. Looker cercherà gli utenti nei sistemi elencati nell'ordine in cui sono specificati. Ad esempio, supponi di aver creato alcuni utenti utilizzando l'email/la password di Looker, di aver abilitato LDAP e di voler utilizzare OpenID Connect. Nell'esempio precedente, Looker eseguiva prima l'unione via email e password e poi tramite LDAP.

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

Unione degli utenti quando si utilizza Looker (Google Cloud core)

Quando utilizzi Looker (Google Cloud core) e OpenID Connect, l'unione funziona come descritto nella sezione precedente. Tuttavia, è possibile solo quando si verifica una delle due condizioni seguenti:

  • Condizione 1: gli utenti si autenticano in Looker (Google Cloud core) utilizzando le proprie identità Google tramite il protocollo OpenID Connect.
  • Condizione 2: prima di selezionare l'opzione di unione, hai completato i due passaggi seguenti:

    1. Identità degli utenti Federate in Google Cloud mediante Cloud Identity.
    2. Configura l'autenticazione OAuth come metodo di autenticazione di backup utilizzando gli utenti federati.

Se la configurazione non soddisfa una di queste due condizioni, l'opzione Unisci utenti utilizzando non sarà disponibile.

Durante l'unione, Looker cercherà record di utenti che condividono lo stesso indirizzo email.

Test dell'autenticazione utente

Mentre specifichi questa configurazione, fai clic sul pulsante Test per testare la tua configurazione di OpenID Connect.

I test verranno reindirizzati agli endpoint e apriranno una nuova scheda del browser. Nella scheda vengono visualizzati:

  • Se Looker è riuscito a comunicare con i vari endpoint ed eseguire
  • Una traccia della risposta dell'endpoint di autenticazione
  • Le informazioni utente che Looker riceve dall'endpoint delle informazioni utente
  • Sia la versione decodificata che quella non elaborata del token ID ricevuto

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

Suggerimenti:

  • Puoi eseguire questo test in qualsiasi momento, anche se OpenID Connect è parzialmente configurato. Eseguire un test può essere utile durante la configurazione per capire quali parametri devono essere configurati.
  • Il test utilizza le impostazioni inserite nella pagina Autenticazione OpenID Connect, anche se non sono state salvate. Il test non influirà o modificherà nessuna delle impostazioni di quella pagina.

Salva e applica impostazioni

Dopo aver inserito le informazioni e aver superato tutti i test, seleziona Ho confermato la configurazione qui sopra e voglio abilitare l'applicazione globale e fai clic su Aggiorna impostazioni per salvare.