Escolher como se conectar ao Cloud SQL

Nesta página, apresentamos uma visão geral das maneiras de se conectar à instância do Cloud SQL.

Antes de se conectar a uma instância do Cloud SQL, é necessário decidir como implantar e configurar a instância do Cloud SQL e os recursos de rede de suporte. Se a instância do Cloud SQL já estiver configurada e implantada, esta página poderá ajudar você a entender as diferentes maneiras de conectar seus clientes à instância atual.

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

Ao criar a instância do Cloud SQL, você pode escolher se quer configurá-la com um endereço IP público, um endereço IP particular ou uma combinação de ambos.

Você escolhe a configuração de endereço IP da instância com base nos requisitos do aplicativo. Depois de configurar a instância, especifique um endereço IP público, um endereço IP particular ou, em alguns casos, um nome DNS na string de conexão do cliente.

Endereço IP particular Endereço IP público
Descrição Endereço IP interno, somente de rede de nuvem privada virtual (VPC) (particular) Um endereço IP externo acessível pela Internet (público)
Pontos de decisão

Você precisa se conectar de clientes hospedados em redes VPC dentro Google Cloud ou de clientes que têm acesso a essas redes VPC?

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

Você precisa se conectar de clientes fora da Google Cloud rede VPC pela Internet pública?

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

Opções de configuração

Há suporte para os seguintes tipos de configurações de rede particular:

Ao se conectar diretamente a uma instância usando um endereço IP público, é necessário configurar redes autorizadas.

Outra alternativa mais segura para se conectar a uma instância do Cloud SQL que usa IP público é usar um conector do Cloud SQL (como o proxy de autenticação do Cloud SQL ou um dos conectores de linguagem do Cloud SQL).

Para instruções sobre como adicionar um IP público à instância, consulte Configurar IP público.

Para se conectar a uma instância do Cloud SQL usando um endereço IP público, use o psql cliente ou outro cliente disponível.

Resumo

Recomendação: para melhorar a segurança, recomendamos que você configure a instância com um tipo de endereço IP particular, a menos que tenha requisitos específicos para uma instância do Cloud SQL acessível pela Internet ou se estiver se conectando de um cliente que não atende aos requisitos de uma VPC.

Tipo de conexão: conector do Cloud SQL ou direta

Ao fazer a conexão com uma instância do Cloud SQL, você pode usar um conector do Cloud SQL ou fazer uma conexão direta.

Um conector do Cloud SQL é o proxy de autenticação do Cloud SQL ou um dos conectores de linguagem do Cloud SQL.

Conector do Cloud SQL Conexão direta
Descrição O proxy de autenticação do Cloud SQL, um proxy do lado do cliente, e os conectores de linguagem do Cloud SQL, bibliotecas do lado do cliente, fornecem acesso simplificado e seguro às instâncias do Cloud SQL, especialmente ao se conectar a uma instância usando um endereço IP público. Uma conexão direta de um cliente a uma instância do Cloud SQL oferece uma conexão de latência mais baixa. Uma conexão direta pode ser feita de um endereço IP público ou particular.
Pontos de decisão

Os conectores do Cloud SQL são benéficos nos seguintes cenários:

  • Quando você quer se conectar a uma instância do Cloud SQL usando um endereço IP público sem precisar configurar redes autorizadas.
  • Quando você quer criptografar o tráfego de e para o banco de dados automaticamente com a verificação de identidade do servidor e do cliente sem precisar gerenciar certificados SSL.
  • Quando você está usando a autenticação do banco de dados do IAM e quer atualizar os tokens de acesso do OAuth 2.0 automaticamente.
  • Ao se conectar de um cliente ou aplicativo que usa um endereço IP atribuído dinamicamente ou temporário. A configuração de IP dinâmico pode ser comum para aplicativos de plataforma como serviço (PaaS).

O uso de uma conexão direta oferece os seguintes benefícios:

  • Latência menor em comparação com conexões que usam conectores do Cloud SQL.
  • Nenhuma dependência de pacote ou biblioteca adicional, ao contrário dos conectores do Cloud SQL.
  • Ao usar uma conexão direta, você é responsável por configurar as configurações de SSL/TLS.
Opções de configuração

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

  1. Escolha um modo de AC do servidor para a instância.
  2. Configure a instância para aplicar a criptografia SSL/TLS para conexões na instância.
  3. Crie certificados do cliente.
  4. Faça o download dos certificados do servidor e do cliente.
Resumo

Ao se conectar a uma instância do Cloud SQL, você pode usar um conector do Cloud SQL ou se conectar diretamente de clientes.

Recomendação geral: Se você estiver se conectando a uma instância por um endereço IP particular, use uma conexão direta. Também recomendamos que você aplique o SSL e configure certificados SSL/TLS para sua conexão.

Se você estiver se conectando a uma instância por um endereço IP público, use um conector do Cloud SQL (o proxy de autenticação do Cloud SQL ou um dos conectores de linguagem do Cloud SQL).

Tipo de autenticação de banco de dados: IAM ou integrada

Ao se conectar a uma instância, é necessário se autenticar como um usuário de banco de dados. Você pode escolher entre a autenticação integrada ou a autenticação do banco de dados do IAM.

Autenticação do banco de dados do IAM Autenticação integrada
Descrição A autenticação do banco de dados do IAM permite que você se autentique em bancos de dados com Google Cloud contas de usuário e de serviço do IAM usando tokens de acesso de curta duração em vez de senhas. É possível gerenciar privilégios de banco de dados usando principais do IAM como usuários, contas de serviço e grupos. A autenticação integrada usa nomes de usuário e senhas locais do banco de dados para autenticar usuários do banco de dados.
Pontos de decisão Você prefere centralizar o gerenciamento de usuários em todos os Google Cloud serviços usando o IAM em Google Cloud? Em caso afirmativo, use a autenticação do banco de dados do IAM. Você tem aplicativos ou fluxos de trabalho que dependem da autenticação de banco de dados integrada ? Em caso afirmativo, use a autenticação integrada.
Opções de configuração

É possível usar a autenticação do banco de dados do IAM para usuários individuais do IAM, contas de serviço individuais e grupos. Para mais informações, consulte use Usar o gerenciamento de usuários com a autenticação do banco de dados do IAM .

Se você usar um conector do Cloud SQL, ele vai processar a atualização automática dos tokens de acesso do IAM. Para mais informações, consulte Autenticação automática do banco de dados do IAM.

É possível usar a autenticação de banco de dados integrada e configurar políticas de senha nos níveis de instância e usuário. Para mais informações, consulte Autenticação integrada.
Resumo Recomendação: a menos que você tenha aplicativos ou fluxos de trabalho que dependam da autenticação de banco de dados integrada, use a autenticação de banco de dados do IAM sempre que possível.

Opções de rede particular ao usar um endereço IP particular

Ao configurar a instância para usar um endereço IP particular, você pode escolher as seguintes opções de rede particular: acesso a serviços particulares, Private Service Connect ou ambos.

Recursos compatíveis

A tabela a seguir lista os recursos que o Cloud SQL oferece suporte ao se conectar a uma instância configurada com uma ou ambas as opções de rede particular.

Recurso Instância com acesso a serviços particulares Instância com Private Service Connect Instância com acesso a serviços particulares e Private Service Connect
Conectar-se de várias VPCs Incompatível. Compatível. Com suporte usando o endpoint do Private Service Connect.
pglogical, PL/Proxy, dblink, e postgres_fdw extensões Compatível. Incompatível. Com suporte usando a conectividade de saída para acesso a serviços particulares.
Réplicas externas Compatível. Incompatível. Com suporte usando a conectividade de saída para acesso a serviços particulares.
Endpoint de gravação Compatível. Incompatível. Com suporte para acesso a serviços particulares.
Mudar a rede VPC associada para acesso a serviços particulares Compatível. Não relevante. Não há suporte para acesso a serviços particulares porque a instância tem o Private Service Connect ativado. Não relevante para o Private Service Connect.
Visibilidade do endereço IP do cliente para o Cloud SQL Compatível. Incompatível. Com suporte usando o endereço IP de acesso a serviços particulares. Não há suporte para o uso do endpoint do Private Service Connect.

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

O Cloud SQL oferece suporte à remoção das seguintes opções de rede de uma instância:

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

Ativar opções de rede para uma instância

É possível ativar o Cloud SQL para ativar as seguintes opções de conexão para instâncias:

  • Acesso a serviços particulares em uma instância com IP público
  • Private Service Connect em uma instância com acesso a serviços particulares
  • Private Service Connect em uma instância com acesso a serviços particulares e IP público
  • IP público em uma instância com acesso a serviços particulares

Limitações

  • Não é possível criar uma instância com um endereço IP público e o Private Service Connect.
  • Não é possível remover o acesso a serviços particulares de uma instância com acesso a serviços particulares e Private Service Connect.
  • Não é possível remover o acesso a serviços particulares de uma instância com acesso a serviços particulares e IP público.
  • Se você tiver uma instância que usa apenas IP público, não será possível ativar o acesso a serviços particulares e o Private Service Connect ao mesmo tempo. Primeiro, ative o acesso a serviços particulares e, em seguida, o Private Service Connect.
  • Não é possível usar redes autorizadas para fazer a lista de permissões baseada em endereço IP para instâncias do Private Service Connect.

Ferramentas para se conectar ao Cloud SQL

A tabela a seguir contém algumas opções para se conectar ao Cloud SQL:

Opção de conexão Mais informações
Proxy do Cloud SQL Auth
CLI gcloud
Conectores de linguagem do Cloud SQL
Cloud Shell
Cloud Code
Kit de agente de dados do Google Cloud
Conecte-se usando ferramentas de administração de banco de dados de terceiros
pgAdmin
Toad Edge
Blendo

Resolver problemas

Se você tiver problemas de conexão, consulte as páginas a seguir para receber ajuda na depuração ou localização de soluções para problemas conhecidos:

A seguir