Controllo dell'accesso e gestione delle autorizzazioni

Gli amministratori di Looker possono gestire le azioni e le visualizzazioni consentite a un utente o a un gruppo di utenti di Looker specificando i seguenti accessi:

  • 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 concedere l'accesso ad altri utenti e gruppi. L'accesso ai contenuti è gestito dagli amministratori di Looker nel pannello Amministrazione o, se consentito, da singoli utenti dall'interno della cartella.
  • Accesso ai dati, che controlla i dati che ogni singolo utente può visualizzare. L'accesso ai dati è gestito principalmente utilizzando i set di modelli, che costituiscono la metà di un ruolo di Looker. Questi ruoli vengono poi applicati a utenti e gruppi. L'accesso ai dati può essere ulteriormente limitato all'interno di un modello utilizzando i filtri di accesso, che stabiliscono quali righe di dati possono essere visualizzate da ciascun utente e funzionano come dei filtri automatici sulle 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, come la possibilità di visualizzare tutte le programmazioni 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 cosa gli utenti possono fare e vedere in Looker.

Utenti e gruppi

In Looker esistono sia utenti individuali che gruppi di utenti. Gli utenti sono gestiti nella pagina Utenti del pannello Amministrazione di Looker, mentre i gruppi sono gestiti nella pagina Gruppi del pannello Amministrazione di Looker.

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

Controllo dell'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 livelli di accesso che determinano quali utenti possono modificare i contenuti delle cartelle (come Look e dashboard), visualizzarli e modificare le impostazioni:

  • Un utente deve disporre almeno del livello di accesso Visualizza per una cartella per vedere che la cartella esiste, per visualizzare i Look e le dashboard al suo interno e per copiarli.

  • Un utente deve disporre del livello di accesso Gestione accesso, Modifica per una cartella per gestire l'accesso alla cartella e modificarla e modificarne i contenuti (inclusa la ridenominazione delle cartelle, lo spostamento dei contenuti ed l'eliminazione di Look e dashboard).

L'accesso alle cartelle non permette di controllare altri elementi della piattaforma Looker o stabilire quali dati possano essere utilizzati dagli utenti per creare contenuti. Per gestire questo livello di accesso, consulta la sezione Controllo dell'accesso a funzionalità e dati di questa pagina.

Puoi ottenere istruzioni dettagliate per modificare i livelli di accesso delle cartelle degli utenti che sfogliano i contenuti su Looker consultando la pagina della documentazione relativa a 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 Accesso ai contenuti di Looker. Puoi anche consultare la pagina della documentazione relativa a 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. La sezione Modalità di interazione tra l'accesso ai contenuti e le autorizzazioni di questa pagina descrive in modo più dettagliato come l'accesso alle funzionalità influisce sull'accesso ai contenuti.

Controllo dell'accesso a funzionalità e dati

Per controllare l'accesso a funzionalità e dati in Looker, di solito devi creare un gruppo di utenti (una procedura facoltativa ma consigliata) e assegnare al gruppo un ruolo. Un ruolo associa un insieme di autorizzazioni a un insieme 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. Puoi limitare la capacità degli sviluppatori di Looker di 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 risultato… Questi sono i passaggi di base da seguire…
Controllare le azioni che può eseguire un utente Crea un set di autorizzazioni con 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 i dati a cui può accedere un utente Crea un modello con i limiti dati appropriati, poi assegna il gruppo o l'utente a un ruolo con quel modello

- oppure -

Utilizza i filtri di accesso per consentire all'utente l'accesso solo ai dati appropriati

- oppure -

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

- oppure -

Utilizza gli attributi utente con le concessioni di accesso per limitare l'accesso a specifici Explore, join, visualizzazioni o campi
Controllare le connessioni ai database a cui ha accesso uno sviluppatore 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ò anche influire sull'accesso ai contenuti. Per ulteriori dettagli su come l'accesso ai dati e alle funzionalità influisce sull'accesso ai contenuti, consulta la sezione Modalità di interazione tra l'accesso ai contenuti e le autorizzazioni di questa pagina.

Componenti di base da comprendere

Ruoli

Un ruolo è una combinazione di un set di autorizzazioni e di un set di modelli. Un set di autorizzazioni è composto da una o più autorizzazioni e definisce le azioni che il ruolo può eseguire. Un set di modelli è composto da uno o più modelli e definisce i modelli LookML a cui si applica il ruolo.

Dopo che lo hai creato, puoi assegnare al ruolo 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 Looker, mentre altre si applicano solo ai modelli all'interno dello stesso ruolo. Per ulteriori informazioni, consulta la pagina della documentazione relativa ai ruoli.

Progetti

I progetti ti consentono 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. Un progetto può contenere uno o più modelli e può essere configurato per utilizzare una o più connessioni.

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 ti consentono di assegnare valori arbitrari a utenti singoli o gruppi di utenti. Questi valori vengono poi utilizzati come input in varie parti di Looker per personalizzare l'esperienza di ciascun utente.

Uno dei modi 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 relativa agli 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 relativa agli attributi utente e la pagina della documentazione relativa al 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, join, visualizzazione o campo per limitare l'accesso alle strutture LookML soltanto agli utenti che possiedono i valori dell'attributo consentiti. Ad esempio, puoi utilizzare una concessione di accesso per limitare l'accesso alla dimensione salary soltanto agli utenti che possiedono il valore payroll nell'attributo utente department. Per una descrizione di come definire le concessioni di accesso, consulta la pagina della documentazione relativa al parametro access_grant.

Utilizzare i componenti di base

Controllare 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 è identificare uno o più gruppi di utenti che devono avere un set di autorizzazioni. Se necessario, puoi creare un gruppo appositamente. 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 individua 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 ruolo 1 consente di visualizzare le dashboard del modello 1.
  • Il ruolo 2 consente di visualizzare le dashboard e di eseguire esplorazioni nel modello 2.

Se assegni entrambi i ruoli allo stesso gruppo di utenti, questi ultimi potranno visualizzare le dashboard dei modelli 1 e 2, ma potranno eseguire esplorazioni solo nel 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. La procedura per concedere l'accesso ai campi è descritta di seguito:

  1. Crea un modello LookML (o una combinazione di modelli LookML) che contenga solo i campi a cui l'utente deve avere accesso.
  2. Vai ad Amministrazione > Utenti > Ruoli.
  3. Nella pagina Ruoli, crea un set di modelli che contenga i modelli creati e assegnalo a un ruolo.
  4. Per lavorare con gruppi di utenti, che è generalmente considerata una best practice, crea un gruppo nella pagina Gruppi di Looker. Ora puoi assegnare il gruppo ai ruoli appropriati nella pagina Ruoli.
  5. Per lavorare con singoli utenti, assegna i ruoli a ciascun utente dalla pagina Utenti o da quella Ruoli.

Puoi assegnare più ruoli a un utente o gruppo. Gli utenti possono quindi lavorare con tutti i modelli di tutti i ruoli a loro assegnati.

È importante sottolineare che il parametro hidden dei campi è progettato per creare un'esperienza migliore per gli utenti, non per controllare l'accesso ai campi. Il parametro hidden nasconde i campi nel selettore dei campi, ma non impedisce all'utente di utilizzarli. Se qualcuno invia all'utente un link che utilizza un campo nascosto, l'utente sarà in grado di visualizzarlo e il campo sarà visualizzabile anche in altri punti di Looker.

Controllare l'accesso degli utenti ai dati

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

  • Per impedire agli utenti di visualizzare determinate colonne di dati, controlla i campi a cui possono accedere, come descritto nella sezione Controllare l'accesso degli utenti ai campi di Looker. 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 di filtri di accesso, come descritto nella pagina della documentazione del 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 dell'attributo utente consentiti, come descritto nella pagina della documentazione del parametro access_grant.
  • Per limitare gli utenti di Looker all'esecuzione di query su un utente del database specifico per cui il tuo team del database ha limitato 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. Ti consigliamo anche di limitare l'accesso degli 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 di conseguenza un messaggio di errore.

Come il parametro di campo hidden non è destinato al controllo dell'accesso ai campi, il parametro hidden per le esplorazioni non impedisce a tutti gli utenti di visualizzare un'esplorazione. Il parametro hidden rimuove un'esplorazione dal menu di esplorazione, ma se un utente ha salvato dei contenuti che fanno riferimento a un'esplorazione nascosta, ha comunque accesso ai dati di quell'esplorazione.

Se utilizzi l'incorporamento firmato, assicurati di configurare i controlli di accesso ai dati tramite l'URL di incorporamento firmato.

Controllare 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 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 Gestisci progetti di Looker.
  2. Vai ad Amministrazione > Utenti > Ruoli.
  3. Nella pagina Ruoli, crea un set di modelli che contenga almeno uno dei modelli del progetto e assegnalo a un ruolo.
  4. Per lavorare con gruppi di utenti, che è generalmente considerata una best practice, crea un gruppo nella pagina Gruppi di Looker. Ora puoi assegnare il gruppo ai ruoli appropriati nella pagina Ruoli.
  5. Per lavorare con singoli utenti, assegna i ruoli a ciascun utente dalla pagina Utenti o da quella Ruoli.

Se uno sviluppatore Looker può vedere qualsiasi modello all'interno di un progetto, potrà visualizzare tutti i modelli che fanno parte del progetto. Ad esempio, questo potrebbe accadere se hai assegnato uno sviluppatore di Looker a un ruolo con un solo modello, ma questo modello faceva parte di un progetto che conteneva altri modelli.

Modalità di interazione tra l'accesso ai contenuti e le autorizzazioni

L'accesso ai contenuti è gestito dagli utenti quando visualizzano una cartella o da un amministratore di Looker nella pagina Accesso ai contenuti del pannello Amministrazione. I ruoli assegnati a un utente determinano le modalità del suo accesso a funzionalità e dati. e condizionano le azioni che può eseguire all'interno di una cartella e la possibilità di visualizzare Look e dashboard.

Visualizzare i dati in Look e dashboard

Per visualizzare i dati di un Look o di una dashboard, l'utente deve disporre almeno del livello di accesso che consente la visualizzazione alla cartella in cui sono archiviati i contenuti.

Per selezionare un Look e visualizzarne i dati, l'utente deve disporre delle autorizzazioni access_data e see_looks. Per selezionare una dashboard e visualizzarne i dati, l'utente deve disporre delle autorizzazioni access_data e see_user_dashboards.

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

  • Anche se l'utente veda un Look elencato in una cartella e possa raggiungerlo, la query del Look non sarà eseguibile e l'utente non potrà visualizzare i dati al suo interno.
  • Anche nel caso in cui l'utente veda una dashboard elencata in una cartella e possa raggiungerla, i riquadri a cui non ha accesso verranno visualizzati come vuoti. 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.

Ad esempio, un utente che dispone dell'accesso Visualizza per una cartella, dell'accesso ai dati per i dati alla base di tutti i Look nella cartella e delle autorizzazioni access_data e see_looks può visualizzare un elenco di tutti i Look nella cartella e può anche visualizzare i singoli Look. Se questo utente non dispone delle autorizzazioni per visualizzare le dashboard LookML o definite dall'utente, non vedrà le dashboard eventualmente presenti 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 accesso che consente la visualizzazione.

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

Ad esempio, un utente che dispone dell'autorizzazione see_looks, ma non dell'autorizzazione access_data, può vedere i titoli dei Look, ma non i dati al loro interno.

Gli utenti che dispongono dell'autorizzazione access_data, ma non di see_looks o see_user_dashboards, non sono in grado di visualizzare né le cartelle né i contenuti.

Modificare una cartella

Un utente che voglia organizzare una cartella, ossia ad esempio copiarne e spostarne i contenuti, rinominarla e spostarla, deve disporre del livello di accesso Gestione accesso, Modifica per quella cartella. Gli utenti devono disporre dell'autorizzazione manage_spaces per creare, modificare, spostare ed eliminare le cartelle.

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

Se disponi già di una configurazione dell'infrastruttura LDAP, SAML o OpenID, puoi utilizzare questo sistema per gestire gli accessi degli utenti. Le istruzioni per configurare l'infrastruttura LDAP sono disponibili nella pagina Autenticazione LDAP. Le istruzioni per configurare l'infrastruttura SAML sono disponibili nella pagina della documentazione relativa all'autenticazione SAML. Le istruzioni per configurare OpenID Connect sono disponibili nella pagina della documentazione relativa all'autenticazione OpenID Connect.

Se hai configurato dei gruppi durante l'implementazione dell'infrastruttura LDAP, SAML o OpenID Connect, puoi utilizzare questi gruppi all'interno di Looker. Tuttavia, devi tenere a mente alcuni aspetti:

  • Tutti i gruppi che hai creato vengono trasferiti automaticamente 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 Looker per assegnare livelli di accesso alle 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 dalle pagine di configurazione di LDAP, SAML o OpenID Connect. Abbiamo stabilito questa procedura 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 al database specifiche per utente alle query di Looker, come descritto nella pagina della documentazione sull'autenticazione LDAP.