Controllo dell'accesso e gestione delle autorizzazioni

Gli amministratori di Looker possono gestire le azioni e le visualizzazioni consentite agli utenti o ai gruppi 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 concederne l'accesso ad altri utenti e gruppi. L'accesso ai contenuti è gestito dagli amministratori di Looker nel riquadro Amministratore o, se consentito, dai singoli utenti dalla cartella.
  • Accesso ai dati, che controlla quali dati possono essere visualizzati dagli utenti. L'accesso ai dati è gestito principalmente tramite i 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, 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 i tipi di azioni consentite a un utente in Looker, inclusa 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 pianificazioni per l'invio dei dati. La maggior parte delle autorizzazioni viene applicata a set di modelli specifici, come la possibilità di visualizzare dashboard definite dall'utente in base a tali modelli.

Accesso ai dati, accesso alle funzionalità e accesso ai contenuti a utenti e gruppi si combinano per specificare cosa può fare e vedere gli utenti in Looker.

Utenti e gruppi

In Looker esistono sia utenti individuali che gruppi di utenti. Gli utenti sono gestiti nella pagina Users (Utenti) del riquadro Admin (Amministrazione) di Looker, mentre i gruppi sono gestiti nella pagina Groups (Gruppi) del riquadro Admin (Amministrazione) di Looker.

La best practice prevede l'utilizzo dei gruppi per evitare il tumore di assegnare, modificare e rimuovere i controlli per gli utenti singolarmente. In genere, la combinazione di attività che consentono un utente può essere organizzata in modo che l'utente appartenga a uno o più gruppi. Se nessuna combinazione di gruppi è sufficiente, valuta la possibilità di creare un gruppo con un solo utente, in modo da poter potenzialmente espandere quel gruppo a più persone in futuro. Per i filtri di accesso, valuta la possibilità di utilizzare gli attributi utente, in quanto puoi assegnare questi ultimi ai gruppi.

Controllare l'accesso ai contenuti degli utenti

Le cartelle Looker ti consentono di organizzare insiemi 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 modificare i contenuti delle cartelle (come Look e dashboard), visualizzarli e modificare le impostazioni:

  • Un utente deve disporre almeno del livello di accesso Visualizzazione per una cartella per verificare che la cartella esista, per visualizzare i Look e le dashboard che contiene e per copiare Look e dashboard nella cartella.

  • Un utente deve disporre del livello di accesso Manage Access, Edit (Gestione accesso, modifica) per gestire l'accesso alla cartella e modificarne la cartella e i relativi contenuti (inclusa la ridenominazione di cartelle, lo spostamento di contenuti e l'eliminazione di Look e dashboard).

Le cartelle non controllano in altro modo le azioni che gli utenti possono eseguire sulla piattaforma Looker o i dati che 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.

Nella pagina della documentazione Organizzazione e gestione dell'accesso ai contenuti vengono fornite istruzioni dettagliate per modificare i livelli di accesso delle cartelle degli utenti che esplorano i contenuti in Looker. 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.

Sebbene l'accesso ai contenuti sia gestito separatamente dall'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, visualizza un Look o una dashboard oppure gestisce una cartella. La sezione seguente descrive in che modo l'accesso alle funzionalità influisce sull'accesso ai contenuti in modo più dettagliato.

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 assegnare al gruppo un ruolo. Un ruolo associa un insieme di autorizzazioni a un set di modelli LookML. Sono i modelli a definire quali campi e dati siano disponibili.

Con filtri di accesso puoi applicare limiti dati specifici a determinati utenti. 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 intraprendere ...
Controllare le azioni che un utente può eseguire Crea un set di autorizzazioni con le autorizzazioni appropriate, quindi assegna il gruppo o l'utente a un ruolo con quel set di autorizzazioni
Controllare a quali campi 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

- oppure -

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

- o -

Usa gli attributi utente per fornire credenziali di database diverse a un gruppo o a un utente

- o -

Usa gli attributi utente con autorizzazioni di accesso per limitare l'accesso a specifici Explore o viste,
Controllare a quali connessioni di database può accedere uno sviluppatore Looker Crea un progetto con le connessioni appropriate, associalo a un insieme 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. Per ulteriori dettagli sugli effetti dell'accesso ai dati e alle funzionalità, consulta questa sezione di seguito.

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 un 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 aver creato un ruolo, puoi assegnare il ruolo a un singolo utente o a 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 all'intera istanza di Looker, 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 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. Un progetto può contenere uno o più modelli e può essere configurato per l'utilizzo di 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 sono poi utilizzati come input in varie parti di Looker per personalizzare l'esperienza di ciascun utente.

Un modo per controllare gli attributi utente è parametrizzare le credenziali del database in modo che siano specifiche 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 dell'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 Explore, join, view o field per limitare l'accesso a quelle strutture LookML solo agli utenti che dispongono dei valori degli attributi utente consentiti. Ad esempio, puoi utilizzare una concessione di accesso per limitare l'accesso alla dimensione salary solo agli utenti che hanno il valore payroll nel loro attributo utente department. Per una descrizione di come definire le concessioni di accesso, consulta la pagina della documentazione del parametro access_grant.

Utilizzo dei 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 prevede l'identificazione di uno o più gruppi di utenti per i quali è necessaria un'autorizzazione, creando un gruppo, se necessario. Se vuoi, puoi assegnare autorizzazioni a 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. Ecco alcuni esempi:

  • Il ruolo 1 consente di visualizzare le dashboard del modello 1.
  • Il ruolo 2 consente di visualizzare le dashboard ed esplorare il modello 2.

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 con 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) che contenga 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, crea un gruppo nella pagina Gruppi di Looker. Quindi, assegna il gruppo ai ruoli appropriati nella pagina Ruoli.
  4. Per lavorare con singoli utenti, assegna i ruoli a tali utenti 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 tutti i loro ruoli.

È importante notare che il parametro hidden per i campi è progettato per creare esperienze più pulite 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 utilizzarlo. Se qualcuno invia all'utente un link che utilizza un campo nascosto, l'utente sarà in grado di visualizzarlo in altre posizioni 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 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 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 degli attributi utente consentiti, come descritto nella pagina della documentazione del parametro access_grant.
  • Per limitare gli utenti di Looker alle query in esecuzione su un utente database specifico, 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. Ti consigliamo anche di limitare l'accesso degli utenti ai campi Looker corretti. In caso contrario, 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.

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 un'esplorazione dal menu Esplora, ma se un utente ha salvato contenuti che fanno riferimento a un'esplorazione nascosta, continuerà ad avere accesso ai dati dell'esplorazione.

Se utilizzi l'incorporamento con Single Sign-On (SSO), assicurati di configurare i controlli dell'accesso ai dati tramite l'URL per l'incorporamento del servizio 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 Gestione 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, crea un gruppo nella pagina Gruppi di Looker. Quindi, assegna il gruppo ai ruoli appropriati nella pagina Ruoli.
  4. Per lavorare con singoli utenti, assegna i ruoli a tali utenti dalla pagina Utenti o dalla pagina Ruoli.

Se uno sviluppatore di Looker può vedere qualsiasi modello che fa parte di un progetto, sarà in grado di visualizzare tutti i modelli che fanno parte di quel progetto. Questo può accadere, ad esempio, se hai assegnato a uno sviluppatore Looker un ruolo con un solo modello, che però fa parte di un progetto che conteneva altri modelli.

Come interagiscono l'accesso ai contenuti e le autorizzazioni

L'accesso ai contenuti viene gestito dagli utenti quando visualizzano una cartella oppure tramite un amministratore Looker nella pagina Accesso ai contenuti del riquadro Amministratore. I ruoli assegnati a un utente determinano le funzionalità e l'accesso ai dati relativi a quest'ultimo. 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 alla cartella in cui sono archiviati i contenuti.

Gli utenti devono disporre delle autorizzazioni access_data e see_looks per selezionare un Look e visualizzarne i dati. Gli utenti devono disporre delle autorizzazioni access_data e see_user_dashboards per selezionare una dashboard e visualizzarne i dati.

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

  • Anche se l'utente riesce a vedere un Look elencato in una cartella e può raggiungerlo, la query del Look non viene eseguita e l'utente non può visualizzare i dati al suo interno.
  • Anche se l'utente visualizza una dashboard elencata in una cartella e può raggiungerla, i riquadri a cui non ha accesso vengono 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 in Visualizzazione per una cartella, l'accesso ai dati sottostanti tutti i Look nella cartella e sia le autorizzazioni access_data che see_looks possono visualizzare un elenco di tutti i Look nella cartella e possono anche visualizzare quei Look. Se questo utente non dispone dell'accesso per visualizzare le dashboard LookML o definite dall'utente, non vedrà eventuali dashboard 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 di almeno l'autorizzazione di see_looks possono vedere i titoli dei Look nella cartella. Gli utenti che dispongono anche di almeno l'autorizzazione di see_user_dashboards possono vedere 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 ha l'autorizzazione see_looks ma non dispone dell'autorizzazione access_data può vedere i titoli dei Look, ma non può visualizzarne i dati.

Gli utenti che dispongono dell'autorizzazione access_data ma che non hanno see_looks o see_user_dashboards non possono vedere cartelle o contenuti.

Modifica di una cartella

Un utente deve avere il livello di accesso Manage Access, Edit (Gestione accesso, modifica) per poter organizzare la cartella, tra cui copia e spostamento di contenuti, ridenominazione e spostamento di cartelle e azioni simili. Gli utenti devono disporre dell'autorizzazione manage_spaces per creare, modificare, spostare ed eliminare le cartelle.

Utilizzo dell'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 della sezione 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 dei gruppi durante l'implementazione dell'infrastruttura LDAP, SAML o OpenID Connect, puoi utilizzare questi gruppi all'interno di Looker. Tuttavia, tieni presente quanto segue:

  • Tutti i gruppi che hai creato vengono trasferiti automaticamente in Looker e saranno visibili sulla pagina Groups (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 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 attendibile. Senza questa limitazione, la mappatura dei gruppi ai ruoli potrebbe distanziarsi dalla funzione stabilita nello schema LDAP, SAML o OpenID Connect.

Puoi utilizzare LDAP anche per applicare connessioni ai database specifiche degli utenti alle query Looker, come descritto nella pagina della documentazione Autenticazione LDAP.