Skip to content

Using --region option results in 400 error reply reading location for buckets #11827

Description

@cyberduck

@dkocher created the issue

Using --region eu-west-1 using Cyberduck CLI results in requests with the authorization header malformed using this default region instead of the expected us-east-1 from AWS for some requests.

The authorization header is malformed; the region 'eu-west-1' is wrong; expecting 'us-east-1'

Such as in

> GET /?location= HTTP/1.1
> Date: Sun, 26 Sep 2021 09:10:18 GMT
> x-amz-request-payer: requester
> x-amz-content-sha256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
> Host: static.cyberduck.ch.s3.amazonaws.com
> x-amz-date: 20210926T091018Z
> Authorization: ********
> Connection: Keep-Alive
> User-Agent: Cyberduck/8.0.0-SNAPSHOT.35836 (Mac OS X/11.6) (x86_64)
< HTTP/1.1 400 Bad Request
< x-amz-request-id: 7T88HFP23DFETSEW
< x-amz-id-2: H0GZDbyXAA5a3TwyP0i8ghkQtxBPsq6YyLSUPfeOwUuUUanZmHQb/PCkWamSsSbLYj/WOqetSPg=
< Content-Type: application/xml
< Transfer-Encoding: chunked
< Date: Sun, 26 Sep 2021 09:10:18 GMT
< Server: AmazonS3
< Connection: close

It seems to query the location of a bucket we should always sign this request with the us-east-1 region. This is the default when the explicit --region parameter is omitted. Alternatively send the request to the specific region as all region endpoints should support determining the bucket location.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    s3AWS S3 Protocol Implementation

    Type

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions