Autenticação do banco de dados do IAM do AlloyDB para PostgreSQL

Nesta página, descrevemos como usar o Identity and Access Management (IAM) para gerenciar o acesso aos seus bancos de dados do AlloyDB.

Conceitos da autenticação do IAM

Ao usar a autenticação do IAM, a permissão para acessar uma instância do AlloyDB não é concedida diretamente ao usuário final. Em vez disso, as permissões são agrupadas em papéis, que são concedidos a principais. Para mais informações, consulte a visão geral do IAM.

Os administradores que têm usuários fazendo login por meio da autenticação do banco de dados do IAM podem usar o IAM para gerenciar o controle de acesso às instâncias de modo centralizado usando políticas do IAM.

As políticas do IAM envolvem as seguintes entidades:

  • Principais. No AlloyDB, é possível usar uma conta de usuário ou uma conta de serviço (para aplicativos). Para mais informações, consulte Principais.

  • Papéis. Para a autenticação do banco de dados do IAM, um principal precisa da permissão alloydb.instances.login. Essa permissão está incluída no papel de cliente do AlloyDB (roles/alloydb.client). Para receber essa permissão, vincule o usuário, a conta de serviço ou o grupo ao papel predefinido ou a um papel personalizado que inclua a permissão. Para mais informações, consulte Permissões e papéis.

  • Recurso. Os recursos que os principais acessam são instâncias do AlloyDB. Por padrão, as vinculações de política do IAM são aplicadas no nível do projeto, de modo que os principais recebam permissões de papel para todas as instâncias do AlloyDB no projeto. Para mais informações, consulte Recursos.

Comparar opções de autenticação de banco de dados

Use a tabela a seguir para decidir qual método de autenticação é o mais adequado para seu caso de uso.

Recurso Autenticação de banco de dados integrada Autenticação de banco de dados do IAM (individual)
Método de autenticação Senha Token de autenticação temporário
Criptografia de tráfego de rede SSL não obrigatório SSL obrigatório
Gerenciamento de usuários Manual Centralizado pelo IAM

Autenticação automática e manual do banco de dados do IAM

O AlloyDB oferece dois métodos de autenticação de banco de dados do IAM: automática e manual.

Autenticação automática do banco de dados do IAM

A autenticação automática do banco de dados do IAM permite transferir a solicitação e o gerenciamento de tokens de acesso para um conector intermediário do AlloyDB, como o proxy de autenticação ou um dos conectores de linguagem.

Com a autenticação automática do banco de dados do IAM, um aplicativo precisa transmitir apenas o nome de usuário do banco de dados do IAM em uma solicitação de conexão do cliente. O conector envia as informações do token de acesso para o atributo de senha em nome do cliente.

Autenticação manual do banco de dados do IAM

A autenticação manual do banco de dados do IAM exige que o principal do IAM transmita explicitamente o token de acesso para o atributo de senha na solicitação de conexão do cliente. Os principais precisam primeiro fazer login no Google Cloud e solicitar explicitamente o token de acesso do IAM.

Condições do IAM e registros de auditoria

Com as condições do IAM, é possível conceder papéis com base em vários atributos. Por exemplo, é possível permitir o acesso apenas em determinadas datas e horas ou conceder acesso somente aos recursos do AlloyDB com determinados nomes.

Para manter registros de acesso a dados, incluindo logins, use os registros de auditoria do Cloud. Os registros de auditoria do Cloud ficam desativados por padrão. É necessário ativar os registros de auditoria de acesso a dados para o acompanhamento de login.

Restrições e práticas recomendadas

  • Por segurança, os logins com a autenticação de banco de dados do IAM estão disponíveis apenas em uma conexão SSL. Conexões não criptografadas são rejeitadas.

  • Há uma cota de logins por minuto para cada instância, incluindo os bem-sucedidos e os mal-sucedidos. Quando a cota é excedida, os logins ficam temporariamente indisponíveis. Recomendamos evitar logins frequentes e restringi-los usando redes autorizadas.

A seguir