AWS Java SDK手动设置签名版本

11t*_*ion 4 amazon-s3 aws-sdk

我正在尝试访问AWS S3顶部的Blob存储服务。它支持AWS开发工具包及其签名版本2。

我在这里使用代码来访问此服务。

是否可以手动设置AWS SDK发出的请求的签名版本?

根据此页

AWS当前支持两个签名版本:签名版本2和签名版本4,本节将对此进行介绍。大多数服务支持版本4,如果服务支持版本4,我们强烈建议您使用该版本。

我找不到如何手动将签名版本设置为2或4的方法。

Jam*_*mes 7

从S3开发人员指南- 在请求身份验证中指定签名版本

Java SDK

在代码中添加以下内容。

System.setProperty(SDKGlobalConfiguration.ENABLE_S3_SIGV4_SYSTEM_PROPERTY, "true");

或者,在命令行上,指定以下内容。

-Dcom.amazonaws.services.s3.enableV4

看起来v2以前是AWS开发工具包中的默认设置,但是v4现在是从SDK v1.11.0开始(2016年5月)开始的默认设置。