Прокси Nginx для проблемы аутентификации AWS S3 v4 - PullRequest
0 голосов
/ 30 января 2019

Использование модуля https://github.com/anomalizer/ngx_aws_auth Я пытаюсь настроить Nginx в качестве прокси для корзины S3.К сожалению, вместо этого я получаю:

<Error>
<Code>SignatureDoesNotMatch</Code>
<Message>
The request signature we calculated does not match the signature you     provided. Check your key and signing method.
</Message>
<AWSAccessKeyId>AKIxxxx</AWSAccessKeyId>
<StringToSign>
AWS4-HMAC-SHA256 Wed, 30-Jan-19 16:10:47 GMT 20190130/eu-west-1    /s3/aws4_request     d7e6xxxx
</StringToSign>
<SignatureProvided>
1647xxxx
</SignatureProvided>

Моя конфигурация Nginx:

worker_processes 1;
events {
  worker_connections 1024;
}

http {
  server {
    listen 80;
    client_max_body_size 100G;
    aws_access_key "AKIAxxxx";
    aws_signing_key "489OW0/xxxx=";
    aws_key_scope "20190130/eu-west-1/s3/aws4_request";
    aws_s3_bucket "bucket_name";
    location / {
      aws_sign;
      proxy_set_header x-amz-cf-id "";
      proxy_pass http://bucket_name.s3.amazonaws.com;
      proxy_set_header Host "bucket_name.s3-eu-west-1.amazonaws.com";
      set_by_lua $now "return ngx.cookie_time(ngx.time())";
      proxy_set_header x-amz-date $now;
      proxy_hide_header "x-amz-id-2";
      proxy_hide_header "x-amz-request-id";
      resolver 8.8.8.8 valid=300s;
      resolver_timeout 10s;
    }
}
}

Ключ подписи был сгенерирован с использованием скрипта Python generate_signing_key, прикрепленного к репозиторию.Есть идеи, что тут не так?

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