Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

The request signature not match. #5849

Answered by debora-ito
geetoor-maven asked this question in Q&A
Discussion options

I get this error when i put Object to s3 bucket : " The request signature we calculated does not match the signature you provided. Check your AWS Secret Access Key and signing method. " and strangely when I took the bucket, I definitely didn't get an error like signature not match ( everything went smoothly ).

And I have made sure all the secret keys from s3 are correct.

i use this version dependency :

<dependency>
	<groupId>software.amazon.awssdk</groupId>
	<artifactId>s3</artifactId>
	<version>2.30.0</version>
</dependency>

and i use the java version 17 and spring boot 3.4.1.

is this a bug or just a version error?

You must be logged in to vote

Right, so the third-party solution is most likely impacted by a change released in the Java SDK version 2.30.0 announced here. The third-party needs to accommodate the changes on their side, you should reach out to their support team.

Replies: 1 comment 3 replies

Comment options

Are you sending the request to a third-party AWS-compatible solution or to S3 directly?
Can you share a repro example?

You must be logged in to vote
3 replies
Comment options

yes i sending the request to a third-party AWS-compatible.

this is repro example :

PutObjectRequest putRequest = PutObjectRequest.builder()
 .bucket(bucketName)
 .key(keyName)
 .contentType("text/plain") 
 .build();
s3Client.putObject(putRequest, RequestBody.fromFile(Paths.get(filePath)));
@Bean
 public S3Client s3Client(){
 return S3Client.builder()
 .serviceConfiguration(s3Config)
 .endpointOverride(URI.create("endpoin url third party"))
 .credentialsProvider(StaticCredentialsProvider.create(
 AwsBasicCredentials.create("access key", "secret-key")
 ))
 .region(Region.of("my region"))
 .build();
 }
Comment options

Right, so the third-party solution is most likely impacted by a change released in the Java SDK version 2.30.0 announced here. The third-party needs to accommodate the changes on their side, you should reach out to their support team.

Answer selected by geetoor-maven
Comment options

ok, thanks for your response

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
Q&A
Labels
None yet

AltStyle によって変換されたページ (->オリジナル) /