Criptare il traffico di rete
È una best practice criptare il traffico di rete tra l'applicazione Looker e il tuo database. Valuta una delle opzioni descritte nella pagina della documentazione Abilita l'accesso sicuro ai database.
Se ti interessa utilizzare la crittografia SSL, consulta la documentazione di PostgreSQL.
Connettersi utilizzando le Credenziali predefinite dell'applicazione (ADC)
Per le istanze di Looker (Google Cloud core), le Credenziali predefinite dell'applicazione (ADC) sono supportate come metodo di autenticazione per Google Cloud SQL per PostgreSQL. Quando configuri ADC per Google Cloud SQL per PostgreSQL, devi eseguire le seguenti procedure:
- Aggiungi il account di servizio rappresentato al database Cloud SQL
- Configura la simulazione dell'identità dei account di servizio nel database Cloud SQL
- Esegui comandi di configurazione aggiuntivi per Cloud SQL per PostgreSQL
Per la procedura completa, consulta la documentazione di Looker (Google Cloud core).
Utenti e sicurezza
Per eseguire azioni sul database, Looker deve avere un account utente nel database.
Se utilizzi un'istanza di Looker (Google Cloud core) e vuoi utilizzare ADC, usa il nome utente del account di servizio rappresentato che hai aggiunto al database Cloud SQL. Il nome utente del account di servizio avrà il formato service-<project number>@gcp-sa-looker.iam.gserviceaccount.com. Se il nome utente del account di servizio termina con .gserviceaccount.com, rimuovi la parte .gserviceaccount.com del nome utente. Dopo il troncamento, il nome utente sarà simile a service-<project number>@gcp-sa-looker.iam.
Per configurare un utente del database da utilizzare per Looker, esegui i seguenti passaggi nel database:
Crea un utente del database e una password.
CREATE USER USERNAME WITH ENCRYPTED PASSWORD 'PASSWORD';Concedi le autorizzazioni all'utente del database in modo che Looker possa eseguire azioni sul database:
GRANT CONNECT ON DATABASE DATABASE_NAME to USERNAME; \c DATABASE_NAME GRANT SELECT ON ALL SEQUENCES IN SCHEMA public TO USERNAME; GRANT SELECT ON ALL TABLES IN SCHEMA public TO USERNAME;Se utilizzi uno schema diverso da
public, esegui questo comando per concedere le autorizzazioni di utilizzo a Looker:GRANT USAGE ON SCHEMA SCHEMA_NAME TO USERNAME;Per assicurarti che le tabelle future che aggiungi allo schema pubblico siano disponibili anche per l'utente Looker, esegui questi comandi:
ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT SELECT ON tables TO USERNAME; ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT SELECT ON sequences TO USERNAME;
A seconda della configurazione, potrebbe essere necessario modificare i comandi precedenti. Se un altro utente o ruolo sta creando tabelle per le quali l'utente Looker avrà bisogno di autorizzazioni future, devi specificare un ruolo o un utente di destinazione a cui applicare le concessioni di autorizzazioni dell'utente Looker:
ALTER DEFAULT PRIVILEGES FOR USER ANOTHER_USERNAME IN SCHEMA SCHEMA_NAME GRANT SELECT ON tables TO USERNAME;
ALTER DEFAULT PRIVILEGES FOR ROLE TARGET_ROLE IN SCHEMA SCHEMA_NAME GRANT SELECT ON sequences TO USERNAME;
Ad esempio, se un utente web_app crea tabelle e vuoi che l'utente looker possa utilizzare queste tabelle, devi eseguire un'istruzione GRANT per concedere all'utente looker le autorizzazioni sulle tabelle create dall'utente web_app. In questo caso, il ruolo o l'utente di destinazione è l'utente web_app, il che significa che vuoi modificare i privilegi sulle tabelle create da web_app in modo che l'utente looker possa avere le autorizzazioni per leggere le tabelle. Ecco un esempio:
ALTER DEFAULT PRIVILEGES FOR USER web_app IN SCHEMA public GRANT SELECT ON tables TO looker;
Per ulteriori informazioni, consulta ALTER DEFAULT PRIVILEGES sul sito web di PostgreSQL.
Configurazione dello schema temporaneo
Crea uno schema temporaneo:
CREATE SCHEMA SCHEMA_NAME;
Concedi all'utente amministratore l'appartenenza al ruolo utente:
GRANT USERNAME TO ADMIN_USER;
Modifica la proprietà dello schema temporaneo in modo che appartenga all'utente Looker:
ALTER SCHEMA SCHEMA_NAME OWNER TO USERNAME;
Impostare search_path
Prima di connettere Looker al database, devi impostare un search_path appropriato, che SQL Runner di Looker può utilizzare per recuperare determinati metadati dal database:
ALTER USER USERNAME SET search_path TO '$user',SCHEMA_NAME,SCHEMA_NAME_2,SCHEMA_NAME_3
^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^
include a comma-separated list of
all schemas you'll use with Looker
Creare la connessione Looker al database
Segui questi passaggi per creare la connessione da Looker al database:
- Nella sezione Amministrazione di Looker, seleziona Connessioni e poi fai clic su Aggiungi connessione.
- Dal menu a discesa Dialetto, seleziona Google Cloud PostgreSQL.
- Compila i dettagli della connessione. La maggior parte delle impostazioni è comune alla maggioranza dei dialetti di database. Per informazioni, consulta la pagina della documentazione Connettere Looker al database.
- Per verificare che la connessione sia riuscita, fai clic su Test. Per informazioni sulla risoluzione dei problemi, consulta la pagina della documentazione Testare la connettività del database.
- Per salvare queste impostazioni, fai clic su Connetti.
Funzionalità supportate
Affinché Looker supporti alcune funzionalità, anche il dialetto del database deve supportarle.
A partire da Looker 25.18, Google Cloud PostgreSQL supporta le seguenti funzionalità:
| Funzionalità | Supportata? |
|---|---|
| Livello di assistenza | Sì |
| Looker (Google Cloud core) | |
| Aggregati simmetrici | |
| Tabelle derivate | |
| Tabelle derivate SQL permanenti | |
| Tabelle derivate permanenti native | |
| Visualizzazioni stabili | |
| Eliminazione delle query | |
| Pivot basati su SQL | |
| Fusi orari | |
| SSL | |
| Subtotali | |
| Parametri JDBC aggiuntivi | |
| Maiuscole/minuscole | |
| Tipo di località | |
| Tipo di elenco | |
| Percentile | |
| Percentile valori distinti | |
| SQL Runner Mostra processi | |
| SQL Runner Descrivi tabella | |
| SQL Runner Mostra indici | |
| SQL Runner Seleziona 10 | |
| SQL Runner Count | |
| Spiega SQL | |
| Credenziali OAuth 2.0 | |
| Commenti di contesto | |
| Pool di connessioni | |
| Schizzi HLL | |
| Riconoscimento degli aggregati | |
| PDT incrementali | |
| Millisecondi | |
| Microsecondi | |
| Viste materializzate | |
| Misure in base al periodo | |
| Conteggio approssimato valori distinti |