Administración de AWS KMS key - Amazon Relational Database Service

Administración de AWS KMS key

Amazon RDS se integra automáticamente con AWS Key Management Service (AWS KMS) para la administración de claves. Amazon RDS utiliza el cifrado de sobre. Para obtener más información acerca del cifrado de sobre, consulte Cifrado de sobre en la guía para desarrolladores de AWS Key Management Service.

Puede utilizar dos tipos de claves de AWS KMS para cifrar las instancias de base de datos.

  • Si desea tener un control total sobre una clave de KMS, debe crear una clave administrada por el cliente. Para obtener más información acerca de las claves administradas por el cliente, consulte Claves administradas por el cliente en la Guía para desarrolladores de AWS Key Management Service.

    No se puede compartir una instantánea que se haya cifrado con la Clave administrada de AWS de la cuenta de AWS que compartió la instantánea.

  • Las Claves administradas por AWS son claves KMS de la cuenta que se crean, administran y utilizan en su nombre por un servicio de AWS integrado con AWS KMS. De forma predeterminada, se utiliza el RDS Clave administrada de AWS (aws/rds) para el cifrado. No puede administrar, rotar ni eliminar el RDS Clave administrada de AWS. Para obtener más información acerca de las Claves administradas por AWS, consulte Claves administradas por AWS en la Guía para desarrolladores de AWS Key Management Service.

Para administrar las claves KMS que se utilizan para las instancias de base de datos cifradas de Amazon RDS, utilice el AWS Key Management Service (AWS KMS) en la consola AWS KMS, la AWS CLI o la API de AWS KMS. Para ver los registros de auditoría de cada acción realizada con una clave administrada por AWS o por el cliente, utilice AWS CloudTrail. Para obtener más información sobre la rotación de claves, consulte Rotación de claves de AWS KMS.

importante

Si desactiva o revoca permisos para una clave KMS que utiliza una base de datos de RDS, RDS cambia la base de datos a un estado terminal cuando se requiere acceso a la clave KMS. Este cambio podría ser inmediato o diferido, según el caso de uso que requiera acceso a la clave KMS. En dicho estado, la instancia ya no está disponible y no es posible recuperar el estado actual de la base de datos. Para restaurar la instancia de base de datos, debe volver a habilitar el acceso a la clave de KMS para RDS y luego restaurar la instancia desde la última copia de seguridad disponible.

Autorización del uso de una clave administrada por el cliente

Cuando RDS utiliza una clave administrada por el cliente en las operaciones criptográficas, actúa en nombre del usuario que está creando o modificando el recurso de RDS.

Para crear un recurso de RDS con una clave administrada por el cliente, el usuario debe tener permisos para llamar a las siguientes operaciones en la clave administrada por el cliente:

  • kms:CreateGrant

  • kms:DescribeKey

Puede especificar estos permisos necesarios en una política de claves o en una política de IAM si lo permite la política de claves.

Puede hacer que la política de IAM sea más estricta de varias maneras. Por ejemplo, si desea permitir que la clave administrada por el cliente se utilice solo para solicitudes que se originen en RDS, puede utilizar la clave de condición kms:ViaService con el valor rds.<region>.amazonaws.com. Además, puede utilizar las claves o valores de Contexto de cifrado de Amazon RDS como condición para utilizar la clave administrada por el cliente para el cifrado.

Para obtener más información, consulte Permitir a los usuarios de otras cuentas utilizar una clave KMS en la Guía para desarrolladores de AWS Key Management Service y Políticas de claves en AWS KMS.

Contexto de cifrado de Amazon RDS

Cuando RDS utiliza su clave KMS o cuando Amazon EBS utiliza la clave KMS en nombre de RDS, el servicio especifica un contexto de cifrado. El contexto de cifrado es la información autenticada adicional (ADD) que AWS KMS usa para garantizar la integridad de los datos. Cuando se especifica un contexto de cifrado para una operación de cifrado, el servicio debe especificar el mismo contexto de cifrado para la operación de descifrado. De lo contrario, el descifrado produce un error. El contexto de cifrado también se escribe en los registros de AWS CloudTrail para ayudarle a entender por qué se usó una determinada clave KMS. Sus registros de CloudTrail pueden contener numerosas entradas que describen el uso de una clave KMS, pero el contexto de cifrado de cada entrada de registro puede ayudarle a determinar el motivo de ese uso concreto.

Como mínimo, Amazon RDS siempre usa el ID de la instancia de base de datos para el contexto de cifrado, como en el siguiente ejemplo con formato JSON:

{ "aws:rds:db-id": "db-CQYSMDPBRZ7BPMH7Y3RTDG5QY" }

Este contexto de cifrado puede ayudarle a identificar la instancia de base de datos para que se ha utilizado su clave KMS.

Cuando su clave KMS se usa para una determinada instancia de base de datos y un volumen de Amazon EBS específico, tanto el ID de instancia de base de datos como el ID de volumen de Amazon EBS se usan para el contexto de cifrado, como en el siguiente ejemplo con formato JSON:

{ "aws:rds:db-id": "db-BRG7VYS3SVIFQW7234EJQOM5RQ", "aws:ebs:id": "vol-ad8c6542" }