Autenticação do banco de dados do IAM para MariaDB, MySQL e PostgreSQL - Amazon Relational Database Service

Autenticação do banco de dados do IAM para MariaDB, MySQL e PostgreSQL

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). A autenticação do banco de dados do IAM opera com o MariaDB, o MySQL e o PostgreSQL. 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.

Um token de autenticação é uma string exclusiva de caracteres que o Amazon RDS gera mediante solicitação. Os tokens de autenticação são gerados usando o Signature da AWS versão 4. Cada token tem uma vida útil de 15 minutos. Você não precisa armazenar as credenciais de usuário no banco de dados, porque a autenticação é gerenciada externamente usando o IAM. Você também pode usar a autenticação de banco de dados padrão. O token é usado apenas para autenticação e não afetará a sessão depois que ela for estabelecida.

A autenticação do banco de dados do IAM oferece os seguintes benefícios:

  • O tráfego de rede de e para o banco de dados é criptografado usando Secure Socket Layer (SSL) ou Transport Layer Security (TLS). Para obter mais informações sobre como usar SSL/TLS com o Amazon RDS, consulte Como Usar SSL/TLS para criptografar uma conexão com uma instância de banco de dados.

  • Você pode usar o IAM para gerenciar centralmente o acesso aos recursos de banco de dados, em vez de gerenciar o acesso individualmente em cada instância de banco de dados.

  • Para aplicativos em execução no Amazon EC2, você pode usar as credenciais específicas da instância do EC2 para acessar o banco de dados em vez de uma senha para maior segurança.

Disponibilidade para a autenticação de banco de dados do IAM

A autenticação de banco de dados do IAM está disponível para os seguintes mecanismos de banco de dados:

  • MariaDB 10.6, todas as versões secundárias

  • MySQL 8.0, versão secundária 8.0.16 ou posterior

  • MySQL 5.7, versão secundária 5.7.16 ou posterior

  • MySQL 5.6, versão secundária 5.6.34 ou posterior

  • PostgreSQL 14, 13, 12 e 11, todas as versões secundárias

  • PostgreSQL 10, versão secundária 10.6 ou posterior

  • PostgreSQL 9.6, versão secundária 9.6.11 ou posterior

  • PostgreSQL 9.5, versão secundária 9.5.15 ou posterior

A autenticação de banco de dados do IAM está disponível para a AWS CLI e para os seguintes AWS SDKs específicos à linguagem:

Limitações para a autenticação de banco de dados do IAM

Ao usar a autenticação do banco de dados do IAM, as seguintes limitações se aplicam:

  • O número máximo de conexões por segundo da instância de banco de dados pode estar limitado dependendo da classe de instância de banco de dados e da workload.

  • Atualmente, a autenticação do banco de dados do IAM não oferece suporte a todas as chaves de contexto de condição global.

    Para obter mais informações sobre chaves de contexto de condição global, consulte Chaves de contexto de condição global AWS no Guia do usuário do IAM.

  • Atualmente, a autenticação de banco de dados do IAM não é compatível com CNAMES.

  • No PostgreSQL, se a função do IAM (rds_iam) é adicionada ao usuário mestre, a autenticação do IAM tem precedência sobre a autenticação por senha, então o usuário mestre tem que fazer login como um usuário do IAM.

Recomendações do MariaDB e do MySQL para autenticação de banco de dados do IAM

Recomendamos o seguinte durante o uso do mecanismo de banco de dados MariaDB ou MySQL:

  • Use a autenticação de banco de dados do IAM como um mecanismo para acesso pessoal temporário aos bancos de dados.

  • Use a autenticação de banco de dados do IAM somente para workloads que podem ser facilmente repetidas.

  • Use a autenticação de banco de dados do IAM quando sua aplicação exigir menos de 200 novas conexões de autenticação de banco de dados do IAM por segundo.

    Os mecanismos de banco de dados que funcionam com o Amazon RDS não impõem quaisquer limites para as tentativas de autenticação por segundo. No entanto, quando você usa a autenticação de banco de dados do IAM, seu aplicativo deve gerar um token de autenticação. Seu aplicativo então usa esse token para se conectar à instância de banco de dados. Se você exceder o limite de novas conexões máximas por segundo, a sobrecarga extra da autenticação de banco de dados IAM poderá causar a limitação da conexão. A sobrecarga extra pode até causar o encerramento das conexões existentes. Para obter informações sobre o máximo do total de conexões para o MariaDB e MySQL, consulte Máximo de conexões MySQL e MariaDB.

nota

Essas recomendações não se aplicam a instâncias de banco de dados do Amazon RDS for PostgreSQL.