1 回答
- 最新
- 投票最多
- 评论最多
0
【以下的回答经过翻译处理】 该错误消息表明,您需要使用AWS Signature Version 4来验证带Object Lock参数的请求到Amazon S3。这是因为Object Lock是一项提供WORM(一次写入,多次读取)功能的特性,因此需要更高级别的安全性。
您可以通过从代码中删除.withClientConfiguration(new ClientConfiguration().withSignerOverride("AWSS3V4SignerType"))行来启用Signature Version 4。如果所调用的API需要它,AWS SDK for Java将自动使用Signature Version 4。
以下是更新后的代码:
final AwsClientBuilder.EndpointConfiguration endpoint = new AwsClientBuilder.EndpointConfiguration(
s3Endpoint,
s3Region
);
final AmazonS3 s3client = AmazonS3ClientBuilder
.standard()
.withEndpointConfiguration(endpoint)
.enablePathStyleAccess()
.build();
请注意,建议使用IAM role或Instance Profile为在EC2或EKS上运行的应用程序提供AWS凭证,而不是使用显式访问密钥。这种方法可以帮助提高安全性和简化凭证管理。
相关内容
- AWS 官方已更新 7 个月前