Autenticação do banco de dados com Amazon RDS
O Amazon RDSAmazon Aurora é compatível com várias maneiras de autenticar usuários do banco de dados.
As autenticações de banco de dados do IAM, do Kerberos e por senha usam diferentes métodos de autenticação no banco de dados. Portanto, um usuário específico pode fazer login em um banco de dados usando apenas um método de autenticação.
No PostgreSQL, use apenas uma das seguintes configurações de função para um usuário de um banco de dados específico:
-
Para usar a autenticação de banco de dados do IAM, atribua a função
rds_iam
ao usuário. -
Para usar a autenticação do Kerberos, atribua a função
rds_ad
ao usuário. -
Para usar a autenticação por senha, não atribua as funções
rds_iam
ourds_ad
ao usuário.
Não atribua ambas as funções rds_iam
e rds_ad
a um usuário de um banco de dados PostgreSQL direta ou indiretamente por acesso de concessão aninhado. Se a função rds_iam
for adicionada ao usuário mestre, a autenticação do IAM terá precedência sobre a autenticação por senha, então o usuário mestre terá que fazer login como um usuário do IAM.
Importante
É altamente recomendável não usar o usuário mestre diretamente nas aplicações. Em vez disso, siga as práticas recomendadas de usar um usuário do banco de dados criado com os privilégios mínimos obrigatórios para a aplicação.
Autenticação com senha
Com a autenticação com senha, seu banco de dados executa toda a administração de contas de usuário. Crie usuários com instruções SQL, como CREATE USER
, usando a cláusula apropriada exigida pelo mecanismo de banco de dados para especificar senhas. Por exemplo, no MySQL, a instrução é CREATE
USER
name
IDENTIFIED BY
password
, enquanto, no PostgreSQL, ela é CREATE USER
name
WITH PASSWORD
password
.
Com a autenticação com senha, seu banco de dados controla e autentica contas de usuário. Se um mecanismo de banco de dados tiver recursos de gerenciamento de senhas fortes, ele poderá aumentar a segurança. A autenticação de banco de dados pode ser mais fácil de administrar usando autenticação com senha quando você tem pequenas comunidades de usuários. Como as senhas de texto não criptografado são geradas nesse caso, a integração com o AWS Secrets Manager pode aumentar a segurança.
Para obter informações sobre como usar o Secrets Manager com o Amazon RDSAmazon Auroraconsulte Criar um segredo básico e Alternar segredos para bancos de dados do Amazon RDS compatíveis no Guia do usuário do AWS Secrets Manager. Para obter informações sobre como recuperar os segredos de forma programática nas aplicações personalizadas, consulte Recuperar o valor do segredo no Guia do usuário do AWS Secrets Manager.
Autenticação do banco de dados do IAM
Você pode se autenticar a instância de banco de dados usando a autenticação de banco de dados do AWS Identity and Access Management (IAM). Com esse método de autenticação, você não precisa usar uma senha ao conectar-se a um cluster de de banco de dados. Em vez disso, você usa um token de autenticação.
Para ter mais informações sobre autenticação de banco de dados do IAM, incluindo informações sobre disponibilidade de mecanismos de banco de dados específicos, consulte Autenticação do banco de dados do IAM para MariaDB, MySQL e PostgreSQL.
Autenticação de Kerberos
O Amazon RDS oferece suporte à autenticação externa de usuários de banco de dados usando o Kerberos e o Microsoft Active Directory. O Kerberos é um protocolo de autenticação de rede que usa tíquetes e criptografia de chave simétrica para eliminar a necessidade de transmitir senhas pela rede. O Kerberos foi integrado ao Active Directory e foi projetado para autenticar usuários em recursos de rede, como bancos de dados.
O suporte do Amazon RDS ao Kerberos e ao Active Directory oferece os benefícios do logon único e da autenticação centralizada dos usuários do banco de dados. Você pode manter suas credenciais de usuário no Active Directory. O Active Directory fornece um lugar centralizado para armazenar e gerenciar credenciais para várias instâncias de banco de dados.
Para usar as credenciais do Active Directory autogerenciado, é necessário configurar uma relação de confiança com o AWS Directory Service para Microsoft Active Directory ao qual a instância de banco de dados está associada.
O RDS para PostgreSQL e o RDS para MySQL comportam relacionamentos de confiança florestal unidirecionais e bidirecionais com autenticação em toda a floresta ou autenticação seletiva.
Em alguns casos, é possível configurar a autenticação Kerberos em uma relação de confiança externa. Isso exige que o Active Directory autogerenciado tenha configurações adicionais. Isso inclui, entre outros, o Kerberos Forest Search Order
As instâncias de banco de dados do Microsoft SQL Server e do PostgreSQL são compatíveis com relações de confiança de floresta unidirecionais e bidirecionais. As instâncias de banco de dados Oracle comportam relações de confiança externas e de floresta unidirecionais e bidirecionais. Para ter mais informações, consulte Quando criar uma relação de confiança no Guia de administração do AWS Directory Service.
Para obter informações sobre a autenticação Kerberos com um mecanismo de banco de dados específico, consulte o seguinte:
nota
Atualmente, a autenticação Kerberos não tem suporte para instâncias de banco de dados MariaDB.