Administración de contraseñas con Amazon RDS y AWS Secrets Manager - Amazon Relational Database Service

Administración de contraseñas con Amazon RDS y AWS Secrets Manager

Amazon RDS se integra con Secrets Manager para administrar las contraseñas de usuario maestras de sus instancias de base de datos y clústeres de bases de datos Multi-AZ.

Limitaciones de la integración de Secrets Manager con Amazon RDS

Las siguientes funciones no admiten la administración de contraseñas de usuario maestro con Secrets Manager:

  • Crear una réplica de lectura cuando la base de datos o el clúster de base de datos de origen administran las credenciales con Secrets Manager. Esto se aplica a todos los motores de bases de datos, excepto RDS para SQL Server.

  • Implementaciones azules/verdes de Amazon RDS

  • Amazon RDS Custom

  • Cambio de Oracle Data Guard

  • RDS para Oracle con CDB

Descripción general de la administración de contraseñas de usuarios maestros con AWS Secrets Manager

Con AWS Secrets Manager, puede reemplazar las credenciales con codificación rígida (incluidas las contraseñas de bases de datos), con una llamada a la API de Secrets Manager para recuperar el secreto mediante programación. Para obtener más información acerca de Secrets Manager, consulte la Guía del usuario de AWS Secrets Manager.

Cuando guarda secretos de base de datos en Secrets Manager, su Cuenta de AWS incurre en cargos. Para obtener más información acerca de los precios, consulte Precios de AWS Secrets Manager.

Puede especificar que RDS administre la contraseña de usuarios maestros en Secrets Manager para una instancia de base de datos de Amazon RDS o un clúster de base de datos Multi-AZ al realizar una de las siguientes operaciones:

  • Crear la instancia de base de datos.

  • Crear el clúster de base de datos Multi-AZ.

  • Modificar la instancia de base de datos.

  • Modificar un clúster de base de datos Multi-AZ.

  • Restaurar la instancia de base de datos desde Amazon S3

Al especificar que RDS administre la contraseña del usuario maestro en Secrets Manager, RDS genera la contraseña y la almacena en Secrets Manager. Puede interactuar directamente con el secreto para recuperar las credenciales del usuario maestro. También puede especificar una clave gestionada por el cliente para cifrar el secreto o utilizar la clave de KMS que proporciona Secrets Manager.

RDS administra la configuración del secreto y, de forma predeterminada, lo rota cada siete días. Puede modificar algunos de los ajustes, como el programa de rotación. Si elimina una instancia de base de datos que administra un secreto en Secrets Manager, también se eliminarán el secreto y los metadatos asociados.

Para conectarse a una instancia de base de datos o a un clúster de base de datos Multi-AZ con las credenciales en un secreto, puede recuperar el secreto en Secrets Manager. Para obtener más información, consulte Recuperar secretos de AWS Secrets Manager y Conexión a una base de datos SQL con credenciales en un secreto de AWS Secrets Manager en la Guía del usuario de AWS Secrets Manager.

Ventajas de administrar las contraseñas de usuarios maestros con Secrets Manager

La administración de las contraseñas de usuarios maestros de RDS con Secrets Manager ofrece las siguientes ventajas:

  • RDS genera automáticamente las credenciales de la base de datos.

  • RDS almacena y administra automáticamente las credenciales de la base de datos en AWS Secrets Manager.

  • RDS rota las credenciales de la base de datos con regularidad, sin necesidad de realizar cambios en la aplicación.

  • Secrets Manager protege las credenciales de la base de datos del acceso humano y de la visualización en texto plano.

  • Secrets Manager permite recuperar las credenciales de la base de datos en secretos para las conexiones a bases de datos.

  • Secrets Manager permite un control detallado del acceso a las credenciales de la base de datos en secretos mediante IAM.

  • Si lo desea, puede separar el cifrado de bases de datos del cifrado de credenciales con diferentes claves de KMS.

  • Puede eliminar la administración manual y la rotación de las credenciales de la base de datos.

  • Puede monitorear fácilmente las credenciales de la base de datos con AWS CloudTrail y Amazon CloudWatch.

Para obtener más información acerca de los beneficios de Secrets Manager, consulte la Guía del usuario de AWS Secrets Manager.

Permisos necesarios para la integración de Secrets Manager

Los usuarios deben tener los permisos necesarios para realizar las operaciones relacionadas con la integración de Secrets Manager. Puede crear políticas de IAM que concedan permisos para realizar operaciones de la API concretas en los recursos especificados que necesiten. A continuación, puede asociar esas políticas a los roles o conjuntos de permisos de IAM que necesiten esos permisos. Para obtener más información, consulte Administración de la identidad y el acceso en Amazon RDS.

Para las operaciones de creación, modificación o restauración, el usuario que especifique que Amazon RDS administra la contraseña de usuario maestro en Secrets Manager debe tener permisos para realizar las siguientes operaciones:

  • kms:DescribeKey

  • secretsmanager:CreateSecret

  • secretsmanager:TagResource

Para las operaciones de creación, modificación o restauración, el usuario que especifique la contraseña de usuario maestro en Secrets Manager debe tener permisos para realizar las siguientes operaciones:

  • kms:Decrypt

  • kms:GenerateDataKey

  • kms:CreateGrant

Para las operaciones de modificación, el usuario que rote la contraseña de usuario maestro en Secrets Manager debe tener permisos para realizar la siguiente operación:

  • secretsmanager:RotateSecret

Cumplimiento de la administración de la contraseña del usuario maestro por parte de RDS en AWS Secrets Manager

Puede utilizar las claves de condición de IAM para hacer que RDS administre la contraseña del usuario maestro en AWS Secrets Manager. La siguiente política no permite a los usuarios crear ni restaurar instancias de base de datos o clústeres de bases de datos a menos que RDS administre la contraseña del usuario maestro en 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 aplica la administración de contraseñas en AWS Secrets Manager cuando se crea. Sin embargo, sigue pudiendo deshabilitar la integración de Secrets Manager y establecer manualmente una contraseña maestra si modifica la instancia.

Para evitarlo, incluya rds:ModifyDBInstance, rds:ModifyDBCluster en el bloque de acciones de la política. Tenga en cuenta que esto impide que el usuario aplique más modificaciones a las instancias existentes que no tengan habilitada la integración de Secrets Manager.

Para obtener más información sobre el uso de las claves de condición en las políticas de IAM, consulte Claves de condición de políticas para Amazon RDS y Políticas de ejemplo: uso de claves de condición.

Administración de la contraseña de usuario maestro de una instancia de base de datos con Secrets Manager

Puede configurar la administración de RDS de la contraseña del usuario maestro en Secrets Manager realizando las siguientes acciones:

Puede utilizar la consola de RDS, la AWS CLI o la API de RSD para realizar estas acciones.

Siga las instrucciones para crear o modificar una instancia de base de datos con la consola de RDS:

Al utilizar la consola de RDS para realizar una de estas operaciones, puede especificar que RDS administre la contraseña del usuario maestro en Secrets Manager. Para hacerlo al crear o restaurar una instancia de base de datos, seleccione Manage master credentials in AWS Secrets Manager (Administrar las credenciales maestras en AWS Secrets Manager) en la Credential settings (Configuración de credenciales). Cuando modifique una instancia de base de datos, seleccione Manage master credentials in AWS Secrets Manager (Administrar las credenciales maestras en AWS Secrets Manager) en Settings (Configuración).

La siguiente imagen es un ejemplo de la configuración Manage master credentials in AWS Secrets Manager (Administrar las credenciales maestras en AWS Secrets Manager) que se utiliza al crear o restaurar una instancia de base de datos.

Gestión de las credenciales maestras en AWS Secrets Manager

Al seleccionar esta opción, RDS genera la contraseña de usuario maestro y la administra durante todo su ciclo de vida en Secrets Manager.

Gestión de las credenciales maestras en la AWS Secrets Manager seleccionada

Puede optar por cifrar el secreto con una clave de KMS que proporcione Secrets Manager o con la clave gestionada por el cliente que cree usted. Una vez que RDS administre las credenciales de base de datos para una instancia de base de datos, no se puede cambiar la clave de KMS que se utiliza para cifrar el secreto.

Puede elegir otros ajustes para cumplir con sus requisitos. Para obtener más información sobre la configuración disponible al crear cada instancia de bases de datos, consulte Configuración de instancias de base de datos. Para obtener más información sobre la configuración disponible al modificar cada instancia de bases de datos, consulte Configuración de instancias de base de datos.

Para administrar la contraseña del usuario maestro con RDS en Secrets Manager, especifique la opción --manage-master-user-password en uno de los siguientes comandos AWS CLI:

Al seleccionar la opción --manage-master-user-password en estos comandos, RDS genera la contraseña de usuario maestro y la administra durante todo su ciclo de vida en Secrets Manager.

Para cifrar el secreto, también puede especificar una clave gestionada por el cliente o utilizar la clave de KMS que proporciona Secrets Manager. Use la opción --master-user-secret-kms-key-id para especificar una clave administrada por el cliente. El identificador de la clave de AWS KMS es el ARN de la clave, el identificador de clave, el ARN de alias o el nombre de alias de la clave de KMS. Para especificar una clave en una Cuenta de AWS diferente, debe utilizar la clave de ARN o el alias de ARN. Una vez que RDS administre las credenciales de base de datos para una instancia de base de datos, no se puede cambiar la clave de KMS que se utiliza para cifrar el secreto.

Puede elegir otros ajustes para cumplir con sus requisitos. Para obtener más información sobre la configuración disponible al crear cada instancia de bases de datos, consulte Configuración de instancias de base de datos. Para obtener más información sobre la configuración disponible al modificar cada instancia de bases de datos, consulte Configuración de instancias de base de datos.

En este ejemplo se crea una instancia de base de datos y se especifica que RDS administra la contraseña del usuario maestro en Secrets Manager. El secreto se cifra mediante la clave de KMS que proporciona Secrets Manager.

Para Linux, macOS o 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

En 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 RDS administre la contraseña del usuario maestro en Secrets Manager, defina el parámetro ManageMasterUserPassword en true con alguna de las siguientes operaciones de la API de RDS:

Al seleccionar el parámetro ManageMasterUserPassword en true en estos comandos, RDS genera la contraseña de usuario maestro y la administra durante todo su ciclo de vida en Secrets Manager.

Para cifrar el secreto, también puede especificar una clave gestionada por el cliente o utilizar la clave de KMS que proporciona Secrets Manager. Utilice el parámetro MasterUserSecretKmsKeyId para especificar una clave administrada por el cliente. El identificador de la clave de AWS KMS es el ARN de la clave, el identificador de clave, el ARN de alias o el nombre de alias de la clave de KMS. Para especificar una clave en una Cuenta de AWS diferente, debe utilizar la clave de ARN o el alias de ARN. Una vez que RDS administre las credenciales de base de datos para una instancia de base de datos, no se puede cambiar la clave de KMS que se utiliza para cifrar el secreto.

Administración de la contraseña de usuario maestra para un clúster de base de datos Multi-AZ con Secrets Manager

Puede configurar la administración de RDS de la contraseña del usuario maestro en Secrets Manager cuando realice las siguientes acciones:

Puede utilizar la consola de RDS, la AWS CLI o la API de RSD para realizar estas acciones.

Siga las instrucciones para crear o modificar un clúster de base de datos Multi-AZ con la consola de RDS:

Al utilizar la consola de RDS para realizar una de estas operaciones, puede especificar que RDS administre la contraseña del usuario maestro en Secrets Manager. Para hacerlo al crear o un clúster de base de datos, seleccione Manage master credentials in AWS Secrets Manager (Administrar las credenciales maestras en AWS Secrets Manager) en Credential settings (Configuración de credenciales). Cuando modifique un clúster de base de datos, seleccione Manage master credentials in AWS Secrets Manager (Administrar las credenciales maestras en AWS Secrets Manager) en Settings (Configuración).

La siguiente imagen es un ejemplo de la configuración Manage master credentials in AWS Secrets Manager (Administrar las credenciales maestras en AWS Secrets Manager) que se utiliza al crear o un clúster de base de datos.

Gestión de las credenciales maestras en AWS Secrets Manager

Al seleccionar esta opción, RDS genera la contraseña de usuario maestra y la administra durante todo su ciclo de vida en Secrets Manager.

Gestión de las credenciales maestras en la AWS Secrets Manager seleccionada

Puede optar por cifrar el secreto con una clave de KMS que proporcione Secrets Manager o con la clave gestionada por el cliente que cree usted. Una vez que RDS administre las credenciales de la base de datos de un clúster de base de datos, no podrá cambiar la clave de KMS que se usa para cifrar el secreto.

Puede elegir otros ajustes para cumplir con sus requisitos.

Para obtener más información sobre la configuración disponible al crear un clúster de base de datos Multi-AZ, consulte Configuración para la creación de clústeres de base de datos Multi-AZ. Para obtener más información sobre la configuración disponible al modificar un clúster de base de datos Multi-AZ, consulte Configuración para modificarlos clústeres de base de datos Multi-AZ.

Para administrar la contraseña del usuario maestro con RDS en Secrets Manager, especifique la opción --manage-master-user-password en uno de los siguientes comandos:

Al especificar la opción --manage-master-user-password en estos comandos, RDS genera la contraseña de usuario maestro y la administra durante todo su ciclo de vida en Secrets Manager.

Para cifrar el secreto, también puede especificar una clave gestionada por el cliente o utilizar la clave de KMS que proporciona Secrets Manager. Use la opción --master-user-secret-kms-key-id para especificar una clave administrada por el cliente. El identificador de la clave de AWS KMS es el ARN de la clave, el identificador de clave, el ARN de alias o el nombre de alias de la clave de KMS. Para especificar una clave en una Cuenta de AWS diferente, debe utilizar la clave de ARN o el alias de ARN. Una vez que RDS administre las credenciales de la base de datos de un clúster de base de datos, no podrá cambiar la clave de KMS que se usa para cifrar el secreto.

Puede elegir otros ajustes para cumplir con sus requisitos.

Para obtener más información sobre la configuración disponible al crear un clúster de base de datos Multi-AZ, consulte Configuración para la creación de clústeres de base de datos Multi-AZ. Para obtener más información sobre la configuración disponible al modificar un clúster de base de datos Multi-AZ, consulte Configuración para modificarlos clústeres de base de datos Multi-AZ.

En este ejemplo se crea un clúster de base de datos Multi-AZ y se especifica que RDS administre la contraseña en Secrets Manager. El secreto se cifra mediante la clave de KMS que proporciona Secrets Manager.

Para Linux, macOS o 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

En 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 RDS administre la contraseña del usuario maestro en Secrets Manager, defina el parámetro ManageMasterUserPassword en true con alguna de las siguientes operaciones:

Al seleccionar el parámetro ManageMasterUserPassword en true en una de estas operaciones, RDS genera la contraseña de usuario maestro y la administra durante todo su ciclo de vida en Secrets Manager.

Para cifrar el secreto, también puede especificar una clave gestionada por el cliente o utilizar la clave de KMS que proporciona Secrets Manager. Utilice el parámetro MasterUserSecretKmsKeyId para especificar una clave administrada por el cliente. El identificador de la clave de AWS KMS es el ARN de la clave, el identificador de clave, el ARN de alias o el nombre de alias de la clave de KMS. Para especificar una clave en una Cuenta de AWS diferente, debe utilizar la clave de ARN o el alias de ARN. Una vez que RDS administre las credenciales de la base de datos de un clúster de base de datos, no podrá cambiar la clave de KMS que se usa para cifrar el secreto.

Rotación del secreto de contraseña de usuario maestro para una instancia de base de datos

Cuando RDS rota el secreto de contraseña de usuario maestro, Secrets Manager genera una nueva versión de secreto para el secreto existente. La nueva versión del secreto contiene la nueva contraseña de usuario maestra. Amazon RDS cambia la contraseña de usuario maestro para la instancia de base de datos para que coincida con la contraseña de la nueva versión de secreto.

Puede rotar un secreto inmediatamente en lugar de esperar a que se programe una rotación. Para rotar un secreto de contraseña de un usuario maestro en Secrets Manager, modifique la instancia de base de datos. Para obtener más información sobre la modificación de una instancia de base de datos, consulte Modificación de una instancia de base de datos de Amazon RDS.

Puede cambiar un secreto de contraseña de usuario maestro inmediatamente con la consola de RDS, la AWS CLI de RDS o la API de RDS. La nueva contraseña siempre tiene 28 caracteres y contiene al menos una mayúscula y una minúscula, un número y un signo de puntuación.

Para rotar un secreto de contraseña de usuario maestro mediante la consola de RDS, modifique la instancia de base de datos y seleccione Rotate secret immediately (Rotar el secreto inmediatamente) en Settings (Configuración).

Rotación inmediata de un secreto de contraseña de usuario maestro

Siga las instrucciones para modificar una instancia de base de datos con la consola de RDS en Modificación de una instancia de base de datos de Amazon RDS. Debe elegir Apply immediately (Aplicar inmediatamente) en la página de confirmación.

Para rotar un secreto de contraseña de usuario maestro mediante la AWS CLI, utilice el comando modify-db-instance y especifique la opción --rotate-master-user-password. Debe especificar la opción --apply-immediately al rotar la contraseña maestra.

En este ejemplo, se rota un secreto de contraseña de usuario maestro.

Para Linux, macOS o Unix:

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

En Windows:

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

Puede rotar un secreto de contraseña de usuario maestro mediante la operación ModifyDBInstance y configurar el parámetro RotateMasterUserPassword en true. Debe establecer el parámetro ApplyImmediately en true al rotar la contraseña maestra.

Rotación del secreto de contraseña de usuario maestra para un clúster de base de datos Multi-AZ

Cuando RDS rota un secreto de contraseña de usuario maestro, Secrets Manager genera una nueva versión de secreto para el secreto existente. La nueva versión del secreto contiene la nueva contraseña de usuario maestra. Amazon RDS cambia la contraseña de usuario maestro para el clúster de base de datos Multi-AZ para que coincida con la contraseña de la nueva versión de secreto.

Puede rotar un secreto inmediatamente en lugar de esperar a que se programe una rotación. Para rotar un secreto de contraseña de usuario maestra en Secrets Manager, modifique el clúster de base de datos Multi-AZ. Para obtener más información sobre la modificación de un clúster de base de datos Multi-AZ, consulte Modificación de un clúster de base de datos Multi-AZ.

Puede cambiar un secreto de contraseña de usuario maestro inmediatamente con la consola de RDS, la AWS CLI de RDS o la API de RDS. La nueva contraseña siempre tiene 28 caracteres y contiene al menos una mayúscula y una minúscula, un número y un signo de puntuación.

Para rotar un secreto de contraseña de usuario maestro mediante la consola de RDS, modifique el clúster de base de datos Multi-AZ y seleccione Rotate secret immediately (Rotar el secreto inmediatamente) en Settings (Configuración).

Rotación inmediata de un secreto de contraseña de usuario maestro

Siga las instrucciones para modificar un clúster de base de datos Multi-AZ con la consola RDS en Modificación de un clúster de base de datos Multi-AZ. Debe elegir Apply immediately (Aplicar inmediatamente) en la página de confirmación.

Para rotar un secreto de contraseña de usuario maestro mediante la AWS CLI, utilice el comando modify-db-cluster y especifique la opción --rotate-master-user-password. Debe especificar la opción --apply-immediately al rotar la contraseña maestra.

En este ejemplo, se rota un secreto de contraseña de usuario maestro.

Para Linux, macOS o Unix:

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

En Windows:

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

Puede rotar un secreto de contraseña de usuario maestro mediante la operación ModifyDBCluster y estableciendo el parámetro RotateMasterUserPassword en true. Debe establecer el parámetro ApplyImmediately en true al rotar la contraseña maestra.

Visualización de los detalles de un secreto para una instancia de base de datos

Puede recuperar sus secretos mediante la consola (https://console.aws.amazon.com/secretsmanager/) o la AWS CLI (comando get-secret-value de Secrets Manager).

Puede encontrar el nombre de recurso de Amazon (ARN) de un secreto administrado por RDS en Secrets Manager con la consola de RDS, la AWS CLI de RDS o la API de RDS.

Para ver los detalles de un secreto administrado por RDS en Secrets Manager
  1. Inicie sesión en la AWS Management Console y abra la consola de Amazon RDS en https://console.aws.amazon.com/rds/.

  2. En el panel de navegación, seleccione Databases (Bases de datos).

  3. Seleccione el nombre de la instancia de base de datos para mostrar sus detalles.

  4. Elija la pestaña Configuración.

    En el Master Credentials ARN (ARN de credenciales maestras), puede ver el ARN secreto.

    Visualización de los detalles de un secreto administrado por RDS en Secrets Manager

    Puede seguir el enlace Manage in Secrets Manager (Administrar en Secrets Manager) para ver y administrar el secreto en la consola de Secrets Manager.

Puede utilizar el comando de la CLI de RDS describe-db-instances para buscar la siguiente información sobre un secreto administrado por RDS en Secrets Manager:

  • SecretArn: ARN del secreto

  • SecretStatus: estado del secreto

    Otros valores de estado posibles son:

    • creating: se está creando el secreto.

    • active: el secreto está disponible para su uso y rotación normales.

    • rotating: se está rotando el secreto.

    • impaired: el secreto se puede usar para acceder a las credenciales de la base de datos, pero no se puede rotar. Un secreto puede tener este estado si, por ejemplo, se cambian los permisos para que RDS ya no pueda acceder al secreto ni a la clave de KMS del secreto.

      Cuando un secreto tiene este estado, puede corregir la condición que provocó el estado. Si corrige la condición que causó el estado, el estado sigue siendo impaired hasta la siguiente rotación. De forma alternativa, puede modificar la instancia de base de datos para desactivar la administración automática de las credenciales de la base de datos y, a continuación, volver a modificar la instancia de base de datos para activar la administración automática de las credenciales de la base de datos. Para modificar la instancia de base de datos, use la opción --manage-master-user-password en el comando modify-db-instance.

  • KmsKeyId: ARN de la clave de KMS que se utiliza para cifrar el secreto.

Especifique la opción --db-instance-identifier para mostrar el resultado de una instancia de base de datos específica. En este ejemplo se muestra el resultado de un secreto que utiliza una instancia de base de datos.

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

A continuación, se muestra un ejemplo de resultado de un secreto:

"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" }

Cuando tenga el ARN secreto, podrá ver los detalles del secreto con el comando get-secret-value de la CLI de Secrets Manager.

En este ejemplo se muestran los detalles del secreto del resultado del ejemplo anterior.

Para Linux, macOS o Unix:

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

En Windows:

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

Puede ver el ARN, el estado y la clave de KMS de un secreto administrado por RDS en Secrets Manager mediante la operación DescribeDBInstances y estableciendo el parámetro DBInstanceIdentifier en un identificador de instancia de base de datos. En el resultado se incluyen detalles sobre el secreto.

Cuando tenga el ARN secreto, podrá ver los detalles del secreto con la operación GetSecretValue de Secrets Manager.

Visualización de los detalles de un secreto para un clúster de base de datos Multi-AZ

Puede recuperar sus secretos mediante la consola (https://console.aws.amazon.com/secretsmanager/) o la AWS CLI (comando get-secret-value de Secrets Manager).

Puede encontrar el nombre de recurso de Amazon (ARN) de un secreto administrado por RDS en Secrets Manager con la consola de RDS, la AWS CLI de RDS o la API de RDS.

Para ver los detalles de un secreto administrado por RDS en Secrets Manager
  1. Inicie sesión en la AWS Management Console y abra la consola de Amazon RDS en https://console.aws.amazon.com/rds/.

  2. En el panel de navegación, seleccione Databases (Bases de datos).

  3. Elija el nombre del clúster de base de datos Multi-AZ para mostrar sus detalles.

  4. Elija la pestaña Configuración.

    En el Master Credentials ARN (ARN de credenciales maestras), puede ver el ARN secreto.

    Visualización de los detalles de un secreto administrado por RDS en Secrets Manager

    Puede seguir el enlace Manage in Secrets Manager (Administrar en Secrets Manager) para ver y administrar el secreto en la consola de Secrets Manager.

Puede utilizar el comando describe-db-clusters de la AWS CLI de RDS para buscar la siguiente información sobre un secreto administrado por RDS en Secrets Manager:

  • SecretArn: ARN del secreto

  • SecretStatus: estado del secreto

    Otros valores de estado posibles son:

    • creating: se está creando el secreto.

    • active: el secreto está disponible para su uso y rotación normales.

    • rotating: se está rotando el secreto.

    • impaired: el secreto se puede usar para acceder a las credenciales de la base de datos, pero no se puede rotar. Un secreto puede tener este estado si, por ejemplo, se cambian los permisos para que RDS ya no pueda acceder al secreto ni a la clave de KMS del secreto.

      Cuando un secreto tiene este estado, puede corregir la condición que provocó el estado. Si corrige la condición que causó el estado, el estado sigue siendo impaired hasta la siguiente rotación. De forma alternativa, puede modificar el clúster de base de datos para desactivar la administración automática de las credenciales de la base de datos y, a continuación, volver a modificar el clúster de base de datos para activar la administración automática de las credenciales de la base de datos. Para modificar un clúster de base de datos, use la opción --manage-master-user-password en el comando modify-db-cluster.

  • KmsKeyId: ARN de la clave de KMS que se utiliza para cifrar el secreto.

Especifique la opción --db-cluster-identifier para mostrar el resultado de un clúster de base de datos específica. En este ejemplo se muestra el resultado de un secreto que utiliza un clúster de base de datos.

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

A continuación, se muestra un ejemplo de resultado de un secreto:

"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" }

Cuando tenga el ARN secreto, podrá ver los detalles del secreto con el comando get-secret-value de la CLI de Secrets Manager.

En este ejemplo se muestran los detalles del secreto del resultado del ejemplo anterior.

Para Linux, macOS o Unix:

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

En Windows:

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

Puede ver el ARN, el estado y la clave de KMS de un secreto administrado por RDS en Secrets Manager mediante la operación RDS DescribeDBClusters y estableciendo el parámetro DBClusterIdentifier en un identificador de clúster de base de datos. En el resultado se incluyen detalles sobre el secreto.

Cuando tenga el ARN secreto, podrá ver los detalles del secreto con la operación GetSecretValue de Secrets Manager.

Disponibilidad en regiones y versiones

La disponibilidad y el soporte de las características varía según las versiones específicas de cada motor de base de datos y entre Regiones de AWS. Para obtener más información sobre la disponibilidad de versiones y regiones con la integración de Secrets Manager con Amazon RDS, consulte Regiones y motores de bases de datos admitidos para la integración de Secrets Manager con Amazon RDS.