Controllo dell'accesso e gestione delle autorizzazioni

Gli amministratori di Looker possono gestire le azioni e le visualizzazioni di un utente o di un gruppo di utenti in Looker specificando i seguenti dati di accesso:

  • Accesso ai contenuti, che controlla se un utente o un gruppo di utenti può visualizzare o gestire una cartella. Un utente che dispone dell'autorizzazione per visualizzare una cartella può navigare all'interno di essa e visualizzare gli elenchi delle dashboard e dei Look al suo interno. Un utente che dispone dell'autorizzazione per gestire una cartella può manipolarne i contenuti (copiarli, spostarli, eliminarli e rinominare dashboard e Look), organizzare la cartella stessa (rinominarla, spostarla o eliminarla) e concederne l'accesso ad altri utenti e gruppi. L'accesso ai contenuti è gestito dagli amministratori di Looker nel riquadro Admin (Amministratore), o, se consentito, dai singoli utenti all'interno della cartella.
  • Accesso ai dati, che controlla i dati che ogni utente può visualizzare. L'accesso ai dati è gestito principalmente tramite set di modelli, che costituiscono la metà di un ruolo di Looker. Questi ruoli sono poi applicati a utenti e gruppi. L'accesso ai dati può essere ulteriormente limitato all'interno di un modello utilizzando i filtri di accesso per limitare le righe di dati che possono visualizzare, come se ci fosse un filtro automatico per le proprie query. Puoi anche limitare l'accesso a specifici Explore, join, visualizzazioni o campi utilizzando le concessioni di accesso.
  • Accesso alle funzionalità, che controlla il tipo di azioni concesse a un utente in Looker, come la visualizzazione dei dati e dei contenuti salvati, la modifica dei modelli LookML, l'amministrazione di Looker e così via. L'accesso alle funzionalità è gestito dai set di autorizzazioni, che costituiscono l'altra metà di un ruolo di Looker. Alcune di queste autorizzazioni si applicano all'intera istanza di Looker, ad esempio la possibilità di vedere tutte le pianificazioni per l'invio dei dati. La maggior parte delle autorizzazioni si applica a set di modelli specifici, come la possibilità di visualizzare dashboard definite dall'utente in base a tali modelli.

L'accesso ai dati, alle funzionalità e ai contenuti di utenti e gruppi si combinano per specificare le azioni che gli utenti possono eseguire e visualizzare in Looker.

Utenti e gruppi

In Looker esistono sia utenti individuali che gruppi di utenti. Gli utenti sono gestiti nella pagina utenti del riquadro Amministratore di Looker, mentre i gruppi sono gestiti nella pagina Gruppi della finestra Amministrazione di Looker.

La best practice è utilizzare i gruppi, per evitare di dover assegnare, modificare e rimuovere i controlli a livello individuale. Di solito è possibile riunire in uno o più gruppi gli utenti che sono autorizzati a eseguire determinate combinazioni di attività. Se non è sufficiente una combinazione di gruppi sufficiente, puoi creare un gruppo con un solo utente, in modo da poter potenzialmente espandere il gruppo ad altre persone in futuro. Per i filtri di accesso, valuta la possibilità di utilizzare gli attributi utente, in quanto puoi assegnare gli attributi utente ai gruppi.

Controllare l'accesso ai contenuti degli utenti

Le cartelle di Looker ti consentono di organizzare set di dashboard e Look. Possono contenere anche altre cartelle, per permettere una gerarchia di organizzazione nidificata.

Le cartelle ti consentono di impostare i livelli di accesso che determinano quali utenti possono modificarne i contenuti (come Look e dashboard), visualizzarli e modificare le impostazioni:

  • Un utente che voglia visualizzare una cartella e accedere all'elenco dei suoi contenuti deve disporre almeno del livello di Visualizzazione.

  • Per poter organizzare una cartella, l'utente deve disporre del livello di accesso Gestione accesso, modifica, ad esempio copia e spostamento di contenuti, ridenominazione e spostamento di cartelle e azioni simili.

Le cartelle non stabiliscono in alcun modo cosa possono fare gli utenti sulla piattaforma Looker o quali dati possono utilizzare per creare i propri contenuti. Per gestire questo livello di accesso, consulta la sezione Controllo dell'accesso a funzionalità e dati in questa pagina.

Le istruzioni dettagliate sulla modifica dei livelli di accesso delle cartelle per gli utenti che sfogliano i contenuti in Looker sono illustrate nella pagina della documentazione Organizzazione e gestione dell'accesso ai contenuti. Gli amministratori di Looker possono anche modificare i livelli di accesso alle cartelle per tutti i gruppi e gli utenti dalla pagina Content Access (Accesso ai contenuti) di Looker. Puoi anche consultare la pagina della documentazione Progettazione e configurazione di un sistema di livelli di accesso per informazioni sulla progettazione dei livelli di accesso di una singola istanza.

Anche se l'accesso ai contenuti è gestito separatamente rispetto all'accesso alle funzionalità, il ruolo assegnato a un utente può condizionare il modo in cui quest'ultimo visualizza Look e dashboard elencati in un progetto, accede a Look o dashboard o gestisce una cartella. In una sezione di seguito è descritto in modo più dettagliato come l'accesso alle funzionalità condizioni l'accesso ai contenuti.

Controllo dell'accesso a funzionalità e dati

Per controllare l'accesso a funzionalità e dati in Looker, di solito puoi creare un gruppo di utenti (una procedura facoltativa ma consigliata) e assegnarlo a un ruolo. Un ruolo associa un set di autorizzazioni a un set di modelli LookML. Sono i modelli a definire quali campi e dati siano disponibili.

Puoi applicare limiti dati specifici a determinati utenti con i filtri di accesso. Inoltre, puoi limitare gli sviluppatori di Looker a lavorare con modelli basati su database particolari utilizzando i progetti.

Puoi anche controllare l'accesso a specifici Explore, join, visualizzazioni o campi creando concessioni di accesso. Le concessioni di accesso consentono l'accesso solo a utenti a cui sono stati assegnati specifici valori dell'attributo utente.

Se vuoi ottenere questo ... Ecco i passaggi di base da seguire ...
Controllare le azioni che può eseguire un utente Crea un set di autorizzazioni che contenga le autorizzazioni appropriate, poi assegna il gruppo o l'utente a un ruolo con quel set di autorizzazioni
Controllare i campi a cui può accedere un utente Crea un modello con i campi appropriati, poi assegna il gruppo o l'utente a un ruolo con quel modello
Controllare a quali dati può accedere un utente Crea un modello con le limitazioni di dati appropriate, quindi assegna un gruppo o un utente a un ruolo con quel modello

- o -

Utilizza i filtri di accesso per limitare un utente ai dati appropriati

- o -

Utilizza gli attributi utente per fornire credenziali del database diverse a un gruppo o un utente

- o -

Utilizza gli attributi utente con concessioni di accesso per limitare le viste, le esplorazioni o i campi
Controlla le connessioni ai database a cui hanno accesso gli sviluppatori di Looker Crea un progetto con le connessioni appropriate, associalo a un set di modelli, poi assegna il gruppo o l'utente a un ruolo con quei modelli

L'accesso alle funzionalità può influire anche sull'accesso ai contenuti. Consulta questa sezione di seguito per ulteriori informazioni su come l'accesso ai dati e alle funzionalità condizioni l'accesso ai contenuti.

Componenti di base da comprendere

Ruoli

Un ruolo è una combinazione di un set di autorizzazioni e di un set di modelli. Il set di autorizzazioni determina le azioni che il ruolo può eseguire, mentre il set di modelli determina i modelli LookML che il ruolo può visualizzare.

Dopo aver creato un ruolo, puoi assegnargli un singolo utente o un gruppo di utenti. Se aggiungi alcuni ruoli a un singolo utente e altri a un gruppo a cui l'utente appartiene, quest'ultimo erediterà tutti i ruoli.

Alcune autorizzazioni sono pertinenti per l'intera istanza di Looker, altre si applicano solo ai modelli con lo stesso ruolo. Per ulteriori informazioni, consulta la pagina della documentazione Ruoli.

Progetti

I progetti permettono di limitare le connessioni ai database utilizzabili all'interno dei modelli. In questo modo puoi controllare con quali set di dati gli sviluppatori di Looker possono interagire quando creano i modelli.

Questa limitazione definita tramite i progetti vale anche per SQL Runner in Looker, in modo da garantire che gli sviluppatori non possano accedere a connessioni ai database non autorizzate utilizzando SQL Runner.

Attributi utente

Gli attributi utente consentono di assegnare valori arbitrari a gruppi di utenti o singoli utenti. Questi valori sono poi utilizzati come input in varie parti di Looker per personalizzare l'esperienza di ciascun utente.

Un modo per controllare l'accesso tramite gli attributi utente è fissare i parametri delle credenziali del database in modo che siano specifici per ciascun utente. Questo metodo è utilizzabile soltanto se esistono più utenti con diversi accessi ai dati del database. Per ulteriori informazioni, consulta la pagina della documentazione Attributi utente.

Un altro modo per utilizzare gli attributi utente per controllare l'accesso è tramite i filtri di accesso. I filtri di accesso permettono di utilizzare uno o più attributi utente come filtri di dati. Ad esempio, questa operazione può essere opportuna quando vuoi assegnare a ciascun utente un nome aziendale e filtrare per quel nome tutti i contenuti che possono visualizzare. Per una descrizione di come applicare i filtri di accesso, consulta la pagina della documentazione Attributi utente e la pagina della documentazione del parametro access_filter.

Gli attributi utente controllano anche le concessioni di accesso. Una concessione di accesso specifica un attributo utente e definisce i valori che tale attributo deve possedere per accedere a Explore, join, visualizzazioni o campi. Puoi quindi utilizzare il parametro required_access_grants a livello di esplorazione, unione, vista o campo per limitare l'accesso alle strutture LookML solo agli utenti che dispongono dei valori consentiti per gli attributi utente. Ad esempio, puoi utilizzare una concessione di accesso per limitare l'accesso alla dimensione salary solo agli utenti che hanno il valore payroll nel proprio attributo utente department. Per una descrizione su come definire le concessioni di accesso, consulta la pagina della documentazione relativa al parametro access_grant.

Utilizzo dei componenti di base

Controlla l'accesso alle funzionalità

Le autorizzazioni controllano i tipi di attività che un utente o un gruppo può svolgere. La procedura per concedere le autorizzazioni è descritta di seguito:

  1. La best practice consiste nell'identificare uno o più gruppi di utenti per i quali è richiesta un'autorizzazione, creando un gruppo se necessario. Se vuoi, puoi assegnare le autorizzazioni ai singoli utenti.
  2. Crea un set di autorizzazioni che contenga le autorizzazioni appropriate.
  3. Se alcune delle autorizzazioni da assegnare sono specifiche per determinati modelli, crea o identifica un set di modelli esistente.
  4. Crea un ruolo che unisca il set di autorizzazioni e, se necessario, il set di modelli.
  5. Assegna il ruolo dalla pagina Ruoli. Dopo che hai creato il ruolo, puoi anche assegnarlo a un utente dalla pagina Utenti.

Puoi assegnare più ruoli a un utente o gruppo. In quel caso, gli utenti disporranno delle autorizzazioni relative a tutti i ruoli a loro assegnati. Ad esempio:

  • Il Role1 consente di visualizzare le dashboard del Modello 1.
  • Il Role2 consente di visualizzare le dashboard del modello 2 e di esplorarle.

Se assegni entrambi i ruoli allo stesso gruppo di utenti, questi ultimi potranno visualizzare le dashboard dei modelli 1 e 2 ma esplorare solo quelle del modello 2.

Controllare l'accesso degli utenti ai campi di Looker

I campi su cui un utente può lavorare sono controllati dai modelli a cui può accedere. Ecco come un utente può ottenere l'accesso al campo:

  1. Crea un modello LookML (o una combinazione di modelli LookML) contenente solo i campi a cui l'utente deve avere accesso.
  2. Crea un set di modelli che contenga i modelli creati e assegnalo a un ruolo. Puoi farlo dalla pagina Roles (Ruoli) di Looker.
  3. Per lavorare con gruppi di utenti, che in genere è il nostro suggerimento, puoi creare un gruppo nella pagina Gruppi di Looker. Quindi, assegna il gruppo ai ruoli appropriati sulla pagina Ruoli.
  4. Per lavorare con singoli utenti, assegna i ruoli a ciascun utente dalla pagina Utenti o dalla pagina Ruoli.

Puoi assegnare più ruoli a un utente o gruppo. Gli utenti possono quindi lavorare con tutti i modelli di ogni ruolo che hanno.

È importante notare che il parametro hidden per i campi è progettato per creare un'esperienza più pulita per gli utenti, non per controllare l'accesso ai campi. Il parametro hidden nasconde i campi nel selettore campi, ma non impedisce all'utente di utilizzarli. Se qualcuno invia all'utente un link che utilizza un campo nascosto, l'utente può visualizzarlo anche in altri luoghi di Looker.

Controllare l'accesso degli utenti ai dati

Esistono diversi modi per controllare l'accesso degli utenti ai dati, a seconda del caso d'uso:

  • Per impedire agli utenti di visualizzare determinate colonne di dati, controlla i campi a cui hanno accesso, come descritto sopra. A patto che l'utente non possa sviluppare e non possa utilizzare SQL Runner, potrà utilizzare solo i campi a cui ha accesso.
  • Per impedire agli utenti di visualizzare determinate righe di dati, applica i campi del filtro di accesso come descritto nella pagina della documentazione relativa al parametro access_filter.
  • Per limitare l'accesso a specifici Explore, join, visualizzazioni o campi, crea concessioni di accesso che limitino l'accesso solo agli utenti a cui sono assegnati i valori degli attributi utente consentiti, come descritto nella pagina della documentazione relativa al parametro access_grant.
  • Per limitare gli utenti di Looker alle query in esecuzione su uno specifico utente del database, che il tuo team di database ha configurato per limitare l'accesso ai dati, utilizza gli attributi utente. Questi attributi permettono di parametrizzare la connessione al database in modo che un gruppo di utenti o utenti singoli debbano eseguire le query con credenziali del database specifiche. Dovresti anche considerare di limitare gli utenti ai campi Looker corretti. Se non lo fai, l'utente di Looker potrebbe provare a eseguire query su un campo a cui l'utente del database non ha accesso e ricevere un errore.

Proprio come il parametro del campo hidden non è destinato a controllare l'accesso ai campi, il parametro hidden per le esplorazioni non impedisce a tutti gli utenti di visualizzare un'esplorazione. Il parametro hidden rimuove Esplora dal menu Esplora, ma se un utente ha salvato contenuti che fanno riferimento a un Explore nascosto, ha comunque accesso ai dati di Explore.

Se utilizzi l'incorporamento SSO (Single Sign-On), assicurati di configurare i controlli di accesso ai dati tramite l'URL di incorporamento SSO.

Controlla l'accesso degli sviluppatori alle connessioni ai database

A differenza dei normali utenti, gli sviluppatori di Looker non sono condizionati da modelli e filtri di accesso, perché possono semplicemente integrare o modificare i modelli LookML. Tuttavia, gli amministratori possono comunque limitare le connessioni ai database degli sviluppatori di Looker utilizzando i progetti. Ecco come fare:

  1. Crea un progetto che limiti un certo numero di modelli a un determinato numero di connessioni ai database. Puoi farlo dalla pagina Manage Projects (Gestisci progetti) di Looker.
  2. Crea un set di modelli che contenga almeno uno dei modelli del progetto e assegnalo a un ruolo. Puoi farlo dalla pagina Roles (Ruoli) di Looker.
  3. Per lavorare con gruppi di utenti, che in genere è il nostro suggerimento, puoi creare un gruppo nella pagina Gruppi di Looker. Quindi, assegna il gruppo ai ruoli appropriati sulla pagina Ruoli.
  4. Per lavorare con singoli utenti, assegna i ruoli a ciascun utente dalla pagina Utenti o dalla pagina Ruoli.

Se uno sviluppatore di Looker può vedere qualsiasi modello che fa parte di un progetto, potrà visualizzare tutti i modelli che fanno parte di quel progetto. Questo può succedere se hai assegnato uno sviluppatore Looker a un ruolo con un solo modello, ma quel modello è stato parte di un progetto che conteneva altri modelli.

Come interagiscono l'accesso ai contenuti e le autorizzazioni

L'accesso ai contenuti è gestito dagli utenti quando visualizzano una cartella o gestito da un amministratore di Looker nella pagina Content Access (Accesso ai contenuti) nel riquadro Admin (Amministrazione). I ruoli assegnati a un utente determinano la sua funzionalità e l'accesso ai dati. e condizionano le azioni che può eseguire all'interno di una cartella e la possibilità di visualizzare Look e dashboard.

Visualizzazione di dati in Look e dashboard

Per visualizzare i dati di Look o dashboard, l'utente deve disporre almeno del livello di accesso Visualizzazione nella cartella in cui sono archiviati i contenuti.

Per selezionare un look e visualizzarne i dati, gli utenti devono disporre delle autorizzazioni access_data e see_looks. Per selezionare una dashboard e visualizzarne i dati, gli utenti devono disporre delle autorizzazioni access_data e see_user_dashboards.

Per visualizzare i dati in un Look o nel riquadro di una dashboard, l'utente deve avere accesso a quei dati. Senza l'accesso ai dati necessario:

  • Anche se l'utente può visualizzare un Look elencato in una cartella e può raggiungerlo, la query del Look non viene eseguita e l'utente non può vedere i dati del Look.
  • Anche se l'utente visualizza una dashboard elencata in una cartella e può raggiungerla, qualsiasi riquadro a cui l'utente non ha accesso viene visualizzato come vuoto. Se una dashboard contiene riquadri creati da più modelli, l'utente potrà visualizzare i riquadri associati ai modelli a cui ha accesso e quelli associati ad altri modelli mostreranno un errore.

In questo esempio, l'utente dispone dell'accesso Visualizza per la cartella, dell'accesso ai dati e delle autorizzazioni access_data e see_looks per poter visualizzare gli elenchi di Look e accedere ai singoli Look. L'utente non dispone delle autorizzazioni per visualizzare le dashboard LookML o definite dall'utente, quindi le dashboard non appaiono nella cartella.

Visualizzazione di una cartella e degli elenchi di Look e dashboard

Un utente che voglia visualizzare una cartella e accedere all'elenco dei suoi contenuti deve disporre almeno del livello di Visualizzazione.

Gli utenti che dispongono almeno dell'autorizzazione see_looks vedono i titoli dei Look nella cartella. Gli utenti che dispongono anche di almeno see_user_dashboards autorizzazione vedranno i titoli delle dashboard nella cartella. Tuttavia, ciò non implica la possibilità di visualizzare i dati di Look o dashboard.

In questo esempio, l'utente dispone dell'autorizzazione see_looks ma non di access_data. Di conseguenza l'utente può vedere i titoli dei Look ma non può visualizzare i dati di Look. L'utente può disporre o meno dell'accesso necessario per visualizzare i dati dei Look.

Gli utenti che hanno l'autorizzazione access_data, ma non hanno see_looks o see_user_dashboards non possono visualizzare alcuna cartella o contenuto.

Modificare una cartella

Un utente deve disporre del livello di accesso Gestione dell'accesso, modifica per poter organizzare la cartella, ad esempio copiarne e spostarne i contenuti, rinominarla e spostarla e compiere azioni simili. Gli utenti devono disporre dell'autorizzazione manage_spaces anche per creare, modificare, spostare ed eliminare le cartelle.

Utilizzare l'infrastruttura per le autorizzazioni degli utenti (LDAP, SAML e OpenID Connect)

Se hai già configurato un'infrastruttura LDAP, SAML o OpenID, puoi utilizzare questo sistema per gestire gli accessi degli utenti. Le istruzioni per configurare l'infrastruttura LDAP sono disponibili alla pagina dedicata all'autenticazione LDAP. Le istruzioni per configurare l'infrastruttura SAML sono disponibili alla pagina della documentazione relativa all'autenticazione SAML. Le istruzioni per configurare l'infrastruttura OpenID Connect sono disponibili alla pagina della documentazione relativa all'autenticazione OpenID Connect.

Se hai configurato gruppi nell'implementazione di LDAP, SAML o OpenID Connect, puoi utilizzare questi gruppi anche all'interno di Looker. Tuttavia, esistono alcune considerazioni da tenere presenti:

  • Tutti i gruppi che hai creato vengono automaticamente trasferiti in Looker e saranno visibili nella pagina Gruppi. Verrà creato un gruppo Looker per ogni gruppo LDAP, SAML o OpenID Connect e il nome del gruppo Looker rispecchierà quello del gruppo LDAP, SAML o OpenID Connect.
  • Potrai utilizzare questi gruppi di Looker per assegnare livelli di accesso per le cartelle e attributi utente ai membri dei gruppi.
  • Non potrai utilizzare i gruppi Looker per configurare i ruoli, come faresti con un gruppo creato manualmente. Dovrai invece mappare i gruppi LDAP, SAML o OpenID Connect ai ruoli Looker durante il processo di configurazione e potrai modificare i ruoli assegnati solo dalle pagine di configurazione di LDAP, SAML o OpenID Connect. Abbiamo stabilito questa strategia per fare in modo che i gruppi LDAP, SAML o OpenID Connect rimangano la tua unica fonte di riferimento. Senza questa limitazione, la mappatura dei gruppi ai ruoli potrebbe distanziarsi dalla funzione stabilita nello schema LDAP, SAML o OpenID Connect.

Puoi anche utilizzare LDAP per applicare connessioni ai database specifiche dell'utente alle query di Looker, come descritto nella pagina della documentazione relativa all'autenticazione LDAP.