【问题标题】:gsutil rsync Google Store with AWS S3 400 ExcessHeaderValuesgsutil rsync Google Store 与 AWS S3 400 ExcessHeaderValues
【发布时间】:2019-10-04 22:30:42
【问题描述】:

我正在尝试同步两个存储桶,一个在 Google Store 中,第二个在 S3 中,为此我正在使用 gsutil。我的boto配置如下:

[Credentials]

gs_access_key_id = XXXX
gs_secret_access_key = XXX

aws_access_key_id = XXX
aws_secret_access_key = XXX

[s3]
host = s3.eu-central-1.amazonaws.com
use-sigv4 = True

我的问题是,使用此配置,即使从 Google 商店同步到本地文件夹也不起作用!

gsutil -m rsync -r gs://some-bucket ./localfolder/

它失败并出现以下错误:

BadRequestException: 400 ExcessHeaderValues
<?xml version='1.0' encoding='UTF-8'?>
<Error>
  <Code>ExcessHeaderValues</Code>
  <Message>Multiple HTTP header values where one was expected.</Message>
  <Details>Requests cannot specify both x-amz and x-goog headers</Details>
</Error>

当我删除 boto 配置中的 S3 部分时,从 Google Store 同步到本地文件夹的工作正常,但同步到 S3 存储桶失败并出现错误:

BadRequestException: 400 InvalidRequest
<?xml version="1.0" encoding="UTF-8"?>
<Error>
  <Code>InvalidRequest</Code>
  <Message>The authorization mechanism you have provided is not supported. Please use AWS4-HMAC-SHA256.</Message>
  <RequestId>XXX</RequestId>
  <HostId>XXX</HostId>
</Error>

有什么帮助吗?我搜索了很多类似的问题,但没有找到任何东西。

【问题讨论】:

    标签: amazon-web-services amazon-s3 google-cloud-platform google-cloud-storage gsutil


    【解决方案1】:

    问题是由use-sigv4 = True 属性引起的!删除它解决了我的问题。

    【讨论】:

      猜你喜欢
      • 2015-04-19
      • 2015-09-19
      • 2018-04-30
      • 2017-04-26
      • 2023-03-12
      • 2022-12-28
      • 2020-11-23
      • 1970-01-01
      • 2014-09-21
      相关资源
      最近更新 更多