CLI AWS: предварительное назначение aws s3 не работает для региона ap-east-1 (Гонконг) («ограничение местоположения несовместимо с конечной точкой для конкретного региона») - PullRequest
0 голосов
/ 28 сентября 2019

Мне не удается использовать подписанные URL-адреса для объектов S3, находящихся в сегменте в регионе AWS ap-east-1 (Гонконг).

В частности, сначала я устанавливаю версию подписи на V4 (см.https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version) примерно так:

aws configure set default.s3.signature_version s3v4

И затем создайте подписанный URL с помощью этой команды:

aws s3 presign --region=ap-east-1 s3://<name of bucket in ap-east-1 region>/<object name>

Когда я проверяю полученный URL:

curl -i "https://<bucket name>.s3.amazonaws.com/<object name>?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=...%2Fap-east-1%2Fs3%2Faws4_request&X-Amz-Date=20190928T034534Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=..."

... Я получаю ответ HTTP / 400 с телом, установленным в:

<?xml version="1.0" encoding="UTF-8"?>
<Error>
   <Code>IllegalLocationConstraintException</Code>
   <Message>The ap-east-1 location constraint is incompatible for the region specific endpoint this request was sent to. 
   </Message>
   <RequestId>...</RequestId>
<HostId>

Интересно, когда я делаю то же самое для объекта в другом ведре, которое находится в us-west-2 (Орегон) Область AWS, итоговый подписанный URL-адрес работает нормально.

Кто-нибудь сталкивался с этой проблемой? Я не совсем знаю, как разобрать сообщение об ошибке, но мне интересно, нужно ли мне установить --endpoint-url настройки конфигурации и если да, то к чему?

Идеи кому-нибудь?

Спасибо, Сёрен

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