The Amazon DynamoDB Client-side Encryption in Java supports encryption and signing of your data when stored in Amazon DynamoDB. A typical use of this library is when you are using DynamoDBMapper, where transparent protection of all objects serialized through the mapper can be enabled via configuring an AttributeEncryptor. Use SaveBehavior.PUT or SaveBehavior.CLOBBER with AttributeEncryptor. If you do not do so you risk corrupting your signatures and encrypted data. When PUT or CLOBBER is not specified, fields that are present in the record may not be passed down to the encryptor, which results in fields being left out of the record signature. This in turn can result in records failing to decrypt. For more advanced use cases where tighter control over the encryption and signing process is necessary, the low-level DynamoDBEncryptor can be used directly.
Features
- Requires Java 8 development environment
- You can easily save and retrieve a Book object to and from Amazon DynamoDB
- Enable transparent encryption and signing
- By default all attributes except the primary keys are both encrypted and signed for maximum security
- You need to provide attribute actions that tell the DynamoDB Encryption Client which attributes to encrypt and sign
- You need to take additional steps to safely migrate the client-side encryption configuration