Google Cloud SQL para PostgreSQL

Como criptografar o tráfego de rede

Uma prática recomendada é criptografar o tráfego de rede entre o aplicativo Looker e o banco de dados. Considere uma das opções descritas na página de documentação Como ativar o acesso seguro ao banco de dados.

Se você quiser usar a criptografia SSL, consulte a documentação do PostgreSQL.

Conectar usando o Application Default Credentials (ADC)

Para instâncias do Looker (Google Cloud Core), o Application Default Credentials (ADC) é compatível como um método de autenticação para o Google Cloud SQL para PostgreSQL. Ao configurar o ADC para o Google Cloud SQL para PostgreSQL, siga estes procedimentos:

Consulte a documentação do Looker (Google Cloud Core) para conferir o procedimento completo.

Usuários e segurança

Para realizar ações no banco de dados, o Looker precisa ter uma conta de usuário nele.

Se você estiver em uma instância do Looker (Google Cloud Core) e quiser usar o ADC, use o nome de usuário da conta de serviço representada que você adicionou ao banco de dados do Cloud SQL. O nome de usuário da conta de serviço terá o formato service-<project number>@gcp-sa-looker.iam.gserviceaccount.com. Se o nome de usuário da conta de serviço terminar com .gserviceaccount.com, remova a parte .gserviceaccount.com do nome de usuário. Depois de truncado, o nome de usuário será service-<project number>@gcp-sa-looker.iam.

Para configurar um usuário do banco de dados para o Looker, siga estas etapas no banco de dados:

  1. Crie um nome de usuário e uma senha do banco de dados.

    CREATE USER USERNAME WITH ENCRYPTED PASSWORD 'PASSWORD';
    
  2. Conceda permissões ao usuário do banco de dados para que o Looker possa realizar ações nele:

    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;
    
  3. Se você estiver usando um esquema diferente de public, execute este comando para conceder permissões de uso ao Looker:

    GRANT USAGE ON SCHEMA SCHEMA_NAME TO USERNAME;
    
  4. Para garantir que as tabelas futuras adicionadas ao esquema público também estejam disponíveis para o usuário do Looker, execute estes comandos:

    ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT SELECT ON tables TO USERNAME;
    ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT SELECT ON sequences TO USERNAME;
    

Dependendo da configuração, os comandos anteriores podem precisar ser alterados. Se outro usuário ou papel estiver criando tabelas para as quais o usuário do Looker precisa de permissões futuras, especifique um papel ou usuário de destino para aplicar as concessões de permissão do usuário do 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;

Por exemplo, se um usuário web_app criar tabelas e você quiser que o usuário looker possa usar essas tabelas, execute uma instrução GRANT para conceder permissões ao usuário looker em tabelas criadas pelo usuário web_app. O papel ou usuário de destino nesse caso é o usuário web_app, o que significa que você quer alterar os privilégios em tabelas criadas por web_app para que o usuário looker possa ter permissões para ler as tabelas. Veja um exemplo:

ALTER DEFAULT PRIVILEGES FOR USER web_app IN SCHEMA public GRANT SELECT ON tables TO looker;

Consulte ALTER DEFAULT PRIVILEGES no site do PostgreSQL para mais informações.

Configuração do esquema temporário

Crie um esquema de rascunho:

CREATE SCHEMA SCHEMA_NAME;

Conceda ao usuário administrador a função de membro do usuário:

GRANT USERNAME TO ADMIN_USER;

Mude a propriedade do esquema de rascunho para o usuário do Looker:

ALTER SCHEMA SCHEMA_NAME OWNER TO USERNAME;

Como definir o search_path

Antes de conectar o Looker ao banco de dados, defina um search_path adequado, que o SQL Runner do Looker pode usar para recuperar determinados metadados do banco de dados:

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

Como criar a conexão do Looker com o banco de dados

Siga estas etapas para criar a conexão do Looker com o banco de dados:

  1. Na seção Admin do Looker, selecione Connections e clique em Add Connection.
  2. No menu suspenso Dialect, selecione Google Cloud PostgreSQL.
  3. Preencher os detalhes de conexão. A maioria das configurações é comum para a maioria dos dialetos de banco de dados. Consulte a página de documentação Como conectar o Looker ao banco de dados para mais informações.
  4. Para verificar se a conexão foi estabelecida, clique em Test. Consulte a página de documentação Como testar a conectividade do banco de dados para informações sobre solução de problemas.
  5. Para salvar essas configurações, clique em Connect.

Suporte a recursos

Para que o Looker ofereça suporte a alguns recursos, o dialeto do banco de dados também precisa oferecer suporte a eles.

O Google Cloud PostgreSQL oferece suporte aos seguintes recursos a partir do Looker 26.0:

Recurso Compatível?
Looker (Google Cloud Core)
Conjuntos simétricos
Tabelas derivadas
Tabelas derivadas persistentes com base em SQL
Tabelas derivadas nativas persistentes
Visualizações estáveis
Interrupção de consultas
Tabelas dinâmicas com base em SQL
Fusos horários
SSL
Subtotais
Parâmetros adicionais da JDBC
Diferenciação entre maiúsculas e minúsculas
Tipo de local
Tipo de lista
Percentil
Percentil distinto
SQL Runner Show Processes
SQL Runner Describe Table
SQL Runner Show Indexes
SQL Runner Select 10
SQL Runner Count
SQL Explain
Credenciais do OAuth 2.0
Comentários de contexto
Pooling de conexão
Esboços HLL
Reconhecimento agregado
PDTs incrementais
Milissegundos
Microssegundos
Visualizações materializadas
Medidas de comparação de períodos
Contagem aproximada aproximada