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 con capacidad de búsqueda en DynamoDB
Para configurar las tablas de Amazon DynamoDB para el cifrado con capacidad de búsqueda, debe utilizar el conjunto de claves de AWS KMS jerárquico para generar, cifrar y descifrar las claves de datos utilizadas para proteger los elementos. También debe incluir SearchConfigen la configuración de cifrado de la tabla.
nota
Si utiliza la biblioteca de cifrado del lado del cliente de Java para DynamoDB, debe utilizar el SDK de cifrado de AWS bases de datos de bajo nivel para la API de DynamoDB para cifrar, firmar, verificar y descifrar los elementos de la tabla. El cliente mejorado de DynamoDB y los DynamoDBItemEncryptor
niveles inferiores no admiten el cifrado con capacidad de búsqueda.
Configurar índices secundarios con balizas
Después de configurar las balizas, debe configurar un índice secundario que refleje cada baliza antes de poder buscar en los atributos cifrados.
Al configurar una baliza estándar o compuesta, el SDK de cifrado de AWS bases de datos añade el aws_dbe_b_
prefijo al nombre de la baliza para que el servidor pueda identificarlas fácilmente. Por ejemplo, si nombra una baliza compuestacompoundBeacon
, el nombre completo de la baliza es realmente. aws_dbe_b_compoundBeacon
Si desea configurar índices secundarios que incluyan una baliza estándar o compuesta, debe incluir el aws_dbe_b_
prefijo al identificar el nombre de la baliza.
- Claves de partición y claves de clasificación
-
No puede cifrar los valores de la clave principal. Las claves de partición y clasificación deben estar firmadas. Sus valores de la clave principal no pueden ser una baliza estándar o compuesta.
Los valores de las claves principales deben ser
SIGN_ONLY
, a menos que especifique algúnSIGN_AND_INCLUDE_IN_ENCRYPTION_CONTEXT
atributo, los atributos de partición y ordenación también deben serloSIGN_AND_INCLUDE_IN_ENCRYPTION_CONTEXT
.Sus valores de la clave principal pueden ser balizas firmadas. Si ha configurado balizas firmadas distintas para cada uno de los valores de la clave principal, debe especificar el nombre del atributo que identifica el valor de la clave principal como el nombre de la baliza firmada. Sin embargo, el SDK AWS de cifrado de bases de datos no añade el
aws_dbe_b_
prefijo a las balizas firmadas. Aunque haya configurado balizas firmadas distintas para los valores de la clave principal, solo tendrá que especificar los nombres de los atributos de los valores de la clave principal al configurar un índice secundario. - Índices secundarios locales
-
La clave de clasificación de un índice secundario local puede ser una baliza.
Si especifica una baliza para la clave de clasificación, el tipo debe ser Cadena. Si especifica una baliza estándar o compuesta para la clave de clasificación, debe incluir el
aws_dbe_b_
prefijo al especificar el nombre de la baliza. Si especifica una baliza firmada, especifique el nombre de la baliza sin ningún prefijo. - Índices secundarios globales
-
Tanto la partición como las claves de clasificación de un índice secundario global pueden ser balizas.
Si especifica un indicador para la partición o la clave de clasificación, el tipo debe ser Cadena. Si especifica una baliza estándar o compuesta para la clave de clasificación, debe incluir el prefijo
aws_dbe_b_
al especificar el nombre de la baliza. Si especifica una baliza firmada, especifique el nombre de la baliza sin ningún prefijo. - Proyecciones de atributos
-
Una proyección es el conjunto de atributos que se copia de una tabla en un índice secundario. La clave de partición y la clave de clasificación de la tabla siempre se proyectan en el índice; puede proyectar otros atributos para admitir los requisitos de consulta de la aplicación. DynamoDB ofrece tres opciones diferentes para las proyecciones de atributos
KEYS_ONLY
:INCLUDE
, y.ALL
Si utiliza la proyección de atributos INCLUDE para buscar en una baliza, debe especificar los nombres de todos los atributos a partir de los que se construye la baliza y el nombre de la baliza con el
aws_dbe_b_
prefijo. Por ejemplo, si ha configurado una baliza compuestacompoundBeacon
, desdefield1
field2
, yfield3
, debe especificaraws_dbe_b_compoundBeacon
,field1
field2
, yfield3
en la proyección.Un índice secundario global solo puede usar los atributos especificados explícitamente en la proyección, pero un índice secundario local puede usar cualquier atributo.
Probando las salidas de balizas
Si configuró balizas compuestas o construyó las balizas mediante campos virtuales, le recomendamos comprobar que estas balizas producen el resultado esperado antes de rellenar la tabla de DynamoDB.
El SDK de cifrado AWS de bases de datos proporciona el DynamoDbEncryptionTransforms
servicio que le ayuda a solucionar los problemas de las salidas de balizas compuestas y de campo virtual.
En el siguiente fragmento se crean elementos de prueba, se define el DynamoDbEncryptionTransforms
servicio con la configuración de cifrado de tablas de DynamoDB y se muestra cómo utilizarlos ResolveAttributes
para comprobar que el campo virtual produce el resultado esperado.
En el siguiente fragmento se crea un elemento de prueba, se define el DynamoDbEncryptionTransforms
servicio con la configuración de cifrado de la tabla de DynamoDB y se muestra cómo se utiliza ResolveAttributes
para comprobar que la baliza compuesta produce el resultado esperado.