Escolha como estabelecer ligação ao Cloud SQL

Esta página oferece uma vista geral das formas como pode estabelecer ligação à sua instância do Cloud SQL.

Antes de se poder ligar a uma instância do Cloud SQL, tem de decidir como implementar e configurar a instância do Cloud SQL e os recursos de rede de apoio. Se a sua instância do Cloud SQL já estiver configurada e implementada, esta página pode ajudar a compreender as diferentes formas de ligar os seus clientes à instância existente.

Tipo de endereço IP: privado ou público

Quando cria a sua instância do Cloud SQL pela primeira vez, pode optar por configurar a instância com um endereço IP público, um endereço IP privado ou uma combinação de ambos.

Escolhe a configuração do endereço IP da sua instância com base nos requisitos da sua aplicação. Depois de configurar a instância, especifica um endereço IP público, um endereço IP privado ou, em alguns casos, um nome DNS na string de ligação do cliente.

Endereço IP privado Endereço IP público
Descrição Endereço IP interno, apenas de rede da nuvem virtual privada (VPC) (privado) Um endereço IP externo (público) acessível através da Internet
Pontos de decisão

Precisa de estabelecer ligação a partir de clientes alojados em redes VPC no interior Google Cloud ou a partir de clientes que tenham acesso a essas redes VPC?

Em caso afirmativo, escolha um endereço IP privado para a instância.

Precisa de estabelecer ligação a partir de clientes fora da rede da VPC através da Internet pública? Google Cloud

Em caso afirmativo, escolha um endereço IP público para a instância.

Opções de configuração

São suportados os seguintes tipos de configurações de rede privada:

Quando se liga diretamente a uma instância através de um endereço IP público, tem de configurar redes autorizadas.

Uma alternativa mais segura para estabelecer ligação a uma instância do Cloud SQL que usa um IP público é usar um conetor do Cloud SQL (como o proxy Auth do Cloud SQL ou um dos conetores de linguagem do Cloud SQL).

Para ver instruções sobre como adicionar um IP público à sua instância, consulte o artigo Configure o IP público.

Para ligar a uma instância do Cloud SQL através de um endereço IP público, pode usar o cliente psql ou outro cliente disponível.

Resumo

Recomendação: Para uma maior segurança, recomendamos que configure a sua instância com um tipo de endereço IP privado, a menos que tenha requisitos específicos para uma instância do Cloud SQL acessível através da Internet ou se estiver a estabelecer ligação a partir de um cliente que não cumpre os requisitos para uma VPC.

Tipo de ligação: conetor do Cloud SQL ou direto

Quando estabelece a ligação a uma instância do Cloud SQL, pode usar um conetor do Cloud SQL ou estabelecer uma ligação direta.

Um conetor do Cloud SQL é o proxy Auth do Cloud SQL ou um dos conetores de linguagem do Cloud SQL.

Conetor do Cloud SQL Ligação direta
Descrição O proxy Auth do Cloud SQL, um proxy do lado do cliente, e os conectores de linguagem do Cloud SQL, bibliotecas do lado do cliente, oferecem acesso simplificado e seguro às suas instâncias do Cloud SQL, especialmente quando se liga a uma instância através de um endereço IP público. Uma ligação direta de um cliente a uma instância do Cloud SQL oferece uma ligação com menor latência. Pode estabelecer uma ligação direta a partir de um endereço IP público ou privado.
Pontos de decisão

Os conetores do Cloud SQL são vantajosos nos seguintes cenários:

  • Quando quiser ligar-se a uma instância do Cloud SQL através de um endereço IP público sem ter de configurar redes autorizadas.
  • Quando quiser encriptar automaticamente o tráfego de e para a base de dados com a validação da identidade do servidor e do cliente sem ter de gerir certificados SSL.
  • Quando está a usar a autenticação de base de dados do IAM e quer atualizar automaticamente as suas chaves de acesso OAuth 2.0.
  • Quando se liga a partir de um cliente ou de uma aplicação que usa um endereço IP atribuído dinamicamente ou temporário. A configuração de IP dinâmico pode ser comum para aplicações de plataforma como serviço (PaaS).

A utilização de uma associação direta oferece as seguintes vantagens:

  • Latência mais baixa em comparação com as ligações que usam conetores do Cloud SQL.
  • Não existe nenhuma dependência de pacote ou biblioteca adicional, ao contrário dos conetores do Cloud SQL.
  • Quando usa uma ligação direta, é responsável por configurar as definições de SSL/TLS.
Opções de configuração

Para configurar certificados SSL/TLS na instância do Cloud SQL e para o seu cliente, faça o seguinte:

  1. Escolha um modo de AC do servidor para a sua instância.
  2. Configure a sua instância para aplicar a encriptação SSL/TLS para ligações na instância.
  3. Crie certificados de cliente.
  4. Transfira os certificados do servidor e do cliente.
Resumo

Quando se liga a uma instância do Cloud SQL, pode usar um conetor do Cloud SQL ou ligar-se diretamente a partir de clientes.

Recomendação geral: Se estiver a estabelecer ligação a uma instância através de um endereço IP privado, use uma ligação direta. Também recomendamos que aplique o SSL e configure certificados SSL/TLS para a sua ligação.

Se estiver a ligar-se a uma instância através de um endereço IP público, use um conetor do Cloud SQL (o proxy Auth do Cloud SQL ou um dos conetores de linguagem do Cloud SQL).

Tipo de autenticação da base de dados: IAM ou incorporada

Quando se liga a uma instância, tem de se autenticar como utilizador da base de dados. Pode escolher entre a autenticação incorporada ou a autenticação da base de dados do IAM.

Autenticação da base de dados de IAM Autenticação incorporada
Descrição A autenticação de base de dados do IAM permite-lhe autenticar-se em bases de dados com Google Cloud contas de serviço e utilizadores do IAM através de tokens de acesso de curta duração em vez de palavras-passe. Pode gerir privilégios da base de dados através de principais do IAM, como utilizadores, contas de serviço e grupos. A autenticação incorporada usa nomes de utilizador e palavras-passe locais da base de dados para autenticar os utilizadores da base de dados.
Pontos de decisão Prefere centralizar a gestão de utilizadores em vários Google Cloud serviços através do IAM no Google Cloud? Em caso afirmativo, use a autenticação da base de dados do IAM. Tem aplicações ou fluxos de trabalho que dependem da autenticação de base de dados incorporada? Em caso afirmativo, use a autenticação incorporada.
Opções de configuração

Pode usar a autenticação de base de dados da IAM para utilizadores da IAM individuais, contas de serviço individuais e grupos. Para mais informações, consulte o artigo use a opção Gerir utilizadores com a autenticação da base de dados do IAM .

Se usar um conetor do Cloud SQL, o conetor processa a atualização automática dos tokens de acesso da IAM. Para mais informações, consulte o artigo sobre a autenticação automática da base de dados do IAM.

Pode usar a autenticação de base de dados integrada e configurar políticas de palavras-passe ao nível da instância e do utilizador. Para mais informações, consulte o artigo Autenticação integrada.
Resumo Recomendação: a menos que tenha aplicações ou fluxos de trabalho que dependam da autenticação da base de dados incorporada, use a autenticação da base de dados de IAM sempre que possível.

Opções de rede privada quando usa um endereço IP privado

Quando configura a sua instância para usar um endereço IP privado, pode escolher as seguintes opções de rede privada: acesso privado aos serviços, Private Service Connect ou ambos.

Funcionalidades suportadas

A tabela seguinte lista as funcionalidades suportadas pelo Cloud SQL quando se liga a uma instância configurada com uma ou ambas as opções de rede privada.

Funcionalidade Instância apenas com acesso a serviços privados Instância apenas com o Private Service Connect Instância com acesso a serviços privados e Private Service Connect
Estabeleça ligação a partir de várias VPCs Não suportado. Compatível. Suportado através da utilização do ponto final do Private Service Connect.
pglogical, PL/Proxy, dblink e postgres_fdw extensões Compatível. Não suportado. Suportado através da utilização da conetividade de saída para o acesso a serviços privados.
Réplicas externas Compatível. Não suportado. Suportado através da utilização da conetividade de saída para o acesso a serviços privados.
Ponto final de escrita Compatível. Não suportado. Suportado para acesso a serviços privados.
Altere a rede VPC associada para o acesso a serviços privados Compatível. Não aplicável. Não é suportado para o acesso a serviços privados porque a instância tem o Private Service Connect ativado. Não aplicável ao Private Service Connect.
Visibilidade do endereço IP do cliente para o Cloud SQL Compatível. Não suportado. Suportado através da utilização do endereço IP de acesso a serviços privados. Não é suportado através do ponto final do Private Service Connect.

Remova opções de rede de uma instância

O Cloud SQL suporta a remoção das seguintes opções de rede de uma instância:

  • IP público de uma instância com acesso a serviços privados e IP público
  • IP público de uma instância com IP público, acesso a serviços privados e Private Service Connect
  • Private Service Connect a partir de uma instância com Private Service Connect e acesso a serviços privados
  • Private Service Connect a partir de uma instância com Private Service Connect, acesso a serviços privados e IP público

Ative as opções de rede para uma instância

Pode ativar o Cloud SQL para suportar as seguintes opções de ligação para instâncias:

  • Acesso a serviços privados numa instância apenas com IP público
  • Private Service Connect numa instância com acesso apenas a serviços privados
  • Private Service Connect numa instância com acesso a serviços privados e IP público
  • IP público numa instância com acesso apenas a serviços privados

Limitações

  • Não pode criar uma instância com um endereço IP público e o Private Service Connect.
  • Não pode remover o acesso a serviços privados de uma instância com acesso a serviços privados e o Private Service Connect.
  • Não pode remover o acesso a serviços privados de uma instância com acesso a serviços privados e IP público.
  • Se tiver uma instância que use apenas IP público, não pode ativar o acesso privado aos serviços e o Private Service Connect ao mesmo tempo. Primeiro, ative o acesso a serviços privados e, em seguida, ative o Private Service Connect.
  • Não pode usar redes autorizadas para fazer a lista de autorizações baseada em endereços IP para instâncias do Private Service Connect.

Ferramentas para ligar ao Cloud SQL

A tabela seguinte contém algumas opções para estabelecer ligação ao Cloud SQL:

Opção de ligação Mais informações
Proxy Auth do Cloud SQL
CLI gcloud
Conetores de linguagem do Cloud SQL
Cloud Shell
Cloud Code
Faça a ligação através de ferramentas de administração de bases de dados de terceiros
pgAdmin
Toad Edge
Blendo

Resolver problemas

Se tiver problemas com a ligação, consulte as seguintes páginas para obter ajuda na depuração ou na procura de soluções para problemas conhecidos:

O que se segue?