AWS - Centos7 - /home/.aws/credentials не работает - PullRequest
0 голосов
/ 03 августа 2020

У меня есть Centos7 VPS с AWS CLI, установленным в каталоге /home. Я добавил свои учетные данные в aws configure, и он создал следующие файлы:

/home/.aws/credentials

/home/.aws/config

Если я запустил следующий код, он не работает:

$client = new Aws\Lightsail\LightsailClient([
    'region' => 'eu-west-2',
    'version' => '2016-11-28'
]);

Сообщение об ошибке:

AccessDeniedException (client): User: arn:aws:sts::523423432423:assumed-role/AmazonLightsailInstanceRole/i-0eb5b2155b08e5185 is not authorized to perform

Однако, если я добавлю свои учетные данные, как это работает:

$credentials = new Aws\Credentials\Credentials('key', 'secret');

$client = new Aws\Lightsail\LightsailClient([
    'region' => 'eu-west-2',
    'version' => '2016-11-28',
    'credentials' => $credentials
]);

Нужно ли мне делать что-то еще, чтобы мой скрипт прочитал файл /home/.aws/credentials?

1 Ответ

1 голос
/ 03 августа 2020
Do I need to do something extra in order to get my script to read the /home/.aws/credentials file?

Да, вам нужно поместить каталог .aws/credentials в домашний каталог пользователя, выполняющего команду. Это будет что-то вроде /home/username, а это означает, что полный путь к учетным данным будет /home/username/.aws/credentials. Не имеет значения, где вы установили команду aws в.

...