«Указанный вами ключ доступа AWS отсутствует в наших записях». при попытке использовать AWS CLI - PullRequest
0 голосов
/ 03 ноября 2018

Я пытаюсь получить доступ к своему S3 Bucket через Cli. У меня все настроено, например, есть файл credentials, в котором я выполняю эту работу, проверяю, чтобы переменные окружения для $AWS_SECRET_ACCESS_KEY и $AWS_ACCESS_KEY_ID содержали правильные вещи, и вручную устанавливал их, используя aws configure .

credentials содержит следующую информацию, полностью исключенную:

[sts]
aws_access_key_id = ASIAXXXXXXXXXXXXXXXX
aws_secret_access_key = XXXXXXXXXXXXXXXXXXXXXXXXX
aws_security_token = XXXXXXXXXXXXXXXXXXXXXX
aws_session_expiration = 2018-11-03T00:21:25+0000
aws_session_token = XXXXXXXXXXXXXXXXXXXXXXX
[default]
aws_access_key_id = ASIAXXXXXXXXXXXXXXXXXXX
aws_secret_access_key = XXXXXXXXXXXXXXXXXXX

Также, чтобы убедиться, что у меня все настроено, я также запустил aws configure:

(venv) ~/.aws $ aws configure list
      Name                    Value             Type    Location
      ----                    -----             ----    --------
   profile                <not set>             None    None
access_key     ****************XXXX shared-credentials-file
secret_key     ****************XXXX shared-credentials-file
    region  

          us-east-1      config-file    ~/.aws/config

Однако, когда я запускаю следующее, он говорит, что у меня есть эта ошибка:

(venv) ~/.aws $ aws s3 sync s3://mybucket/my/path ~/my/path
fatal error: An error occurred (InvalidAccessKeyId) when calling the ListObjectsV2 operation: The AWS Access Key Id you provided does not exist in our records.

Я понятия не имею, как обойти это и исчерпал все мои варианты поиска в Google.

1 Ответ

0 голосов
/ 03 ноября 2018

Учетные данные, начинающиеся с ASIA, являются временными учетными данными, сгенерированными с помощью службы токенов безопасности, и должны использоваться с токеном.

Когда вы запускаете команду aws s3 sync, она использует учетные данные [По умолчанию], для которых не определено aws_security_token.

Попробуйте добавить --profile sts к команде, чтобы она использовала учетные данные [sts].

...