Configuración opcional de AWS KMS keys
Si desea cifrar y descifrar los recursos con una clave de cifrado de AWS KMS, seleccione la casilla de verificación. Si ya dispone de claves, podrá seleccionarlas entre los identificadores que aparecen en un menú desplegable. Para generar una clave nueva, seleccione Crear una clave. Puede añadir o cambiar una clave de KMS cada vez que actualice la zona de aterrizaje.
Al seleccionar Configurar la zona de aterrizaje, AWS Control Tower realiza una comprobación previa para validar la clave de KMS. La clave debe cumplir los requisitos siguientes:
-
Habilitado
-
Simétrica
-
No ser una clave de varias regiones
-
Tener los permisos correctos añadidos a la política
-
La clave está en la cuenta de administración
Es posible que aparezca un banner de error si la clave no cumple estos requisitos. En ese caso, elija otra clave o genere una. Asegúrese de editar la política de permisos de la clave, tal y como se describe en la sección siguiente.
Actualización de la política de claves de KMS
Antes de poder actualizar una política de claves de KMS, debe crear una clave de KMS. Para obtener más información, consulte Creating a key policy en la Guía del desarrollador de AWS Key Management Service.
Para utilizar una clave de KMS en AWS Control Tower, debe actualizar la política de claves de KMS predeterminada añadiendo los permisos mínimos necesarios para AWS Config y AWS CloudTrail. Como práctica recomendada, le sugerimos que incluya los permisos mínimos necesarios en cualquier política. Al actualizar una política de claves de KMS, puede añadir permisos como grupo en una única instrucción JSON o línea por línea.
El procedimiento describe cómo actualizar la política de claves de KMS predeterminada en la consola de AWS KMS añadiendo instrucciones de política que permitan a AWS Config y a CloudTrail utilizar AWS KMS para el cifrado. Las instrucciones de política requieren que incluya la siguiente información:
-
YOUR-MANAGEMENT-ACCOUNT-ID
: el ID de la cuenta de administración en la que se configurará AWS Control Tower. -
YOUR-HOME-REGION
: la región de origen que seleccionará al configurar AWS Control Tower. -
YOUR-KMS-KEY-ID
: el ID de la clave de KMS que se utilizará con la política.
Actualización de la política de claves de KMS
-
Abra la consola de AWS KMS en https://console.aws.amazon.com/kms
. -
En el panel de navegación, seleccione Claves administradas por el cliente.
-
En la tabla, seleccione la clave que desee editar.
-
En la pestaña Política de claves, asegúrese de que puede ver la política de claves. Si no puede ver la política de claves, seleccione Cambiar a la vista de política.
-
Seleccione Editar y actualice la política de claves de KMS predeterminada añadiendo las siguientes instrucciones de política para AWS Config y CloudTrail.
Instrucción de política de AWS Config
{ "Sid": "Allow Config to use KMS for encryption", "Effect": "Allow", "Principal": { "Service": "config.amazonaws.com" }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": "arn:aws:kms:
YOUR-HOME-REGION
:YOUR-MANAGEMENT-ACCOUNT-ID
:key/YOUR-KMS-KEY-ID
" }Instrucción de política de CloudTrail
{ "Sid": "Allow CloudTrail to use KMS for encryption", "Effect": "Allow", "Principal": { "Service": "cloudtrail.amazonaws.com" }, "Action": [ "kms:GenerateDataKey*", "kms:Decrypt" ], "Resource": "arn:aws:kms:
YOUR-HOME-REGION
:YOUR-MANAGEMENT-ACCOUNT-ID
:key/YOUR-KMS-KEY-ID
", "Condition": { "StringEquals": { "aws:SourceArn": "arn:aws:cloudtrail:YOUR-HOME-REGION
:YOUR-MANAGEMENT-ACCOUNT-ID
:trail/aws-controltower-BaselineCloudTrail" }, "StringLike": { "kms:EncryptionContext:aws:cloudtrail:arn": "arn:aws:cloudtrail:*:YOUR-MANAGEMENT-ACCOUNT-ID
:trail/*" } } } -
Elija Guardar cambios.
Ejemplo de política de claves de KMS
La siguiente política de ejemplo muestra cómo se vería la política de claves de KMS después de añadir las instrucciones de política que conceden a AWS Config y CloudTrail los permisos mínimos necesarios. La política de ejemplo no incluye la política de claves de KMS predeterminada.
{
"Version": "2012-10-17",
"Id": "CustomKMSPolicy",
"Statement": [
{
... YOUR-EXISTING-POLICIES
...
},
{
"Sid": "Allow Config to use KMS for encryption",
"Effect": "Allow",
"Principal": {
"Service": "config.amazonaws.com"
},
"Action": [
"kms:Decrypt",
"kms:GenerateDataKey"
],
"Resource": "arn:aws:kms:YOUR-HOME-REGION
:YOUR-MANAGEMENT-ACCOUNT-ID
:key/YOUR-KMS-KEY-ID
"
},
{
"Sid": "Allow CloudTrail to use KMS for encryption",
"Effect": "Allow",
"Principal": {
"Service": "cloudtrail.amazonaws.com"
},
"Action": [
"kms:GenerateDataKey*",
"kms:Decrypt"
],
"Resource": "arn:aws:kms:YOUR-HOME-REGION
:YOUR-MANAGEMENT-ACCOUNT-ID
:key/YOUR-KMS-KEY-ID
",
"Condition": {
"StringEquals": {
"aws:SourceArn": "arn:aws:cloudtrail:YOUR-HOME-REGION
:YOUR-MANAGEMENT-ACCOUNT-ID
:trail/aws-controltower-BaselineCloudTrail"
},
"StringLike": {
"kms:EncryptionContext:aws:cloudtrail:arn": "arn:aws:cloudtrail:*:YOUR-MANAGEMENT-ACCOUNT-ID
:trail/*"
}
}
}
]
}
Para ver otros ejemplos de políticas, consulte las páginas siguientes:
-
Granting encrypt permissions en la Guía del usuario de AWS CloudTrail.
-
Required Permissions for the KMS Key When Using Service-Linked RolesS3 Bucket Delivery) en la Guía para desarrolladores de AWS Config.
Protección contra atacantes
Al añadir determinadas condiciones a las políticas, puede ayudar a prevenir un tipo específico de ataque, conocido como ataque del suplente confuso, que se produce cuando una entidad coacciona a otra con más privilegios para que lleve a cabo una acción, como la suplantación entre servicios. Para obtener información general sobre las condiciones de las políticas, consulte también Especificación de las condiciones de una política.
AWS Key Management Service (AWS KMS) permite crear claves de KMS de varias regiones y claves asimétricas; sin embargo, AWS Control Tower no admite claves de varias regiones ni claves asimétricas. AWS Control Tower realiza una comprobación previa de las claves existentes. Es posible que aparezca un mensaje de error si selecciona una clave de varias regiones o una clave asimétrica. En ese caso, genere otra clave para utilizarla con los recursos de AWS Control Tower.
Para obtener más información sobre AWS KMS, consulte la Guía para desarrolladores de AWS KMS.
Tenga en cuenta que los datos de los clientes en AWS Control Tower se cifran en reposo, de forma predeterminada, mediante SSE-S3.