Gerenciamento de senhas com Amazon RDS e AWS Secrets Manager - Amazon Relational Database Service

Gerenciamento de senhas com Amazon RDS e AWS Secrets Manager

O Amazon RDS integra-se ao Secrets Manager para gerenciar senhas do usuário principal para suas instâncias e clusters de banco de dados multi-AZ.

Limitações da integração do Secrets Manager com o Amazon RDS

O gerenciamento de senhas do usuário principal com o Secrets Manager não é compatível com os seguintes recursos:

  • Para todos os mecanismos de banco de dados, exceto o RDS para SQL Server, a criação de réplicas de leitura quando o banco de dados ou cluster de banco de dados de origem gerencia credenciais com o Secrets Manager

  • Implantações azul/verde do Amazon RDS

  • Amazon RDS Custom

  • Alternância do Oracle Data Guard

  • RDS para Oracle com CDB

Visão geral do gerenciamento de senhas do usuário principal com AWS Secrets Manager

Com o AWS Secrets Manager, é possível substituir credenciais codificadas em seu código, inclusive senhas de banco de dados, por uma chamada de API ao Secrets Manager para recuperar o segredo de forma programática. Para ter mais informações sobre o Secrets Manager, consulte o Guia do usuário do AWS Secrets Manager.

Quando você armazena segredos de banco de dados no Secrets Manager, sua Conta da AWS incorre em cobranças. Para obter mais informações sobre definição de preços, consulte Definição de preço do AWS Secrets Manager.

Você pode especificar que o RDS gerencie a senha de usuário principal no Secrets Manager para uma instância de banco de dados do Amazon RDS ou cluster de banco de dados multi-AZ ao realizar uma das seguintes operações:

  • Criar a instância de banco de dados

  • Criar o cluster de banco de dados multi-AZ

  • Modificar a instância de banco de dados

  • Modificar o cluster de banco de dados multi-AZ

  • Restaurar a instância de banco de dados do Amazon S3

Quando você especifica que o RDS gerencie a senha do usuário principal no Secrets Manager, o RDS gera a senha e a armazena no Secrets Manager. Você pode interagir diretamente com o segredo para recuperar as credenciais do usuário principal. Você também pode especificar uma chave gerenciada pelo cliente para criptografar o segredo ou usar a chave do KMS fornecida pelo Secrets Manager.

O RDS gerencia as configurações do segredo e o alterna a cada sete dias por padrão. Você pode modificar algumas configurações, como o cronograma de alternância. Se você excluir uma instância de banco de dados que gerencie um segredo no Secrets Manager, o segredo e seus metadados associados também serão excluídos.

Para conectar-se a uma instância de banco de dados ou a um cluster de banco de dados multi-AZ com as credenciais em um segredo, você pode recuperar o segredo do Secrets Manager. Para ter mais informações, consulte Recuperar segredos do AWS Secrets Manager e Conecte-se a um banco de dados SQL com credenciais em um segredo do AWS Secrets Manager no Guia do usuário do AWS Secrets Manager.

Benefícios do gerenciamento de senhas do usuário principal com o Secrets Manager

O gerenciamento de senhas do usuário principal pelo RDS com o Secrets Manager oferece os seguintes benefícios:

  • O RDS gera automaticamente credenciais de banco de dados.

  • O RDS armazena e gerencia automaticamente as credenciais do banco de dados no AWS Secrets Manager.

  • O RDS alterna as credenciais do banco de dados regularmente, sem exigir alterações na aplicação.

  • O Secrets Manager protege as credenciais do banco de dados do acesso humano e da visualização de texto sem formatação.

  • O Secrets Manager permite a recuperação de credenciais do banco de dados em segredos para conexões de banco de dados.

  • O Secrets Manager permite um controle refinado do acesso às credenciais do banco de dados em segredos com o uso do IAM.

  • Você também pode separar a criptografia do banco de dados da criptografia de credenciais com chaves do KMS diferentes.

  • É possível eliminar o gerenciamento e a alternância manuais das credenciais do banco de dados.

  • Você pode monitorar facilmente as credenciais do banco de dados com o AWS CloudTrail e o Amazon CloudWatch.

Para obter mais informações sobre os benefícios do Secrets Manager, consulte o Guia do usuário do AWS Secrets Manager.

Permissões necessárias para a integração do Secrets Manager

Os usuários devem ter as permissões necessárias para realizar operações relacionadas à integração do Secrets Manager. É possível criar políticas do IAM que concedam permissões para realizar operações de API específicas nos recursos especificados necessários. Depois, você pode anexar essas políticas aos conjuntos de permissões do IAM ou às funções que exigem essas permissões. Para ter mais informações, consulte Gerenciamento de identidade e acesso no Amazon RDS.

Para operações de criação, modificação ou restauração, o usuário que especifica que o Amazon RDS gerencie a senha do usuário principal no Secrets Manager deve ter permissões para realizar as seguintes operações:

  • kms:DescribeKey

  • secretsmanager:CreateSecret

  • secretsmanager:TagResource

Para operações de criação, modificação ou restauração, o usuário que especifica a senha do usuário principal para criptografar o segredo no Secrets Manager deve ter permissões para realizar as seguintes operações:

  • kms:Decrypt

  • kms:GenerateDataKey

  • kms:CreateGrant

Para operações de modificação, o usuário que alterna a senha de usuário principal no Secrets Manager deve ter permissões para realizar a seguinte operação:

  • secretsmanager:RotateSecret

Impor o gerenciamento da senha do usuário principal pelo RDS no AWS Secrets Manager

Você pode usar as chaves de condição do IAM para impor o gerenciamento pelo RDS da senha do usuário principal no AWS Secrets Manager. A política a seguir não permite que os usuários criem nem restaurem instâncias de banco de dados ou clusters de banco de dados, a menos que a senha do usuário principal seja gerenciada pelo RDS no Secrets Manager.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": ["rds:CreateDBInstance", "rds:CreateDBCluster", "rds:RestoreDBInstanceFromS3", "rds:RestoreDBClusterFromS3"], "Resource": "*", "Condition": { "Bool": { "rds:ManageMasterUserPassword": false } } } ] }
nota

Esta política impõe o gerenciamento de senhas no AWS Secrets Manager no momento da criação. No entanto, você ainda pode desativar a integração do Secrets Manager e definir manualmente uma senha principal modificando a instância.

Para evitar isso, inclua rds:ModifyDBInstance e rds:ModifyDBCluster no bloco “Ação” da política. Esteja ciente de que isso impede que o usuário aplique quaisquer modificações adicionais às instâncias existentes que não têm a integração com o Secrets Manager habilitada.

Para ter mais informações sobre como usar as chaves de condição em políticas do IAM, consulte Chaves de condição de políticas do Amazon RDS e Políticas de exemplo: usar chaves de condição.

Gerenciar a senha do usuário principal para uma instância de banco de dados com o Secrets Manager

Você pode configurar o gerenciamento pelo RDS da senha do usuário principal no Secrets Manager ao realizar as seguintes ações:

Você pode usar o console do RDS, a AWS CLI ou a API do RDS para realizar essas ações.

Siga as instruções para criar ou modificar uma instância de banco de dados com o console do RDS:

Ao usar o console do RDS para realizar uma dessas operações, você pode especificar que a senha do usuário principal seja gerenciada pelo RDS no Secrets Manager. Para fazer isso ao criar ou restaurar uma instância de banco de dados, selecione Gerenciar credenciais principais no AWS Secrets Manager em Configurações de credenciais. Quando estiver modificando uma instância de banco de dados, selecione Gerenciar credenciais principais no AWS Secrets Manager em Configurações.

A imagem a seguir é um exemplo da configuração Gerenciar credenciais principais no AWS Secrets Manager quando você está criando ou restaurando uma instância de banco de dados.


						Gerenciar credenciais principais no AWS Secrets Manager

Quando você seleciona essa opção, o RDS gera a senha do usuário principal e a gerencia durante todo o ciclo de vida no Secrets Manager.


						Gerenciar credenciais principais no AWS Secrets Manager selecionado

Você pode optar por criptografar o segredo com uma chave do KMS fornecida pelo Secrets Manager ou com uma chave gerenciada pelo cliente criada por você. Depois que o RDS estiver gerenciando as credenciais de banco de dados de uma instância de banco de dados, não será possível alterar a chave do KMS usada para criptografar o segredo.

Você pode escolher outras configurações para atender às suas necessidades. Para ter mais informações sobre as configurações disponíveis ao criar uma instância de banco de dados, consulte Configurações para instâncias de banco de dados. Para ter mais informações sobre as configurações disponíveis ao modificar uma instância de banco de dados, consulte Configurações para instâncias de banco de dados.

Para gerenciar a senha do usuário principal com o RDS no Secrets Manager, especifique a opção --manage-master-user-password em um dos seguintes comandos da AWS CLI:

Quando você especifica a opção --manage-master-user-password nesses comandos, o RDS gera a senha do usuário principal e a gerencia durante todo o ciclo de vida no Secrets Manager.

Para criptografar o segredo, você pode especificar uma chave gerenciada pelo cliente ou usar a chave do KMS fornecida pelo Secrets Manager. Use a opção --master-user-secret-kms-key-id para especificar uma chave gerenciada pelo cliente. O identificador de chave do AWS KMS é o ARN da chave, o ID da chave, o ARN do alias ou o nome do alias da chave do KMS. Para usar uma chave do KMS em outra Conta da AWS, é necessário usar o ARN da chave ou o ARN do alias. Depois que o RDS estiver gerenciando as credenciais de banco de dados de uma instância de banco de dados, não será possível alterar a chave do KMS usada para criptografar o segredo.

Você pode escolher outras configurações para atender às suas necessidades. Para ter mais informações sobre as configurações disponíveis ao criar uma instância de banco de dados, consulte Configurações para instâncias de banco de dados. Para ter mais informações sobre as configurações disponíveis ao modificar uma instância de banco de dados, consulte Configurações para instâncias de banco de dados.

Este exemplo cria uma instância de banco de dados e especifica que o RDS gerencie a senha do usuário principal no Secrets Manager. O segredo é criptografado usando a chave do KMS fornecida pelo Secrets Manager.

Para Linux, macOS ou Unix:

aws rds create-db-instance \ --db-instance-identifier mydbinstance \ --engine mysql \ --engine-version 8.0.30 \ --db-instance-class db.r5b.large \ --allocated-storage 200 \ --manage-master-user-password

Para Windows:

aws rds create-db-instance ^ --db-instance-identifier mydbinstance ^ --engine mysql ^ --engine-version 8.0.30 ^ --db-instance-class db.r5b.large ^ --allocated-storage 200 ^ --manage-master-user-password

Para especificar que o RDS gerencie a senha do usuário principal no Secrets Manager, defina o parâmetro ManageMasterUserPassword como true em uma das seguintes operações da API do RDS:

Quando você define o parâmetro ManageMasterUserPassword como true em uma dessas operações, o RDS gera a senha do usuário principal e a gerencia durante todo o ciclo de vida no Secrets Manager.

Para criptografar o segredo, você pode especificar uma chave gerenciada pelo cliente ou usar a chave do KMS fornecida pelo Secrets Manager. Use o parâmetro MasterUserSecretKmsKeyId para especificar uma chave gerenciada pelo cliente. O identificador de chave do AWS KMS é o ARN da chave, o ID da chave, o ARN do alias ou o nome do alias da chave do KMS. Para usar uma chave do KMS em outra Conta da AWS, é necessário usar o ARN da chave ou o ARN do alias. Depois que o RDS estiver gerenciando as credenciais de banco de dados de uma instância de banco de dados, não será possível alterar a chave do KMS usada para criptografar o segredo.

Gerenciar a senha do usuário principal para um cluster de banco de dados multi-AZ com o Secrets Manager

Você pode configurar o gerenciamento pelo RDS da senha do usuário principal no Secrets Manager ao realizar as seguintes ações:

Você pode usar o console do RDS, a AWS CLI ou a API do RDS para realizar essas ações.

Siga as instruções para criar ou modificar um cluster de banco de dados multi-AZ com o console do RDS:

Ao usar o console do RDS para realizar uma dessas operações, você pode especificar que a senha do usuário principal seja gerenciada pelo RDS no Secrets Manager. Para fazer isso ao criar um cluster de banco de dados, selecione Gerenciar credenciais principais no AWS Secrets Manager em Configurações de credenciais. Quando estiver modificando um cluster de banco de dados, selecione Gerenciar credenciais principais no AWS Secrets Manager em Configurações.

A imagem a seguir é um exemplo da configuração Gerenciar credenciais principais no AWS Secrets Manager quando você está criando um cluster de banco de dados.


						Gerenciar credenciais principais no AWS Secrets Manager

Quando você seleciona essa opção, o RDS gera a senha do usuário principal e a gerencia durante todo o ciclo de vida no Secrets Manager.


						Gerenciar credenciais principais no AWS Secrets Manager selecionado

Você pode optar por criptografar o segredo com uma chave do KMS fornecida pelo Secrets Manager ou com uma chave gerenciada pelo cliente criada por você. Depois que o RDS estiver gerenciando as credenciais de banco de dados de um cluster de banco de dados, não será possível alterar a chave do KMS usada para criptografar o segredo.

Você pode escolher outras configurações para atender às suas necessidades.

Para ter mais informações sobre as configurações disponíveis ao criar um cluster de banco de dados multi-AZ, consulte Configurações para criar clusters de banco de dados multi-AZ. Para ter mais informações sobre as configurações disponíveis ao modificar um cluster de banco de dados multi-AZ, consulte Configurações para modificar clusters de banco de dados multi-AZ.

Para especificar que o RDS gerencie a senha do usuário principal no Secrets Manager, especifique a opção --manage-master-user-password em um dos seguintes comandos:

Quando você especifica a opção --manage-master-user-password nesses comandos, o RDS gera a senha do usuário principal e a gerencia durante todo o ciclo de vida no Secrets Manager.

Para criptografar o segredo, você pode especificar uma chave gerenciada pelo cliente ou usar a chave do KMS fornecida pelo Secrets Manager. Use a opção --master-user-secret-kms-key-id para especificar uma chave gerenciada pelo cliente. O identificador de chave do AWS KMS é o ARN da chave, o ID da chave, o ARN do alias ou o nome do alias da chave do KMS. Para usar uma chave do KMS em outra Conta da AWS, é necessário usar o ARN da chave ou o ARN do alias. Depois que o RDS estiver gerenciando as credenciais de banco de dados de um cluster de banco de dados, não será possível alterar a chave do KMS usada para criptografar o segredo.

Você pode escolher outras configurações para atender às suas necessidades.

Para ter mais informações sobre as configurações disponíveis ao criar um cluster de banco de dados multi-AZ, consulte Configurações para criar clusters de banco de dados multi-AZ. Para ter mais informações sobre as configurações disponíveis ao modificar um cluster de banco de dados multi-AZ, consulte Configurações para modificar clusters de banco de dados multi-AZ.

Este exemplo cria um cluster de banco de dados multi-AZ e especifica que o RDS gerencie a senha no Secrets Manager. O segredo é criptografado usando a chave do KMS fornecida pelo Secrets Manager.

Para Linux, macOS ou Unix:

aws rds create-db-cluster \ --db-cluster-identifier mysql-multi-az-db-cluster \ --engine mysql \ --engine-version 8.0.28 \ --backup-retention-period 1 \ --allocated-storage 4000 \ --storage-type io1 \ --iops 10000 \ --db-cluster-instance-class db.r6gd.xlarge \ --manage-master-user-password

Para Windows:

aws rds create-db-cluster ^ --db-cluster-identifier mysql-multi-az-db-cluster ^ --engine mysql ^ --engine-version 8.0.28 ^ --backup-retention-period 1 ^ --allocated-storage 4000 ^ --storage-type io1 ^ --iops 10000 ^ --db-cluster-instance-class db.r6gd.xlarge ^ --manage-master-user-password

Para especificar que o RDS gerencie a senha do usuário principal no Secrets Manager, defina o parâmetro ManageMasterUserPassword como true em uma das seguintes operações:

Quando você define o parâmetro ManageMasterUserPassword como true em uma dessas operações, o RDS gera a senha do usuário principal e a gerencia durante todo o ciclo de vida no Secrets Manager.

Para criptografar o segredo, você pode especificar uma chave gerenciada pelo cliente ou usar a chave do KMS fornecida pelo Secrets Manager. Use o parâmetro MasterUserSecretKmsKeyId para especificar uma chave gerenciada pelo cliente. O identificador de chave do AWS KMS é o ARN da chave, o ID da chave, o ARN do alias ou o nome do alias da chave do KMS. Para usar uma chave do KMS em outra Conta da AWS, é necessário usar o ARN da chave ou o ARN do alias. Depois que o RDS estiver gerenciando as credenciais de banco de dados de um cluster de banco de dados, não será possível alterar a chave do KMS usada para criptografar o segredo.

Alternar o segredo da senha do usuário principal para uma instância de banco de dados

Quando o RDS alterna um segredo de senha do usuário principal, o Secrets Manager gera uma nova versão secreta para o segredo existente. A nova versão do segredo contém a nova senha do usuário principal. O Amazon RDS altera a senha do usuário principal da instância de banco de dados para corresponder à nova versão do segredo.

Você pode alternar um segredo imediatamente em vez de esperar por uma alternância programada. Para alternar o segredo de uma senha do usuário principal no Secrets Manager, modifique a instância de banco de dados. Para ter mais informações sobre como modificar uma instância de banco de dados , consulte Modificar uma instância de banco de dados do Amazon RDS.

Você pode alternar o segredo de uma senha do usuário principal imediatamente com o console do RDS, a AWS CLI ou a API do RDS. A nova senha tem sempre 28 caracteres e contém pelo menos um caractere maiúsculo e um minúsculo, um número e um sinal de pontuação.

Para alternar o segredo de uma senha do usuário principal usando o console do RDS, modifique a instância de banco de dados e selecione Rotate secret immediately (Alternar segredo imediatamente) em Settings (Configurações).


						Alternar o segredo da senha do usuário principal imediatamente

Siga as instruções para modificar uma instância de banco de dados com o console em Modificar uma instância de banco de dados do Amazon RDS. Você deve escolher Apply immediately (Aplicar imediatamente) na página de confirmação.

Para alternar o segredo de uma senha do usuário principal usando a AWS CLI, utilize o comando modify-db-instance e especifique a opção --rotate-master-user-password. Você deve especificar a opção --apply-immediately ao alternar a senha principal.

Este exemplo alterna o segredo de uma senha do usuário principal.

Para Linux, macOS ou Unix:

aws rds modify-db-instance \ --db-instance-identifier mydbinstance \ --rotate-master-user-password \ --apply-immediately

Para Windows:

aws rds modify-db-instance ^ --db-instance-identifier mydbinstance ^ --rotate-master-user-password ^ --apply-immediately

Você pode alternar o segredo de uma senha do usuário principal utilizando a operação ModifyDBInstance e definindo o parâmetro RotateMasterUserPassword como true. Você deve definir o parâmetro ApplyImmediately como true ao alternar a senha principal.

Alternar o segredo de uma senha principal do usuário para um cluster de banco de dados multi-AZ

Quando o RDS alterna um segredo de senha do usuário principal, o Secrets Manager gera uma nova versão para o segredo existente. A nova versão do segredo contém a nova senha do usuário principal. O Amazon RDS altera a senha do usuário principal do cluster de banco de dados multi-AZ para corresponder à nova versão do segredo.

Você pode alternar um segredo imediatamente em vez de esperar por uma alternância programada. Para alternar o segredo de uma senha do usuário principal no Secrets Manager, modifique o cluster de banco de dados multi-AZ. Para obter informações sobre como modificar clusters de banco de dados multi-AZ, consulte Modificar um cluster de banco de dados multi-AZ.

Você pode alternar o segredo de uma senha do usuário principal imediatamente com o console do RDS, a AWS CLI ou a API do RDS. A nova senha tem sempre 28 caracteres e contém pelo menos um caractere maiúsculo e um minúsculo, um número e um sinal de pontuação.

Para alternar o segredo de uma senha do usuário principal usando o console do RDS, modifique o cluster de banco de dados multi-AZ e selecione Rotate secret immediately (Alternar segredo imediatamente) em Settings (Configurações).


						Alternar o segredo da senha do usuário principal imediatamente

Siga as instruções para modificar um cluster de banco de dados multi-AZ com o console do RDS em Modificar um cluster de banco de dados multi-AZ. Você deve escolher Apply immediately (Aplicar imediatamente) na página de confirmação.

Para alternar o segredo de uma senha do usuário principal usando a AWS CLI, utilize o comando modify-db-cluster e especifique a opção --rotate-master-user-password. Você deve especificar a opção --apply-immediately ao alternar a senha principal.

Este exemplo alterna o segredo de uma senha do usuário principal.

Para Linux, macOS ou Unix:

aws rds modify-db-cluster \ --db-cluster-identifier mydbcluster \ --rotate-master-user-password \ --apply-immediately

Para Windows:

aws rds modify-db-cluster ^ --db-cluster-identifier mydbcluster ^ --rotate-master-user-password ^ --apply-immediately

Você pode alternar o segredo de uma senha do usuário principal usando a operação ModifyDBCluster e definindo o parâmetro RotateMasterUserPassword como true. Você deve definir o parâmetro ApplyImmediately como true ao alternar a senha principal.

Visualizar os detalhes sobre um segredo para uma instância de banco de dados

É possível recuperar seus segredos usando o console (https://console.aws.amazon.com/secretsmanager/) ou a AWS CLI (comando get-secret-value do Secrets Manager).

Você pode encontrar o nome do recurso da Amazon (ARN) de um segredo gerenciado pelo RDS no Secrets Manager com o console do RDS, a AWS CLI o ou a API do RDS.

Como ver os detalhes sobre um segredo gerenciado pelo RDS no Secrets Manager
  1. Faça login no AWS Management Console e abra o console do Amazon RDS em https://console.aws.amazon.com/rds/.

  2. No painel de navegação, escolha Bancos de dados.

  3. Escolha o nome da instância de banco de dados para mostrar os detalhes.

  4. Escolha a guia Configuração.

    Em Master Credentials ARN (ARN das credenciais principais), você pode ver o ARN do segredo.

    
								Ver os detalhes sobre um segredo gerenciado pelo RDS  no Secrets Manager

    Você pode seguir o link Manage in Secrets Manager (Gerenciar no Secrets Manager) para visualizar e gerenciar o segredo no console do Secrets Manager.

Você pode usar o comando da CLI do RDS describe-db-instances para encontrar as seguintes informações sobre um segredo gerenciado pelo RDS no Secrets Manager:

  • SecretArn: o ARN do segredo

  • SecretStatus: o status do segredo

    Os valores de status possíveis são os seguintes:

    • creating: o segredo está sendo criado.

    • active: o segredo está disponível para uso e alternância normais.

    • rotating: o segredo está sendo alternado.

    • impaired: o segredo pode ser usado para acessar as credenciais do banco de dados, mas não pode ser alternado. Um segredo pode ter esse status se, por exemplo, as permissões forem alteradas para que o RDS não possa mais acessar o segredo nem a chave do KMS do segredo.

      Quando um segredo tem esse status, você pode corrigir a condição que o causou. Se você corrigir a condição que causou o status, ele permanecerá impaired até a próxima alternância. Como alternativa, você pode modificar a instância de banco de dados para desativar o gerenciamento automático das credenciais do banco de dados e, depois, modificar a instância de banco de dados novamente para ativar o gerenciamento automático das credenciais do banco de dados. Para modificar a instância de banco de dados use a opção --manage-master-user-password no comando modify-db-instance.

  • KmsKeyId: o ARN da chave do KMS usada para criptografar o segredo

Especifique a opção --db-instance-identifier para mostrar a saída de uma instância de banco de dados específica. Este exemplo mostra a saída de um segredo usado por uma instância de banco de dados.

aws rds describe-db-instances --db-instance-identifier mydbinstance

Veja a seguir a saída de exemplo de um segredo:

"MasterUserSecret": { "SecretArn": "arn:aws:secretsmanager:eu-west-1:123456789012:secret:rds!db-033d7456-2c96-450d-9d48-f5de3025e51c-xmJRDx", "SecretStatus": "active", "KmsKeyId": "arn:aws:kms:eu-west-1:123456789012:key/0987dcba-09fe-87dc-65ba-ab0987654321" }

Quando você tiver o ARN do segredo, poderá visualizar detalhes sobre o segredo usando o comando da CLI get-secret-value do Secrets Manager.

Este exemplo mostra os detalhes do segredo na saída de exemplo anterior.

Para Linux, macOS ou Unix:

aws secretsmanager get-secret-value \ --secret-id 'arn:aws:secretsmanager:eu-west-1:123456789012:secret:rds!db-033d7456-2c96-450d-9d48-f5de3025e51c-xmJRDx'

Para Windows:

aws secretsmanager get-secret-value ^ --secret-id 'arn:aws:secretsmanager:eu-west-1:123456789012:secret:rds!db-033d7456-2c96-450d-9d48-f5de3025e51c-xmJRDx'

Você pode visualizar o ARN, o status e a chave do KMS de um segredo gerenciado pelo RDS no Secrets Manager usando a operação DescribeDBInstances e definindo o parâmetro DBInstanceIdentifier como um identificador de instância de banco de dados. Detalhes sobre o segredo estão incluídos na saída.

Quando você tiver o ARN do segredo, poderá visualizar detalhes sobre o segredo usando o comando da CLI GetSecretValue do Secrets Manager.

Visualizar os detalhes sobre um segredo para um cluster de banco de dados multi-AZ

É possível recuperar seus segredos usando o console (https://console.aws.amazon.com/secretsmanager/) ou a AWS CLI (comando get-secret-value do Secrets Manager).

Você pode encontrar o nome do recurso da Amazon (ARN) de um segredo gerenciado pelo RDS no Secrets Manager com o console do RDS, a AWS CLI o ou a API do RDS.

Como ver os detalhes sobre um segredo gerenciado pelo RDS no Secrets Manager
  1. Faça login no AWS Management Console e abra o console do Amazon RDS em https://console.aws.amazon.com/rds/.

  2. No painel de navegação, escolha Bancos de dados.

  3. Selecione o nome do cluster de banco de dados multi-AZ para mostrar os detalhes.

  4. Escolha a guia Configuração.

    Em Master Credentials ARN (ARN das credenciais principais), você pode ver o ARN do segredo.

    
								Ver os detalhes sobre um segredo gerenciado pelo RDS  no Secrets Manager

    Você pode seguir o link Manage in Secrets Manager (Gerenciar no Secrets Manager) para visualizar e gerenciar o segredo no console do Secrets Manager.

Você pode usar o comando describe-db-clusters da AWS CLI do RDS para encontrar as seguintes informações sobre um segredo gerenciado pelo RDS no Secrets Manager:

  • SecretArn: o ARN do segredo

  • SecretStatus: o status do segredo

    Os valores de status possíveis são os seguintes:

    • creating: o segredo está sendo criado.

    • active: o segredo está disponível para uso e alternância normais.

    • rotating: o segredo está sendo alternado.

    • impaired: o segredo pode ser usado para acessar as credenciais do banco de dados, mas não pode ser alternado. Um segredo pode ter esse status se, por exemplo, as permissões forem alteradas para que o RDS não possa mais acessar o segredo nem a chave do KMS do segredo.

      Quando um segredo tem esse status, você pode corrigir a condição que o causou. Se você corrigir a condição que causou o status, ele permanecerá impaired até a próxima alternância. Como alternativa, você pode modificar o cluster de banco de dados para desativar o gerenciamento automático das credenciais do banco de dados e, depois, modificar o cluster de banco de dados novamente para ativar o gerenciamento automático das credenciais do banco de dados. Para modificar o cluster de banco de dados, use a opção --manage-master-user-password no comando modify-db-cluster.

  • KmsKeyId: o ARN da chave do KMS usada para criptografar o segredo

Especifique a opção --db-cluster-identifier para mostrar a saída de um cluster de banco de dados específico. Este exemplo mostra a saída de um segredo usado por um cluster de banco de dados.

aws rds describe-db-clusters --db-cluster-identifier mydbcluster

O exemplo a seguir mostra a saída de um segredo:

"MasterUserSecret": { "SecretArn": "arn:aws:secretsmanager:eu-west-1:123456789012:secret:rds!cluster-033d7456-2c96-450d-9d48-f5de3025e51c-xmJRDx", "SecretStatus": "active", "KmsKeyId": "arn:aws:kms:eu-west-1:123456789012:key/0987dcba-09fe-87dc-65ba-ab0987654321" }

Quando você tiver o ARN do segredo, poderá visualizar detalhes sobre o segredo usando o comando da CLI get-secret-value do Secrets Manager.

Este exemplo mostra os detalhes do segredo na saída de exemplo anterior.

Para Linux, macOS ou Unix:

aws secretsmanager get-secret-value \ --secret-id 'arn:aws:secretsmanager:eu-west-1:123456789012:secret:rds!cluster-033d7456-2c96-450d-9d48-f5de3025e51c-xmJRDx'

Para Windows:

aws secretsmanager get-secret-value ^ --secret-id 'arn:aws:secretsmanager:eu-west-1:123456789012:secret:rds!cluster-033d7456-2c96-450d-9d48-f5de3025e51c-xmJRDx'

Você pode visualizar o ARN, o status e a chave do KMS de um segredo gerenciado pelo RDS no Secrets Manager usando a operação DescribeDBClusters do RDS e definindo o parâmetro DBClusterIdentifier como um identificador de cluster de banco de dados. Detalhes sobre o segredo estão incluídos na saída.

Quando você tiver o ARN do segredo, poderá visualizar detalhes sobre o segredo usando o comando da CLI GetSecretValue do Secrets Manager.

Disponibilidade de região e versão

A disponibilidade e a compatibilidade de recursos variam entre versões específicas de cada mecanismo de banco de dados e entre Regiões da AWS. Para ter mais informações sobre a disponibilidade de versões e regiões com a integração do Secrets Manager com o Amazon RDS, consulte Integração do Secrets Manager.