Cifrado de datos en reposo para Amazon Location Service
Amazon Location Service proporciona cifrado de forma predeterminada para proteger los datos en reposo confidenciales de los clientes mediante claves de cifrado propias de AWS.
-
Claves propias de AWS: Amazon Location utiliza estas claves de forma predeterminada para cifrar automáticamente los datos de identificación personal. No puede ver, administrar ni usar las llaves propiedad de AWS 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 las claves propiedad de AWS en la Guía para desarrolladores de AWS Key Management Service.
El cifrado de los datos en reposo de forma predeterminada ayuda a reducir la sobrecarga operativa y la complejidad que implica la protección de los datos confidenciales. Al mismo tiempo, le permite crear aplicaciones seguras que cumplen con los estrictos requisitos normativos y de conformidad con el cifrado.
Si bien no puede deshabilitar esta capa de cifrado ni seleccionar un tipo de cifrado alternativo, puede agregar una segunda capa de cifrado sobre las claves de cifrado que AWS ya posee. Para ello, elija una clave gestionada por el cliente al crear sus recursos de recopilación de rastreadores y geocercas:
-
Claves administradas por el cliente: Amazon Location admite el uso de una clave simétrica administrada por el cliente que usted crea, posee y administra para agregar una segunda capa de cifrado sobre el cifrado existente propiedad de AWS. Como usted tiene el control total de esta capa de cifrado, puede realizar tareas como las siguientes:
-
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
-
Agregar etiquetas.
-
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.
-
En la siguiente tabla se resume cómo Amazon Location cifra los datos de identificación personal.
Tipo de datos | Cifrado de AWS de clave propia | Cifrado de claves administradas por el cliente (opcional) |
---|---|---|
Position Una geometría de puntos que contiene los detalles de la posición del dispositivo. |
Habilitado | Habilitado |
PositionProperties Un conjunto de pares clave-valor asociados con la actualización de posición. |
Habilitado | Habilitado |
GeofenceGeometry Geometría de una geocerca poligonal que representa el área geocercada. |
Habilitado | Habilitado |
DeviceId El identificador del dispositivo especificado al cargar una actualización de la posición del dispositivo en un recurso de rastreo. |
Habilitado | No admitido |
GeofenceId Un identificador que se especifica al almacenar una geometría de geocerca o un lote de geocercas en una colección de geocercas determinada. |
Habilitado | No admitido |
nota
Amazon Location permite automáticamente el cifrado en reposo mediante claves propias de AWS para proteger los datos de identificación personal sin coste alguno.
Sin embargo, se aplicarán cargos de AWS KMS cuando utilice una clave administrada por el cliente. Para obtener más información acerca de los precios, consulte Precios de AWS Key Management Service
Para obtener más información acerca de AWS KMS, consulte ¿Qué es AWS Key Management Service?
Cómo utiliza Amazon Location Service las concesiones en AWS KMS
Amazon Location requiere una concesión para utilizar su clave administrada por el cliente.
Cuando crea un recurso de rastreo o una colección de geocercas cifrada con una clave gestionada por el cliente, Amazon Location crea una subvención en tu nombre enviando una solicitud CreateGrant a AWS KMS. Las concesiones en AWS KMS se utilizan para otorgar a Amazon Location acceso a una clave KMS en una cuenta de cliente.
Amazon Location necesita la concesión para utilizar la clave administrada por el cliente para las siguientes operaciones internas:
-
Envíe solicitudes DescribeKey a AWS KMS para comprobar que el identificador de clave de KMS simétrico administrado por el cliente introducido al crear un rastreador o una colección de geocercas es válido.
-
Enviar solicitudes GenerateDataKeyWithoutPlaintext a AWS KMS para generar claves de datos cifradas por su clave gestionada por el cliente.
-
Enviar solicitudes de Decrypt a AWS KMS para descifrar las claves de datos cifradas para que puedan usarse para cifrar sus datos.
Puede revocar el acceso a la concesión o eliminar el acceso del servicio a la clave administrada por el cliente en cualquier momento. Si lo hace, Amazon Location no podrá acceder a ninguno de los datos cifrados por la clave administrada por el cliente, lo que afectará a las operaciones que dependen de esos datos. Por ejemplo, si intentas obtener las posiciones de los dispositivos a partir de un rastreador cifrado al que Amazon Location no puede acceder, la operación mostrará un AccessDeniedException
error.
Crear una clave administrada por el cliente
Puede crear una clave simétrica administrada por el cliente a través de la AWS Management Console o las API de AWS KMS.
Para crear una clave simétrica administrada por el cliente
Siga los pasos para crear una clave simétrica gestionada por el cliente que se indican en la Guía para desarrolladores de AWS Key Management Service.
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 administradas por el cliente en la Guía para desarrolladores de AWS Key Management Service.
Para utilizar la clave administrada por el cliente con sus recursos de Amazon Location, se deben permitir las siguientes operaciones de API en la política de claves:
-
kms:CreateGrant
: añade una concesión a una clave administrada por el cliente. Otorga el acceso de control a una clave KMS específica, que permite acceder a las operaciones de concesión que requieren acceso verificado. Para obtener más información sobre el uso de concesiones, consulte la Guía para desarrolladores de AWS Key Management Service.Esto permite a Amazon Location realizar las siguientes tareas:
-
Llamar a
GenerateDataKeyWithoutPlainText
para generar una clave de datos cifrada y almacenarla, ya que la clave de datos no se utiliza inmediatamente para cifrar. -
Llamar a
Decrypt
para usar la clave de datos cifrados almacenada para acceder a los datos cifrados. -
Configurar una entidad principal que se retire para permitir que el servicio
RetireGrant
.
-
-
kms:DescribeKey
: proporciona los detalles de la clave administrada por el cliente para permitir que Amazon Location valide la clave.
Los siguientes son ejemplos de declaraciones de política que puede agregar para Amazon Location:
"Statement" : [ { "Sid" : "Allow access to principals authorized to use Amazon Location", "Effect" : "Allow", "Principal" : { "AWS" : "*" }, "Action" : [ "kms:DescribeKey", "kms:CreateGrant" ], "Resource" : "*", "Condition" : { "StringEquals" : { "kms:ViaService" : "geo.region.amazonaws.com", "kms:CallerAccount" : "111122223333" } }, { "Sid": "Allow access for key administrators", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:root" }, "Action" : [ "kms:*" ], "Resource": "arn:aws:kms:
region
:111122223333:key/key_ID
" }, { "Sid" : "Allow read-only access to key metadata to the account", "Effect" : "Allow", "Principal" : { "AWS" : "arn:aws:iam::111122223333:root" }, "Action" : [ "kms:Describe*", "kms:Get*", "kms:List*", "kms:RevokeGrant" ], "Resource" : "*" } ]
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.
Especificar una clave administrada por el cliente para Amazon Location
Puede especificar una clave administrada por el cliente como cifrado de segunda capa para los siguientes recursos:
Al crear un recurso, puede especificar la clave de datos introduciendo un ID de KMS, que Amazon Location utiliza para cifrar los datos personales identificables almacenados en el recurso.
-
KMD ID: un identificador de clave para una clave de AWS KMS administrada por el cliente. Introduzca el ID de la clave, el ARN de la clave, el nombre de alias o el ARN del alias.
Contexto de cifrado de Amazon Location Service
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 admitir el cifrado autenticado. Cuando se incluye un contexto de cifrado en una solicitud para cifrar 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 de Amazon Location Service
Amazon Location utiliza el mismo contexto de cifrado en todas las operaciones criptográficas AWS KMS, donde la clave es aws:geo:arn
y el valor es el nombre de recurso de Amazon (ARN) del recurso.
"encryptionContext": { "aws:geo:arn": "arn:aws:geo:us-west-2:111122223333:geofence-collection/SAMPLE-GeofenceCollection" }
Uso del contexto de cifrado para la supervisión
Si utiliza una clave simétrica gestionada por el cliente para cifrar su rastreador o su colección de geocercas, también 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 también aparece en los registros generados por AWS CloudTrail o registros de Amazon CloudWatch.
Utilizar el contexto de cifrado para controlar el acceso a la clave administrada por el cliente
Puede utilizar el contexto de cifrado en las políticas de claves y las políticas de IAM como conditions
para controlar el acceso a la clave simétrica administrada por el cliente. Puede usar también una restricción de contexto de cifrado en una concesión.
Amazon Location utiliza el contexto de cifrado para restringir las concesiones que permiten el acceso a la clave administrada por el cliente o a su cuenta y región. La restricción de concesión requiere que las operaciones que permite la concesión utilicen el contexto de cifrado especificado.
Los siguientes son ejemplos de declaraciones de política de claves para conceder acceso a una clave administrada por el cliente para un contexto de cifrado específico. La condición de esta declaración de política exige que las concesiones tengan una restricción de contexto de cifrado que especifique el contexto de cifrado.
{ "Sid": "Enable DescribeKey", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/ExampleReadOnlyRole" }, "Action": "kms:DescribeKey", "Resource": "*" }, { "Sid": "Enable CreateGrant", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/ExampleReadOnlyRole" }, "Action": "kms:CreateGrant", "Resource": "*", "Condition": { "StringEquals": { "kms:EncryptionContext:aws:geo:arn": "arn:aws:geo:us-west-2:111122223333:tracker/SAMPLE-Tracker" } } }
Supervisión de las claves de cifrado para Amazon Location Service
Cuando utiliza una clave administrada por el cliente de AWS KMS con sus recursos de Amazon Location Service, puede utilizar AWS CloudTrail, registros de Amazon CloudWatch para hacer un seguimiento de las solicitudes que Amazon Location envía a AWS KMS.
Los siguientes ejemplos son eventos AWS CloudTrail para CreateGrant
, GenerateDataKeyWithoutPlainText
, Decrypt
y DescribeKey
para monitorear las operaciones de KMS solicitadas por Amazon Location para acceder al cifrado de datos por su clave administrada por el cliente:
Más información
Los siguientes recursos proporcionan más información sobre cifrado de datos en reposo.
-
Para obtener más información acerca de los conceptos básicos de AWS Key Management Service, consulte la Guía para desarrolladores de AWS Key Management Service.
-
Para obtener más información sobre las prácticas recomendadas de seguridad deAWS Key Management Service, consulte la Guía para desarrolladores de AWS Key Management Service.