Проблема при загрузке файла в aws s3 v4
Я пытаюсь загрузить свой файл субтитров в корзину s3. В моем Java-коде я написал заголовки авторизации, как указано ниже:
byte[] signning=getSignatureKey();
StringBuilder sb = new StringBuilder();
for (byte b : signning) {
sb.append(String.format("%02X ", b));
}
obj.setHeader("Signature", sb.toString().replaceAll("\\s+","").toLowerCase());
obj.setHeader("Authorization", "AWS4-HMAC-SHA256");
obj.setHeader("SignedHeaders","text/plain;s3.amazonaws.com;"+dateFormat1.format(date1));
obj.setContentType("text/plain");
PutObjectRequest requestObject = new PutObjectRequest(bucket, key, file);
CannedAccessControlList readAcl = CannedAccessControlList.PublicRead;
requestObject.setCannedAcl(readAcl);
requestObject.setMetadata(obj);
amazonS3.putObject(requestObject);
Моя область ведра s3 - Мумбаи, и версия ведра - V4.
Я получаю следующее исключение:
AmazonS3Exception: Status Code: 400, AWS Service: Amazon S3, AWS Request ID: A375493B0B2573BE, AWS Error Code: InvalidRequest, AWS Error Message: The authorization mechanism you have provided is not supported. Please use AWS4-HMAC-SHA256., S3 Extended Request ID: 5am0QU0QsJAloIX26XHg83nV9k2HolFsNSR3Qt+XWEIWVoSHzLfbT778F8vDH3IKTm1mhHgc7o4=
at com.amazonaws.http.AmazonHttpClient.handleErrorResponse(AmazonHttpClient.java:679)
может кто-нибудь помочь мне, где я делаю неправильно
заранее спасибо