Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dynamodb Enhanced Client support for Encryption #1871

Closed
santanugho opened this issue Jun 2, 2020 · 13 comments
Closed

Dynamodb Enhanced Client support for Encryption #1871

santanugho opened this issue Jun 2, 2020 · 13 comments
Labels
dynamodb-enhanced feature-request A feature should be added or improved. p1 This is a high priority issue

Comments

@santanugho
Copy link

Describe the issue

Recently we were evaluating to upgrade to enhanced dynamo db client. In production, all our customer information is encrypted. In the existing implementation, we pass the encryption material provider in the constructor of DynamoDBMapper like:

DynamoDBMapper scanMapper = new DynamoDBMapper(dynamoDbCLient, scanConfig, new AttributeEncryptor(encryptionMaterialProvider));

As per my understanding, in the enhanced dynamo db client DynamoDbTable is the replacement, but neither its constructor nor any other method has the flexibility to pass the Encryption material provider.

My question is, isnt encryption supported in the enhanced dynamo db client? If it does, can someone please point me to the right API or may be a sample code?

Your Environment

  • AWS Java SDK version used: dynamodb-enhanced-2.13.27
  • JDK version used: JDK 11
  • Operating System and version: MacOS Mojave
@santanugho santanugho added guidance Question that needs advice or information. needs-triage This issue or PR still needs to be triaged. labels Jun 2, 2020
@debora-ito
Copy link
Member

Client-side encryption is not currently supported by the DynamoDB Enhanced Client, but it is in the roadmap. Marking this as a feature request.

@debora-ito debora-ito added dynamodb-enhanced feature-request A feature should be added or improved. and removed guidance Question that needs advice or information. needs-triage This issue or PR still needs to be triaged. labels Jun 3, 2020
@debora-ito debora-ito changed the title Does Dynamodb Enhanced Client supports Encryption at REST like DynamoDBMapper Dynamodb Enhanced Client support for Encryption Jun 3, 2020
@santanugho
Copy link
Author

Client-side encryption is not currently supported by the DynamoDB Enhanced Client, but it is in the roadmap. Marking this as a feature request.

Thanks a lot for the prompt reply, is there any planned release date for this feature?

@debora-ito
Copy link
Member

No timeline for it yet, will update when he have one.

@santanugho
Copy link
Author

Is it also safe to assume that with enhanced DDB client at its current state, signing DDB objects is also not possible out of the box? Isnt data signing is something recommended for data integrity?

@imgaray
Copy link

imgaray commented Dec 1, 2020

Hey folks, any news on this? The absence of encryption is a strong enough argument for people to decide in favor of DDB Mapper and wait on DDB enhanced client adoption, which in consequence means delaying SDK v2 adoption. Would it be possible to get this prioritized?

Thanks

@yanzhangusc
Copy link

There has been 1.5 years since the release of the EnhancedClient, the client side encryption support seems to be essential for any user that has a more strict security requirement. Can we get this prioritized?

@bfg
Copy link

bfg commented Feb 25, 2022

Hey!

I'm in the process of migration of our services to AWS SDK 2.x and I was just left baffled by the fact that I'm not able to integrate KMS into dynamo enhanced client, meaning that this crucial feature prevents me from otherwise by AWS recommended migration to SDK 2.x.

This is not an ordinary open source project, it's a large cloud provider's proprietary SDK - please assign some dev time to this feature; ticket is almost 2 years old.

@debora-ito
Copy link
Member

Hi @bfg @yanzhangusc @imgaray and everyone following this thread: thank you for your feedback, we really appreciate the engagement and the patience.

We understand the pain of lack of encryption support. But in the end it's a matter of prioritization: the team has limited bandwidth (as any development team) and DynamoDB Enhanced client alone has currently 25 feature requests, from a total of 150+ feature requests across the SDK. We are actively working on highly requested features like update expressions, support for polymorphic types, TransferManager copy support, plus some internal enhancements.

We're discussing how to improve the visibility of our roadmap - our current Project board got out-of-date pretty fast. In the meantime, you all can help with prioritization by adding a 👍 in the original issue description (please don't add single comments with +1, they are not helpful). We use the 👍 count as one of the inputs when we plan for feature work.

@lifehetu
Copy link

lifehetu commented Aug 4, 2022

Hi,

Is using the AWS Enhanced Client a bottleneck regarding data encryption? How is one supposed to encrypt data using the AWS-recommended Enhanced Client library?

@yasminetalby yasminetalby added the p1 This is a high priority issue label Nov 12, 2022
@debora-ito
Copy link
Member

debora-ito commented Jul 17, 2023

The new AWS Database Encryption SDK is out, in developer preview mode.

https://docs.aws.amazon.com/database-encryption-sdk/latest/devguide/what-is-database-encryption-sdk.html

As a reminder, libraries under developer preview are not recommended for production environments because they are subject to change. Feel free to share your feedback here or in the library's Github repo -
aws/aws-database-encryption-sdk-dynamodb-java

@texastony
Copy link

Update: The AWS Database Encryption SDK for DynamoDB in Java has GA-ed!
@debora-ito I believe this issue can be closed.

@debora-ito
Copy link
Member

Closing.

Copy link

This issue is now closed. Comments on closed issues are hard for our team to see.
If you need more assistance, please open a new issue that references this one.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dynamodb-enhanced feature-request A feature should be added or improved. p1 This is a high priority issue
Projects
None yet
Development

No branches or pull requests

8 participants