java - 如何使用 java API 为 S3 中的对象指定 ACL?

标签 java amazon-web-services amazon-s3

我想授予完全控制权并正在使用它:

 PutObjectAclRequest newAcl = PutObjectAclRequest.builder()
                    .bucket(bucket)
                    .key(objectKey)
                    .grantFullControl(id)
                    .build();

这会出现错误:“参数格式无法识别”。授予完全控制权的正确格式是什么?

最佳答案

发现了。一个有趣的格式:“id=abc”。

完整代码:

S3AsyncClient client = S3AsyncClient.builder()
                        .credentialsProvider(credentials)
                        .build()
PutObjectAclRequest newAcl = PutObjectAclRequest.builder()
                    .bucket(bucket)
                    .key(objectKey)
                    .grantFullControl("id=" + id)
                    .build();
            client.putObjectAcl(newAcl)
                    .get();

关于java - 如何使用 java API 为 S3 中的对象指定 ACL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61490798/

相关文章:

amazon-web-services - 在我的 IaC 堆栈中收到自动存储桶策略的处理程序错误

node.js - AWS Lambda 函数从不调用回调

ssh - 尝试连接到 Amazon EC2 实例时通过 ssh 提示输入密码

c# - 将文件从 amazon s3 帐户传输到另一个

java - 如何将此 URL 与 java 正则表达式匹配

java - Gradle:在顶级构建文件与模块构建文件中声明依赖关系?

java - Android Studio 和 java 编译器没有 SDK 常量

java - Android 应用、Android 8(.1)、90% 华为设备中的 ANR 和崩溃

python - S3.Client.upload_file() 和 S3.Client.upload_fileobj() 有什么区别?

node.js - Azure 函数 listBlobsFlat/listBlobsByHierarchy 不返回任何内容