Details
-
New Feature
-
Status: closed
-
Major
-
Resolution: Fixed
-
None
-
All
-
GreenHopper Ranking:0|i0myb3:
-
9223372036854775807
Description
Please add into the tS3Connection and all the other S3 components : PUT, GET etc... the ability to enable/disable the SERVER SIDE ENCRYPTION.
MOST (if not all) Talend users who want to use our S3 component are facing the same issue today; because we don't allow this option; it's not getting through their S3 bucket for PUT or GET.
What to add as Example for the tS3Put (verified by a Prospect):
com.amazonaws.services.s3.model.PutObjectRequest putRequest = new com.amazonaws.services.s3.model.PutObjectRequest(<%=bucket%>, <%=key%>, new java.io.File(<%=file%>));
com.amazonaws.services.s3.model.ObjectMetadata objectMetadata = new com.amazonaws.services.s3.model.ObjectMetadata();
//This should be the method we need to use
// objectMetadata.setSSEAlgorithm(com.amazonaws.services.s3.model.ObjectMetadata.AES_256_SERVER_SIDE_ENCRYPTION);
//This is the deprecated method I have to use because we probably packaged a old JAR for S3.
objectMetadata.setServerSideEncryption(com.amazonaws.services.s3.model.ObjectMetadata.AES_256_SERVER_SIDE_ENCRYPTION);
putRequest.setMetadata(objectMetadata);
conn_<%=cid%>.putObject(putRequest);
As you noticed in the code; I have to use the deprecated method because we probably don't have the latest JARs for S3. Can you also update the JARS to allow new API and Methods ?
Attached is a Quick and Dirty Component fix for a prospect who performs a POC. The code is not optimal but it works just fine for them.
Can we expect to add this resolution to our 5.6.2 release as it's a minor change and could solve a lot of S3 prospects/customers.