Annotation Interface HandleUnknownAttributes


@Target(TYPE) @Retention(RUNTIME) public @interface HandleUnknownAttributes
Marker annotation that indicates that attributes found during unmarshalling that are in the DynamoDB item but not modeled in the mapper model class should be included in for decryption/signature verification. The default behavior (without this annotation) is to ignore them, which can lead to signature verification failures when attributes are removed from model classes.

If this annotation is added to a class with @DoNotEncrypt, then the unknown attributes will only be included in the signature calculation, and if it's added to a class with default encryption behavior, the unknown attributes will be signed and decrypted.

For guidance on performing a safe data model change procedure, please see DynamoDB Encryption Client Developer Guide: Changing your data model

Author:
Dan Cavallaro