nextflow-io / nextflow-s3fs

An S3 File System Provider for Java 7 (project archived)
Apache License 2.0
1 stars 10 forks source link

AWS ACL ownerships as default #23

Closed sohrab-saraei closed 3 years ago

sohrab-saraei commented 3 years ago

Hello,

Can we add CannedAccessControlList.BucketOwnerFullControl so that the bucket owner can have access to the files that are published to the bucket. Not having this, causes issues when the files are being published to buckets with different owners.

git diff src/main/java/com/upplication/s3fs/S3OutputStream.java
diff --git a/src/main/java/com/upplication/s3fs/S3OutputStream.java b/src/main/java/com/upplication/s3fs/S3OutputStream.java
index 5034756..abcb43c 100644
--- a/src/main/java/com/upplication/s3fs/S3OutputStream.java
+++ b/src/main/java/com/upplication/s3fs/S3OutputStream.java
@@ -545,7 +545,8 @@ public final class S3OutputStream extends OutputStream {
         meta.setContentLength(contentLength);
         meta.setContentMD5( Base64.encodeAsString(checksum) );

-        final PutObjectRequest request = new PutObjectRequest(objectId.getBucket(), objectId.getKey(), content, meta);
+        final PutObjectRequest request = new PutObjectRequest(objectId.getBucket(), objectId.getKey(), content, meta)
+                .withCannedAcl(CannedAccessControlList.BucketOwnerFullControl);

         if (storageClass != null) {
             request.setStorageClass(storageClass);
sohrab-saraei commented 3 years ago

@pditommaso I can see you guys added support for CANNED ACLs recently, so I will close this issue.