gsutil rsync Google Store с AWS S3 400 ExcessHeaderValues - PullRequest
0 голосов
/ 17 мая 2019

Я пытаюсь синхронизировать два сегмента, один в 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 Store с локальной папкой не работает!

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>

Когда я удаляю часть S3 в конфигурации boto, синхронизация из 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>

Любая помощь, пожалуйста?Я много раз искал похожую проблему, но ничего не нашел.

1 Ответ

1 голос
/ 20 мая 2019

Проблема была вызвана свойством use-sigv4 = True! Удаление это решило мою проблему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...