Configurar a autenticação do IAM para conexões de replicação lógica - Amazon Relational Database Service

Configurar a autenticação do IAM para conexões de replicação lógica

A partir das versões 11 e posterior do RDS para PostgreSQL, você pode usar a autenticação do AWS Identity and Access Management Identity and Access Management (IAM) para conexões de replicação. Esse recurso aprimora a segurança ao permitir que você gerencie o acesso ao banco de dados usando perfis do IAM em vez de senhas. Ele funciona na granularidade do cluster e da instância e segue o mesmo modelo de segurança que a autenticação padrão do IAM.

A autenticação do IAM para conexões de replicação é um atributo opcional. Para habilitá-lo, defina o parâmetro rds.iam_auth_for_replication como 1 no seu grupo de parâmetros de banco de dados ou de cluster de banco de dados. Como esse é um parâmetro dinâmico, sua instância ou cluster de banco de dados não precisa ser reiniciado, permitindo que você utilize a autenticação do IAM com workloads existentes sem tempo de inatividade. Antes de habilitar esse recurso, você deve atender aos pré-requisitos listados abaixo.

Pré-requisitos

Para usar a autenticação do IAM para conexões de replicação, você precisa cumprir todos os requisitos abaixo:

  • A instância de banco de dados do RDS para PostgreSQL deve ser a versão 11 ou posterior.

  • Na instância de banco de dados do RDS para PostgreSQL do publicador:

Na replicação lógica, o publicador é o banco de dados do RDS para PostgreSQL de origem que envia dados ao banco de dados de assinantes. Para ter mais informações, consulte Executar replicação lógica para o Amazon RDS para PostgreSQL.

nota

Tanto a autenticação do IAM quanto a replicação lógica devem estar habilitadas na instância de banco de dados do RDS para PostgreSQL do publicador. Se nenhuma delas estiver habilitada, você não poderá usar a autenticação do IAM para conexões de replicação.

Habilitar a autenticação do IAM para conexões de replicação

Conclua as etapas a seguir para habilitar a autenticação do IAM para a conexão de replicação.

Como habilitar a autenticação do IAM para conexões de replicação
  1. Verifique se seu cluster ou instância de banco de dados do RDS para PostgreSQL atende a todos os pré-requisitos para autenticação do IAM com conexões de replicação. Para obter detalhes, consulte Pré-requisitos.

  2. Configure o parâmetro rds.iam_auth_for_replication com base na configuração do RDS para PostgreSQL:

    • Para instâncias de banco de dados do RDS para PostgreSQL: modifique seu grupo de parâmetros de banco de dados.

    • Para clusters multi-AZ: modifique o grupo de parâmetros de cluster de banco de dados.

    Defina rds.iam_auth_for_replication como 1. Esse é um parâmetro dinâmico que entra em vigor imediatamente sem exigir a reinicialização.

    nota

    Clusters multi-AZ usam grupos de parâmetros de cluster de banco de dados. Grupos de parâmetros de instâncias individuais não podem ser modificados em clusters multi-AZ.

  3. Conecte-se ao seu banco de dados e conceda os perfis necessários ao seu usuário de replicação:

    Os comandos SQL a seguir concedem os perfis necessários para habilitar a autenticação do IAM para conexões de replicação:

    -- Grant IAM authentication role GRANT rds_iam TO replication_user_name; -- Grant replication privileges ALTER USER replication_user_name WITH REPLICATION;

    Depois de concluir essas etapas, o usuário especificado deve usar a autenticação do IAM para conexões de replicação.

    Importante

    Quando você habilita o recurso, os usuários com os perfis rds_iam e rds_replication devem usar a autenticação do IAM para conexões de replicação. Isso se aplicará se os perfis forem atribuídos diretamente ao usuário ou herdados por meio de outros perfis.

Desabilitar a autenticação do IAM para conexões de replicação

Você pode desabilitar a autenticação do IAM para conexões de replicação usando qualquer um dos seguintes métodos:

  • Defina o parâmetro rds.iam_auth_for_replication como 0 em seu grupo de parâmetros de banco de dados para instâncias de banco de dados ou grupo de parâmetros de cluster de banco de dados para clusters multi-AZ.

  • Você também pode desabilitar qualquer um desses recursos em seu cluster ou instância de banco de dados do RDS para PostgreSQL:

    • Desabilitar a replicação lógica definindo o parâmetro rds.logical_replication como 0

    • Desabilitar a autenticação do IAM

Quando você desabilita o recurso, as conexões de replicação podem usar senhas de banco de dados para autenticação.

nota

As conexões de replicação para usuários sem o perfil rds_iam podem usar a autenticação por senha mesmo quando o recurso está habilitado.

Limitações e considerações

Pense nas seguintes limitações e considerações ao usar a autenticação do IAM para conexões de replicação lógica:

  • Esse recurso está disponível somente para as versões 11 e posterior do RDS para PostgreSQL.

  • O publicador deve oferecer suporte à autenticação do IAM para conexões de replicação.

  • Por padrão, o token de autenticação do IAM expira após 15 minutos. Talvez seja necessário atualizar as conexões de replicação de longa duração antes que o token expire.