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 nell'interfaccia utente di Looker potrebbero non corrispondere direttamente a quelli utilizzati dal tuo OP.

La pagina OpenID Connect nella sezione Autenticazione del menu Amministratore ti consente di configurare Looker per autenticare gli utenti utilizzando 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.

Requisiti

Looker visualizza la pagina OpenID Connect nella sezione Autenticazione del menu Amministrazione solo se sono soddisfatte le seguenti condizioni:

Se queste condizioni sono soddisfatte e non vedi la pagina OpenID Connect, apri una richiesta di assistenza per abilitare OpenID Connect nella tua istanza.

Considerazioni sulla pianificazione

  • Valuta la possibilità di utilizzare l'opzione Accesso alternativo per utenti specifici per consentire agli amministratori di Looker di accedere a Looker senza OpenID Connect.
  • Non disattivare l'autenticazione OpenID Connect mentre hai eseguito l'accesso a Looker utilizzando OpenID Connect, a meno che non sia configurato un accesso alternativo all'account. In caso contrario, potresti non riuscire più ad accedere all'app.
  • Looker può eseguire la migrazione degli account esistenti a OpenID Connect utilizzando indirizzi email provenienti da configurazioni di email e password correnti, LDAP, SAML o Google Auth. Potrai configurare questa opzione durante la procedura di configurazione.
  • Looker supporta l'autenticazione OpenID Connect solo utilizzando il flusso del codice di autorizzazione di OpenID Connect. Gli 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 in Configurazione delle impostazioni di autenticazione OpenID Connect.

Configurazione di OpenID Connect

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

  1. Fornisci il tuo URL di Looker al tuo provider OpenID Connect (OP).
  2. Recupera le informazioni richieste dal tuo OP.

Configurazione di Looker sul tuo OP

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

Recupero delle informazioni dal tuo operatore

Per configurare Looker per l'autenticazione OpenID Connect, hai bisogno delle seguenti informazioni dal tuo OP:

  • Un identificatore client e un client secret. Questi vengono solitamente forniti dal fornitore di servizi sul suo sito web quando configuri l'URI di reindirizzamento.
  • Durante il processo di autenticazione OpenID Connect, Looker si connette a tre endpoint diversi: un endpoint di autenticazione, un endpoint token ID e un endpoint informazioni utente. Avrai bisogno degli URL utilizzati dal tuo OP per ciascuno di questi endpoint.
  • Ogni OP fornirà le informazioni utente in set chiamati ambiti. Devi conoscere i nomi degli ambiti utilizzati dal tuo OP. OpenID Connect richiede l'ambito openid, ma il tuo OP includerà probabilmente altri ambiti, come email, profile e groups.
  • In OpenID Connect, gli attributi che memorizzano i dati utente vengono chiamati attestazioni. Devi sapere quali rivendicazioni vengono trasmesse da OP a Looker per fornire le informazioni utente che vuoi nella tua istanza di Looker. Looker richiede attestazioni che contengano informazioni su email e nome, ma se hai altri attributi utente, come fuso orario o reparto, Looker dovrà anche identificare le attestazioni che contengono queste informazioni. Le rivendicazioni possono essere incluse nella risposta dell'endpoint User Information o dell'endpoint ID Token. Looker può mappare le rivendicazioni restituite da uno dei due endpoint agli attributi utente di Looker.

Molti OP forniscono informazioni sulla configurazione di OpenID Connect sotto forma di documento di rilevamento, consentendoti 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 è tratta 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 tuo OP, dal tuo OP o dal tuo team di autenticazione interno per inserire le impostazioni di connessione nei seguenti campi:

Identificatore: l'identificatore client univoco per la tua istanza di Looker. Queste informazioni devono essere fornite dal tuo OP.

Secret: la chiave del client secret univoca per la tua istanza di Looker. Queste informazioni devono essere fornite dal tuo OP.

Emittente: l'URL sicuro che identifica il tuo OP.

Pubblico: un identificatore che indica al tuo OP chi è il cliente. Spesso corrisponde al valore dell'identificatore, ma può essere un valore diverso.

Authorization URL (URL di autorizzazione): l'URL del 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. Spesso chiamato token_endpoint in un documento di rilevamento.

URL informazioni utente: l'URL da 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 e tutti gli attributi utente configurati nell'istanza di Looker.

Configurare le impostazioni degli attributi utente

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

Nella sezione Impostazioni attributi utente, inserisci il nome della rivendicazione del tuo OP che contiene le informazioni corrispondenti per ogni campo. Indica a Looker come mappare queste rivendicazioni alle informazioni utente di Looker al momento dell'accesso. Looker non ha requisiti particolari per la creazione delle rivendicazioni, è importante solo che le informazioni inserite qui corrispondano al modo in cui le rivendicazioni sono definite nel tuo OP.

Rivendicazioni standard

Looker richiede il nome utente e l'indirizzo email per l'autenticazione dell'utente. Inserisci in questa sezione le informazioni corrispondenti della richiesta dell'OP:

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

Attestazione nome: l'attestazione utilizzata dal tuo OP per i nomi degli utenti, ad esempio given_name.

Attestazione cognome: l'attestazione utilizzata dal tuo OP per i cognomi degli utenti, ad esempio family_name.

Tieni presente che alcuni OP utilizzano una singola rivendicazione per i nomi, anziché separare nome e cognome. Se questo è il caso del tuo OP, inserisci l'attestazione che memorizza i nomi in entrambi i campi Attestazione nome e Attestazione cognome. Per ogni utente, Looker utilizzerà i contenuti fino al primo spazio come nome e tutto il resto come cognome.

Accoppiamenti di attributi

Se vuoi, puoi utilizzare i dati nelle 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 per gli utenti al tuo database, puoi abbinare le attestazioni OpenID Connect agli attributi utente di Looker per rendere specifiche per gli utenti le connessioni al database in Looker.

Per accoppiare le rivendicazioni agli attributi utente Looker corrispondenti:

  1. Inserisci l'attestazione identificata dal tuo OP nel campo Attestazione e l'attributo utente di Looker a cui vuoi associarla nel campo Attributi utente di Looker.
  2. Seleziona Obbligatorio se vuoi bloccare l'accesso da qualsiasi account utente a cui manca un valore nel campo dell'attributo.
  3. Fai clic su + e ripeti questi passaggi per aggiungere altre coppie di rivendicazioni e attributi.

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

Gruppi e ruoli

Puoi fare in modo che Looker crei gruppi che rispecchiano i tuoi gruppi OpenID Connect gestiti esternamente e poi assegni ruoli Looker agli utenti in base ai gruppi OpenID Connect di cui è stato eseguito il 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 gruppi e utenti di Looker. In questo modo, puoi gestire la tua iscrizione al gruppo per più strumenti Software as a Service (SaaS), come Looker, in un unico posto.

Se attivi l'opzione 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 Gruppi della sezione Amministrazione di Looker. I gruppi possono essere utilizzati per assegnare ruoli ai membri del gruppo, impostare controlli di accesso ai contenuti e assegnare 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 di eventuali gruppi o ruoli di Looker a cui vuoi assegnare i nuovi utenti di Looker al primo accesso a Looker:

Questi gruppi e ruoli vengono applicati ai nuovi utenti al primo accesso. Non vengono applicati agli utenti esistenti e non vengono riapplicati se vengono rimossi dagli utenti dopo il primo accesso.

Abilitare il mirroring dei gruppi OpenID Connect

Se utilizzi un'istanza di Looker (Google Cloud core), ti consigliamo di attivare il mirroring dei gruppi solo per il metodo di autenticazione principale e di non attivarlo per l'autenticazione OAuth di backup. Se abiliti il mirroring dei gruppi sia per il metodo di autenticazione principale che per quello secondario, si verificano i seguenti comportamenti:

  • Se un utente ha unito le identità, il mirroring dei gruppi corrisponderà al metodo di autenticazione principale, indipendentemente dal metodo di autenticazione effettivo utilizzato per accedere.
  • Se un utente non ha identità unite, il mirroring dei gruppi corrisponderà al metodo di autenticazione utilizzato per accedere.

Procedura per attivare i gruppi speculari

Per eseguire il mirroring dei gruppi OpenID Connect in Looker, attiva l'opzione Esegui il mirroring dei gruppi OpenID Connect:

Attestazione dei gruppi: inserisci l'attestazione utilizzata dalla tua OP per memorizzare i nomi dei gruppi. Looker creerà un gruppo Looker per ogni gruppo OpenID Connect introdotto nel sistema dalla rivendicazione Groups. Questi gruppi Looker possono essere visualizzati nella pagina Gruppi della sezione Amministrazione di Looker. I gruppi possono essere utilizzati per impostare i controlli di accesso ai contenuti e assegnare attributi utente.

Nome gruppo preferito / Ruoli / Nome gruppo OpenID Connect: questo insieme di campi consente di assegnare un nome 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 di cui è stato eseguito il mirroring in Looker.

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

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

  4. Fai clic su + per aggiungere altri set di campi per configurare altri gruppi speculari. Se hai configurato più gruppi e vuoi rimuovere la configurazione per un gruppo, fai clic su X accanto al set di campi del gruppo.

Se modifichi un gruppo sottoposto a mirroring precedentemente configurato in questa schermata, la configurazione del gruppo cambierà, ma il gruppo stesso rimarrà intatto. Ad esempio, puoi modificare il nome personalizzato di un gruppo, il che cambierà il modo in cui il gruppo viene visualizzato nella pagina Gruppi di Looker, ma non cambierà i ruoli assegnati e i membri del gruppo. Se modifichi l'ID gruppo OpenID Connect, il nome e i ruoli del gruppo vengono mantenuti, ma i membri del gruppo vengono riassegnati in base agli utenti che fanno parte del gruppo OpenID Connect esterno con il nuovo ID gruppo OpenID Connect.

Se elimini un gruppo in questa pagina, questo non verrà più replicato in Looker e i suoi membri non avranno più i ruoli in Looker assegnati tramite il gruppo.

Le 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 attivato l'opzione Esegui il mirroring dei gruppi OpenID Connect, Looker mostra queste impostazioni. Le opzioni in questa sezione determinano la flessibilità degli amministratori di Looker durante la configurazione di gruppi e utenti di Looker di cui è stato eseguito il mirroring da OpenID Connect.

Ad esempio, se vuoi che la configurazione di utenti e gruppi di Looker corrisponda esattamente alla configurazione di OpenID Connect, attiva queste opzioni. Se tutte e tre le prime opzioni sono abilitate, gli amministratori di Looker non possono modificare l'iscrizione ai gruppi di cui è stato eseguito il mirroring e possono assegnare ruoli agli utenti solo tramite i gruppi di cui è stato eseguito il mirroring di OpenID Connect.

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

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

Per le istanze di Looker esistenti che hanno configurato gruppi sottoposti a 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: se questa opzione è attivata, gli amministratori di Looker non possono assegnare 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'iscrizione a gruppi Looker integrati (non sottoposti a mirroring), possono comunque ereditare i ruoli sia dai gruppi OpenID Connect sottoposti a mirroring sia dai gruppi Looker integrati. I ruoli assegnati direttamente agli utenti OpenID Connect verranno rimossi al successivo accesso.

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

Impedisci l'iscrizione diretta ai gruppi non OpenID Connect: se attivi questa opzione, gli amministratori di Looker non possono aggiungere utenti OpenID Connect direttamente ai gruppi Looker integrati. Se i gruppi OpenID Connect di cui è stato eseguito il mirroring possono essere membri di gruppi Looker integrati, gli utenti OpenID Connect possono mantenere l'iscrizione a tutti i gruppi Looker principali. Gli utenti OpenID Connect a cui in precedenza erano stati assegnati gruppi Looker integrati verranno rimossi da questi gruppi al successivo accesso.

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 non OpenID Connect: se attivi questa opzione, i membri dei gruppi OpenID Connect di cui è stato eseguito il mirroring non ereditano i ruoli dai gruppi Looker integrati. Gli utenti OpenID Connect che in precedenza hanno ereditato ruoli da un gruppo Looker principale perderanno questi ruoli al successivo accesso.

Se questa opzione è disattivata, i gruppi OpenID Connect di cui è stato eseguito il mirroring o gli utenti OpenID Connect aggiunti come membri di un gruppo Looker integrato ereditano i ruoli assegnati al gruppo Looker principale.

Auth Requires Role: se questa opzione è attiva, gli utenti OpenID Connect devono avere un ruolo assegnato. Gli utenti OpenID Connect a cui non è assegnato un ruolo non potranno accedere a Looker.

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

Disattivazione del mirroring dei gruppi OpenID Connect

Se vuoi interrompere il mirroring dei gruppi OpenID Connect in Looker, disattiva l'opzione Esegui il mirroring dei gruppi OpenID Connect. La disattivazione dell'opzione comporta il seguente comportamento:

  • Qualsiasi gruppo OpenID Connect di mirroring senza utenti viene eliminato immediatamente.
  • Qualsiasi gruppo OpenID Connect di cui è stato eseguito il mirroring che contiene utenti viene contrassegnato come orfano. Se nessun utente di questo gruppo esegue l'accesso entro 31 giorni, il gruppo viene eliminato. Gli utenti non possono più essere aggiunti o rimossi dai gruppi OpenID Connect orfani.

Configurazione delle opzioni di migrazione

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

Accesso alternativo per utenti specificati

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

L'attivazione di questa opzione è utile come alternativa durante la configurazione di OpenID Connect, se in un secondo momento si verificano problemi di configurazione con OpenID Connect o se devi supportare alcuni utenti che non hanno account nella tua 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 un primo accesso OpenID Connect a un account utente esistente. Puoi unire gli utenti dei seguenti sistemi:

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

Se hai più sistemi di autenticazione, puoi specificare più di un sistema da unire in questo campo. Looker cercherà gli utenti nei sistemi elencati nell'ordine in cui sono specificati. Ad esempio, supponiamo di aver creato alcuni utenti utilizzando l'email/password di Looker, poi di aver attivato LDAP e ora di voler utilizzare OpenID Connect. Nell'esempio precedente, Looker unirebbe prima per email e password e poi per LDAP.

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

Unione degli utenti quando utilizzi 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 è soddisfatta 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 federati in Google Cloud utilizzando 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à i record utente che condividono lo stesso indirizzo email.

Test dell'autenticazione utente

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

I test reindirizzeranno agli endpoint e apriranno una nuova scheda del browser. La scheda mostra:

  • Se Looker è riuscito a comunicare con i vari endpoint e a convalidare
  • Una traccia della risposta dell'endpoint di autenticazione
  • Le informazioni utente che Looker ottiene dall'endpoint delle informazioni utente
  • Versioni decodificate e non 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 è configurato parzialmente. L'esecuzione di un test può essere utile durante la configurazione per vedere 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à né modificherà alcuna impostazione della pagina.

Salva e applica le impostazioni

Una volta inserite le informazioni e superati tutti i test, seleziona Ho confermato la configurazione precedente e voglio attivarla a livello globale e fai clic su Aggiorna impostazioni per salvare.