Hello, I'd like to use S3's server side encryption to feature when I put the blob on S3 (http://docs.aws.amazon.com/AmazonS3/latest/dev/SSEUsingRESTAPI.html). Is there a way to set some type of encryption flag when I put the blob onto S3 with the BlobStore APIs? Or possibly atttach the appropriate header to the request?

I should start off by saying that I'm not the S3 expert here ;-) But looking at the S3Object interface, it may be possible to:

1) Get the S3Client API from your context [1]
2) Create a new S3Object [2]
3) Update the headers on the S3Object using getAllHeaders/setAllHeaders [3]
4) PUT the S3Object [4]

This does not use the portable BlobStore API, though - I can't see an obvious way this would be supported there. That doesn't seem too unreasonable, though, seeing as this is a provider-specific feature.

If you get a chance to try the above steps out, please let us know if they work for you!

ap

[1] https://wiki.apache.org/jclouds/Core%20Concepts - see "You can use API-specific calls where needed" [2] http://javadocs.jclouds.cloudbees.net/org/jclouds/s3/S3Client.html#newS3Object() [3] http://javadocs.jclouds.cloudbees.net/org/jclouds/s3/domain/S3Object.html#setAllHeaders(com.google.common.collect.Multimap) [4] http://javadocs.jclouds.cloudbees.net/org/jclouds/s3/S3Client.html#putObject(java.lang.String, org.jclouds.s3.domain.S3Object, org.jclouds.s3.options.PutObjectOptions...)

Reply via email to