View a markdown version of this page

Cifrado en reposo con claves gestionadas por el cliente - AWS Centro de resiliencia

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Cifrado en reposo con claves gestionadas por el cliente

Resilience Hub de última generación proporciona cifrado de forma predeterminada para proteger los datos confidenciales de los clientes que están en reposo. Claves propiedad de AWS

  • La próxima generación de Resilience Hub utiliza estas claves de forma predeterminada para cifrar automáticamente los datos confidenciales. No puede ver, administrar Claves propiedad de AWS, usar ni auditar su uso. Sin embargo, no tiene que realizar ninguna acción ni cambiar ningún programa para proteger las claves que cifran sus datos. Para obtener más información, consulte https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-owned-cmk en la Guía para desarrolladores de AWS Key Management Service .

Si bien no puede deshabilitar esta capa de cifrado ni seleccionar un tipo de cifrado alternativo, puede agregar una segunda capa de cifrado especificando una clave administrada por el cliente al crear un recurso de servicio:

  • Claves administradas por el cliente La próxima generación de Resilience Hub admite el uso de una clave de cifrado simétrico administrada por el cliente que usted crea, posee y administra. Como usted tiene el control total de este cifrado, puede realizar dichas tareas como:

    • Establecer y mantener políticas de claves

    • Establecer y mantener concesiones y políticas de IAM

    • Habilitar y deshabilitar políticas de claves

    • Rotar el material criptográfico

    • Adición de etiquetas de

    • Crear alias de clave

    • Programar la eliminación de claves

    Para obtener más información, consulte las claves administradas por el cliente en la  Guía para desarrolladores de AWS Key Management Service .

La siguiente tabla resume cómo Resilience Hub de próxima generación cifra los datos confidenciales.

Cifrado de tipos de datos en Resilience Hub de próxima generación
Tipo de datos: AWS cifrado de clave propia Cifrado de claves gestionado por el cliente (opcional)

description

Descripciones de los servicios, los sistemas y las políticas de resiliencia.

Habilitado Habilitado

finding

La evaluación busca nombres, descripciones, razonamientos y comentarios.

Habilitado Habilitado

recommendation

Descripciones de las recomendaciones y cambios sugeridos relacionados con los hallazgos.

Habilitado Habilitado

serviceFunction

Nombres y descripciones de las funciones de servicio.

Habilitado Habilitado

assumption

Texto de suposición asociado a las funciones de servicio.

Habilitado Habilitado

userJourney

Descripciones de los viajes del usuario.

Habilitado Habilitado

event

Descripciones del registro de eventos de servicio.

Habilitado Habilitado

assessmentData

Datos intermedios generados por los flujos de trabajo de evaluación de los agentes, incluida la topología, la configuración de los recursos y los datos de trabajo almacenados en Amazon S3.

Habilitado Habilitado

Identificadores de recursos

Nombres de recursos, ARN, tipos de recursos y regiones. Los nombres de los recursos se utilizan en el contexto de los identificadores y el cifrado y no deben contener datos confidenciales.

Habilitado No compatible
nota

La nueva generación de Resilience Hub permite automáticamente el cifrado en Claves propiedad de AWS reposo sin coste alguno. Sin embargo, se aplican AWS KMS cargos por el uso de una clave administrada por el cliente. Para obtener más información acerca de los precios, consulte Precios de AWS Key Management Service.

importante

La próxima generación de Resilience Hub solo admite claves KMS de cifrado simétrico. No puede usar ningún otro tipo de clave KMS para cifrar los recursos de Resilience Hub de próxima generación. Para obtener ayuda para determinar si una clave KMS es una clave de cifrado simétrica, consulte Identificación de claves KMS simétricas y asimétricas en la Guía para desarrolladores.AWS Key Management Service

Cómo utiliza Resilience Hub de próxima generación las subvenciones en AWS KMS

La próxima generación de Resilience Hub requiere una subvención para utilizar su clave gestionada por el cliente durante los flujos de trabajo de evaluación asincrónica.

Cuando crea un servicio con una clave gestionada por el cliente, Resilience Hub de próxima generación crea una subvención en su nombre enviando una CreateGrantsolicitud a. AWS KMS La concesión se limita al contexto de cifrado de su servicio y solo permite las siguientes operaciones:

  • Encrypt— Cifre los campos confidenciales, como las conclusiones, las recomendaciones y las suposiciones generadas durante los flujos de trabajo de evaluación.

  • Decrypt— Descifre los datos previamente cifrados durante el procesamiento de la evaluación.

  • GenerateDataKey— Genere claves de datos para cifrar los datos de evaluación intermedia almacenados en Amazon S3.

La subvención se retira cuando se elimina el servicio. También puedes revocar el acceso a la concesión o eliminar el acceso del servicio a la clave gestionada por el cliente en cualquier momento. Si lo hace, Resilience Hub de próxima generación no podrá acceder a ninguno de los datos cifrados por la clave gestionada por el cliente, lo que afectará a las operaciones de la API y a los flujos de trabajo de evaluación que dependen de esos datos.

Para las operaciones de API sincrónicas (como crear o actualizar un servicio), Resilience Hub de última generación utiliza directamente los permisos de la persona que llama en la clave KMS, sin necesidad de concederlos.

Creación de una clave administrada por el cliente

Puede crear una clave de cifrado simétrico gestionada por el cliente mediante las API Consola de administración de AWS o las API. AWS KMS

Para crear una clave de cifrado simétrico gestionada por el cliente

Siga los pasos de Creación de claves de KMS de cifrado simétricas en la Guía para desarrolladores de AWS Key Management Service .

Especificar una clave gestionada por el cliente para Resilience Hub de próxima generación

Puede especificar una clave gestionada por el cliente al crear un servicio, un sistema o una política de resiliencia. Cuando proporciona un identificador de clave de KMS, Resilience Hub de próxima generación utiliza esa clave para cifrar todos los datos confidenciales asociados al recurso.

Puede especificar la clave mediante cualquiera de los siguientes identificadores clave:

  • ID de clave (por ejemplo,1234abcd-12ab-34cd-56ef-1234567890ab)

  • ARN clave (por ejemplo,) arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab

  • Nombre de alias (por ejemplo,alias/my-key)

  • Alias ARN (por ejemplo,) arn:aws:kms:us-west-2:111122223333:alias/my-key

Para especificar una clave gestionada por el cliente, utilice el kmsKeyId parámetro al llamar a las operaciones CreateServiceCreateSystem, o de la CreatePolicy API.

Política de claves

Las políticas de clave controlan el acceso a la clave administrada por el cliente. Cada clave administrada por el cliente debe tener exactamente una política de clave, que contiene instrucciones que determinan quién puede usar la clave y cómo puede utilizarla. Cuando crea la clave administrada por el cliente, puede especificar una política de clave. Para obtener más información, consulte Administración del acceso a las claves en la Guía para desarrolladores de AWS Key Management Service .

La siguiente política clave permite que Resilience Hub de próxima generación utilice su clave. Limita cada permiso únicamente a las operaciones que requiere la próxima generación de Resilience Hub, y utiliza condiciones de contexto de cifrado para garantizar que su clave solo se pueda utilizar para sus recursos específicos. Reemplace CUSTOMER-ACCOUNT-ID CUSTOMER-ROLE y REGION con sus valores.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowResilienceHubDescribeKey", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::CUSTOMER-ACCOUNT-ID:role/CUSTOMER-ROLE" }, "Action": "kms:DescribeKey", "Resource": "*", "Condition": { "StringEquals": { "kms:ViaService": "resiliencehub.REGION.amazonaws.com" } } }, { "Sid": "AllowResilienceHubEncryptDecryptForServices", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::CUSTOMER-ACCOUNT-ID:role/CUSTOMER-ROLE" }, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": "*", "Condition": { "StringEquals": { "kms:ViaService": "resiliencehub.REGION.amazonaws.com" }, "StringLike": { "kms:EncryptionContext:aws:resiliencehub:service-arn": "arn:aws:resiliencehub:*:CUSTOMER-ACCOUNT-ID:service/*" } } }, { "Sid": "AllowResilienceHubEncryptDecryptForSystems", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::CUSTOMER-ACCOUNT-ID:role/CUSTOMER-ROLE" }, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": "*", "Condition": { "StringEquals": { "kms:ViaService": "resiliencehub.REGION.amazonaws.com" }, "StringLike": { "kms:EncryptionContext:aws:resiliencehub:system-arn": "arn:aws:resiliencehub:*:CUSTOMER-ACCOUNT-ID:system/*" } } }, { "Sid": "AllowResilienceHubEncryptDecryptForPolicies", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::CUSTOMER-ACCOUNT-ID:role/CUSTOMER-ROLE" }, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": "*", "Condition": { "StringEquals": { "kms:ViaService": "resiliencehub.REGION.amazonaws.com" }, "StringLike": { "kms:EncryptionContext:aws:resiliencehub:policy-arn": "arn:aws:resiliencehub:*:CUSTOMER-ACCOUNT-ID:policy/*" } } }, { "Sid": "AllowResilienceHubCreateGrantForAsyncWorkflows", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::CUSTOMER-ACCOUNT-ID:role/CUSTOMER-ROLE" }, "Action": "kms:CreateGrant", "Resource": "*", "Condition": { "StringEquals": { "kms:ViaService": "resiliencehub.REGION.amazonaws.com", "kms:GrantConstraintType": "EncryptionContextSubset" }, "StringLike": { "kms:EncryptionContext:aws:resiliencehub:service-arn": "arn:aws:resiliencehub:*:CUSTOMER-ACCOUNT-ID:service/*" }, "ForAllValues:StringEquals": { "kms:GrantOperations": [ "Encrypt", "Decrypt", "GenerateDataKey" ] } } } ] }

Las declaraciones de política proporcionan los siguientes permisos:

  • AllowResilienceHubDescribeKey— Permite que Resilience Hub, de última generación, valide que su clave existe y que es una clave de cifrado simétrica cuando la especifica durante la creación del servicio.

  • AllowResilienceHubEncryptDecryptForServices— Permite a Resilience Hub de última generación cifrar y descifrar datos de nivel de servicio (hallazgos, recomendaciones, suposiciones, funciones del servicio, eventos y datos de evaluación) durante las llamadas sincrónicas a la API. Se ajusta a sus recursos de servicio por contexto de cifrado.

  • AllowResilienceHubEncryptDecryptForSystems— Permite que Resilience Hub, de última generación, cifre y descifre los datos a nivel del sistema (descripciones del sistema y descripciones del recorrido del usuario) durante las llamadas sincrónicas a la API. Se basa en los recursos del sistema por contexto de cifrado.

  • AllowResilienceHubEncryptDecryptForPolicies— Permite a Resilience Hub, de última generación, cifrar y descifrar datos a nivel de políticas (descripciones de las políticas de resiliencia) durante las llamadas sincrónicas a la API. Se basa en los recursos de su política por contexto de cifrado.

  • AllowResilienceHubCreateGrantForAsyncWorkflows— Permite que Resilience Hub, de próxima generación, cree una subvención para flujos de trabajo de evaluación asíncronos. La concesión se limita únicamente a las operaciones necesarias (cifrar, descifrar GenerateDataKey) y debe incluir una restricción de subconjunto de contexto de cifrado vinculada al ARN de su servicio.

Para obtener más información sobre cómo especificar permisos en una política, consulte la Guía para desarrolladores de AWS Key Management Service .

Para obtener información sobre la solución de problemas de acceso a las claves, consulte la Guía para desarrolladores de AWS Key Management Service .

Contexto de cifrado de Resilience Hub de última generación

Un contexto de cifrado es un conjunto opcional de pares clave-valor que pueden contener información contextual adicional sobre los datos.

AWS KMS utiliza el contexto de cifrado como datos autenticados adicionales para respaldar el cifrado autenticado. Al incluir un contexto de cifrado en una solicitud de cifrado de datos, AWS KMS vincula el contexto de cifrado a los datos cifrados. Para descifrar los datos, debe incluir el mismo contexto de cifrado en la solicitud.

Contexto de cifrado Resilience Hub de última generación

La próxima generación de Resilience Hub utiliza las siguientes claves de contexto de cifrado según el tipo de recurso:

Claves de contexto de cifrado
Clave de contexto de cifrado Alcance Utilizado para
aws:resiliencehub:service-arn Servicio Hallazgos, recomendaciones, suposiciones, funciones de servicio, dependencias, eventos y datos de evaluación
aws:resiliencehub:system-arn Sistema Descripciones del sistema y descripciones del recorrido del usuario
aws:resiliencehub:policy-arn Política Descripciones de las políticas de resiliencia

Ejemplo de contexto de cifrado para una operación de nivel de servicio:

"encryptionContext": { "aws:resiliencehub:service-arn": "arn:aws:resiliencehub:us-west-2:111122223333:service/my-service:abc123" }

Uso del contexto de cifrado para la supervisión

Si utiliza una clave de cifrado simétrico gestionada por el cliente para cifrar sus datos, puede utilizar el contexto de cifrado en los registros y registros de auditoría para identificar cómo se utiliza la clave gestionada por el cliente. El contexto de cifrado aparece en los registros generados por. AWS CloudTrail

Uso del contexto de cifrado para controlar el acceso

Puede utilizar el contexto de cifrado en las políticas clave y en las políticas de IAM conditions para controlar el acceso a su clave de cifrado simétrico gestionada por el cliente. Puede usar también una restricción de contexto de cifrado en una concesión.

La próxima generación de Resilience Hub utiliza una restricción de subconjunto del contexto de cifrado en las subvenciones para garantizar que los flujos de trabajo asíncronos solo puedan cifrar y descifrar los datos que pertenezcan al servicio específico para el que se creó la subvención.

Supervisión de sus claves de cifrado para Resilience Hub de última generación

Cuando utiliza una clave gestionada por el cliente con sus recursos de Resilience Hub de próxima generación, puede utilizarla AWS CloudTrailpara realizar un seguimiento de las solicitudes que envía Resilience Hub de próxima generación AWS KMS.

CreateGrant

Cuando crea un servicio con una clave gestionada por el cliente, Resilience Hub de próxima generación envía una CreateGrant solicitud en su nombre para permitir que los flujos de trabajo de evaluación asincrónica utilicen su clave. La concesión es específica del servicio y está limitada por el contexto de cifrado. Resilience Hub, de última generación, se utiliza RetireGrant para eliminar la subvención cuando se elimina el servicio.

El siguiente evento de ejemplo registra la operación CreateGrant:

{ "eventVersion": "1.11", "userIdentity": { "type": "AssumedRole", "principalId": "AROAEXAMPLE:session-name", "arn": "arn:aws:sts::111122223333:assumed-role/YourRole/session-name", "accountId": "111122223333", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "AROAEXAMPLE", "arn": "arn:aws:iam::111122223333:role/YourRole", "accountId": "111122223333", "userName": "YourRole" } }, "invokedBy": "resiliencehub.amazonaws.com" }, "eventTime": "2026-01-15T10:07:22Z", "eventSource": "kms.amazonaws.com", "eventName": "CreateGrant", "awsRegion": "us-west-2", "sourceIPAddress": "resiliencehub.amazonaws.com", "userAgent": "resiliencehub.amazonaws.com", "requestParameters": { "granteePrincipal": "resiliencehub.amazonaws.com", "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "retiringPrincipal": "resiliencehub.amazonaws.com", "operations": [ "Decrypt", "GenerateDataKey", "Encrypt" ], "constraints": { "encryptionContextSubset": { "aws:resiliencehub:service-arn": "arn:aws:resiliencehub:us-west-2:111122223333:service/my-service:abc123" } } }, "responseElements": { "grantId": "0ab0ac0d0b000f00ea00cc0a0e00fc00bce000c000f0000000c0bc0a0000aaafSAMPLE", "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" }, "requestID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE", "eventID": "56d4e434-abb6-4dd7-8558-ad38560d03b1", "readOnly": false, "resources": [ { "accountId": "111122223333", "type": "AWS::KMS::Key", "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" } ], "eventType": "AwsApiCall", "managementEvent": true, "recipientAccountId": "111122223333", "eventCategory": "Management" }
GenerateDataKey

Cuando Resilience Hub de última generación cifra los datos con la clave gestionada por el cliente, envía una GenerateDataKey solicitud para generar una clave de datos. Esto ocurre tanto durante las llamadas a la API sincrónicas (por ejemplo, al crear un servicio con una descripción) como en los flujos de trabajo de evaluación asíncronos.

El siguiente evento de ejemplo registra la operación GenerateDataKey:

{ "eventVersion": "1.11", "userIdentity": { "type": "AWSService", "invokedBy": "resiliencehub.amazonaws.com" }, "eventTime": "2026-01-15T11:18:36Z", "eventSource": "kms.amazonaws.com", "eventName": "GenerateDataKey", "awsRegion": "us-west-2", "sourceIPAddress": "resiliencehub.amazonaws.com", "userAgent": "resiliencehub.amazonaws.com", "requestParameters": { "numberOfBytes": 32, "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "encryptionContext": { "aws:resiliencehub:service-arn": "arn:aws:resiliencehub:us-west-2:111122223333:service/my-service:abc123", "aws-crypto-public-key": "AwAnnorjRE+DFQYIuDKjGEvlXwro5Rdiegk8flmq7m0N..." } }, "responseElements": null, "requestID": "c5bedc9b-e6d6-45f8-b121-c9851a3d718a", "eventID": "e839a7ed-e4a9-32a3-b92a-2c7237a40c82", "readOnly": true, "resources": [ { "accountId": "111122223333", "type": "AWS::KMS::Key", "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" } ], "eventType": "AwsApiCall", "managementEvent": true, "recipientAccountId": "111122223333", "eventCategory": "Management" }
Decrypt

Cuando recupera recursos mediante operaciones de API o cuando los flujos de trabajo de evaluación procesan datos previamente almacenados, Resilience Hub de próxima generación envía Decrypt solicitudes para descifrar los datos.

El siguiente evento de ejemplo registra la operación Decrypt:

{ "eventVersion": "1.11", "userIdentity": { "type": "AssumedRole", "principalId": "AROAEXAMPLE:session-name", "arn": "arn:aws:sts::111122223333:assumed-role/YourRole/session-name", "accountId": "111122223333", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "AROAEXAMPLE", "arn": "arn:aws:iam::111122223333:role/YourRole", "accountId": "111122223333", "userName": "YourRole" } }, "invokedBy": "resiliencehub.amazonaws.com" }, "eventTime": "2026-01-15T11:27:49Z", "eventSource": "kms.amazonaws.com", "eventName": "Decrypt", "awsRegion": "us-west-2", "sourceIPAddress": "resiliencehub.amazonaws.com", "userAgent": "resiliencehub.amazonaws.com", "requestParameters": { "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "encryptionAlgorithm": "SYMMETRIC_DEFAULT", "encryptionContext": { "aws:resiliencehub:service-arn": "arn:aws:resiliencehub:us-west-2:111122223333:service/my-service:abc123", "aws-crypto-public-key": "A/9P3BC05WjeQONZR1fBiEqWKEse/Yk1lMxd2VIh2ED5..." } }, "responseElements": null, "requestID": "30f8e9bc-4e0a-4359-8bc3-8278ef42c206", "eventID": "195ef070-c952-4c28-9883-29bca297a08c", "readOnly": true, "resources": [ { "accountId": "111122223333", "type": "AWS::KMS::Key", "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" } ], "eventType": "AwsApiCall", "managementEvent": true, "recipientAccountId": "111122223333", "eventCategory": "Management" }
DescribeKey

La próxima generación de Resilience Hub envía DescribeKey solicitudes para comprobar que la clave gestionada por el cliente asociada a su servicio existe en la cuenta y la región y es una clave de cifrado simétrica válida.

El siguiente evento de ejemplo registra la operación DescribeKey:

{ "eventVersion": "1.11", "userIdentity": { "type": "AssumedRole", "principalId": "AROAEXAMPLE:session-name", "arn": "arn:aws:sts::111122223333:assumed-role/YourRole/session-name", "accountId": "111122223333", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "AROAEXAMPLE", "arn": "arn:aws:iam::111122223333:role/YourRole", "accountId": "111122223333", "userName": "YourRole" } }, "invokedBy": "resiliencehub.amazonaws.com" }, "eventTime": "2026-01-15T10:07:13Z", "eventSource": "kms.amazonaws.com", "eventName": "DescribeKey", "awsRegion": "us-west-2", "sourceIPAddress": "resiliencehub.amazonaws.com", "userAgent": "resiliencehub.amazonaws.com", "requestParameters": { "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" }, "responseElements": null, "requestID": "e427932c-448b-49aa-88e1-b311c27ba753", "eventID": "48c596a5-83c7-4603-b0cf-be0ff2548623", "readOnly": true, "resources": [ { "accountId": "111122223333", "type": "AWS::KMS::Key", "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" } ], "eventType": "AwsApiCall", "managementEvent": true, "recipientAccountId": "111122223333", "eventCategory": "Management" }

Más información

Los siguientes recursos proporcionan más información sobre cifrado de datos en reposo.