I am doing some investigation on whether it is possible to use DynamoDB streams with encrypted data using the latest DynamoDB sdk updates i.e. can DynamoDB streams decrypt data that was encrypted using the DynamoDB enhanced API.
Typically, when you encrypt data using version 3.x of the Java client-side encryption library for DynamoDB, it uses the DynamoDbEncryptionInterceptor
, which gets set into the DbClient using code similar to the following
final DynamoDbClient ddb = DynamoDbClient.builder()
.overrideConfiguration(
ClientOverrideConfiguration.builder()
.addExecutionInterceptor(encryptionInterceptor)
.build())
The problem is when I tried to initialize a DynamoDbStreamsClient
with this interceptor, I got an exception message
DynamoDbEncryptionInterceptor does not support use with services other than DynamoDb.
So my question is , whether there is an easy way to use DynamoDbStreamsClient
to read client side encrypted data?
Thank you for your help!