Nesta página, você encontra uma visão geral do proxy de autenticação do AlloyDB, um conector que permite fazer conexões criptografadas e autorizadas com bancos de dados do AlloyDB.
Para um guia detalhado sobre como usar o proxy de autenticação, consulte Conectar usando o proxy de autenticação do AlloyDB.
Benefícios de usar o proxy de autenticação do AlloyDB
O proxy de autenticação oferece as seguintes vantagens em relação à conexão direta de clientes aos bancos de dados do AlloyDB:
Autorização de conexão baseada no IAM. O proxy de autenticação usa as credenciais e permissões de um principal do Identity and Access Management (IAM) para autorizar conexões com instâncias do AlloyDB.
Autenticação automatizada do IAM. O proxy de autenticação pode autenticar automaticamente usuários do banco de dados com base no principal do IAM que executa o proxy.
Comunicação segura e criptografada. O proxy de autenticação cria, usa e mantém automaticamente uma conexão TLS mútuo (mTLS) 1.3 usando uma criptografia AES de 256 bits entre o cliente e uma instância do AlloyDB para verificar as identidades do cliente e do servidor e criptografar o tráfego de dados.
Para mais informações sobre como se conectar a instâncias do AlloyDB, consulte Visão geral da conexão.
Como o proxy de autenticação do AlloyDB funciona
O proxy de autenticação do AlloyDB funciona com um cliente local em execução no ambiente local. O aplicativo se comunica com o proxy de autenticação do AlloyDB com o protocolo de banco de dados padrão usado por seu banco de dados.
O proxy de autenticação do AlloyDB usa um túnel seguro (mTLS 1.3, criptografia AES de 256 bits) para se comunicar com o processo complementar em execução no servidor. Cada conexão estabelecida pelo proxy de autenticação do AlloyDB cria uma conexão com a instância do AlloyDB.
Quando um aplicativo se conecta ao proxy de autenticação do AlloyDB, ele verifica se uma conexão entre ele e a instância de destino do AlloyDB está disponível. Se não houver uma conexão, ela vai chamar as APIs AlloyDB Admin para receber um certificado SSL temporário e usá-lo para se conectar ao AlloyDB. Os certificados SSL temporários expiram em 24 horas. O proxy de autenticação do AlloyDB atualiza esses certificados antes que eles expirem.
O Proxy de Autenticação do AlloyDB chama APIs pelo nome de domínio alloydb.googleapis.com usando HTTPS. Como resultado, todas as conexões TCP de saída na porta 443 (HTTPS) da
máquina cliente precisam ser permitidas pelo firewall.
Embora o proxy de autenticação do AlloyDB possa fazer detecções em qualquer porta, ele cria conexões de entrada ou de saída com a instância do AlloyDB somente na porta 5433. Se o host cliente tiver um firewall de saída, ele precisará permitir conexões com a porta 5433 no endereço IP da instância do AlloyDB. O host do cliente também precisa permitir conexões com a porta 443, que é a porta HTTPS padrão, para todos os endereços IP.
Como o proxy de autenticação do AlloyDB autentica e autoriza conexões
Para autorizar a conexão de um cliente a uma instância do AlloyDB, o
cliente do proxy de autenticação faz a autenticação em Google Cloud usando credenciais
principais do IAM no cliente e valida se o principal do IAM tem os papéis
de cliente do AlloyDB no Cloud (roles/alloydb.client) e consumidor do Service Usage
(roles/serviceusage.serviceUsageConsumer) do IAM.
Por padrão, o cliente do Auth Proxy usa as Application Default Credentials (ADC) para localizar as credenciais do cliente. Isso oferece uma maneira unificada e padrão para que os aplicativos se autentiquem automaticamente sem editar ou codificar valores de configuração.
Autenticação padrão
Para configurações padrão de desenvolvimento e produção, não é necessário configurar credenciais ou flags personalizadas. O cliente do proxy de autenticação resolve automaticamente credenciais usando caminhos de ambiente padrão. Dependendo do ambiente usado para executar o cliente do proxy de autenticação, ele localiza credenciais das seguintes fontes:
Desenvolvimento local. Ao desenvolver localmente, é possível autenticar usando sua conta de usuário do Google pessoal ou corporativa. O cliente do proxy de autenticação detecta e usa essas credenciais automaticamente. Essa é a abordagem recomendada para o desenvolvimento local, evitando a necessidade de fazer o download dos arquivos de chave da conta de serviço localmente.
Ambientes gerenciados pelo Google. Quando você executa o aplicativo em um serviçoGoogle Cloud , como instâncias do Compute Engine, Google Kubernetes Engine, Cloud Run, Cloud Run functions ou App Engine, as credenciais da conta de serviço anexada são fornecidas automaticamente pelo servidor de metadados do ambiente. O cliente do proxy de autenticação descobre e usa automaticamente essas credenciais sem configuração extra.
- Se o recurso de computação estiver no mesmo projeto que a instância do AlloyDB, a conta de serviço padrão geralmente terá as permissões necessárias para autenticar.
- Se o recurso de computação e a instância do AlloyDB estiverem em projetos diferentes, adicione a conta de serviço do recurso de computação ao projeto que contém a instância do AlloyDB e conceda a ela os papéis necessários.
Substituir credenciais
Em cenários específicos, como testes, execução fora do Google Cloudou quando você quer ignorar as credenciais do ambiente padrão, é possível substituir as credenciais usando um dos seguintes métodos:
Uma chave de conta de serviço. Forneça a chave usando a variável de ambiente
GOOGLE_APPLICATION_CREDENTIALSou a flag--credentials-file. As chaves de conta de serviço são um risco de segurança se não forem gerenciadas corretamente. Por isso, prefira uma das fontes padrão sempre que possível.Um token de acesso do OAuth 2.0. Forneça o token usando a flag
--token.Credenciais da CLI gcloud. Forneça essas credenciais usando a flag
--gcloud-auth. Não recomendamos essa flag. Executegcloud auth application-default login.
Para mais informações sobre como configurar essas credenciais no cliente, consulte Conectar usando o proxy de autenticação do AlloyDB. Para informações gerais sobre a abordagem de autenticação do Google Cloud, consulte Visão geral da autenticação.
A seguir
- Conectar usando o proxy de autenticação do AlloyDB.
- Conheça o Google Cloud repositório do GitHub para o proxy de autenticação do AlloyDB.