Файл профиля учетных данных не распознается AWS SDK

Я получаю пустые объекты для ключа / секрета при использовании файлов учетных данных AWS

[credentials:protected] => Aws\Common\Credentials\Credentials Object
(
[key:protected] =>
[secret:protected] =>
[token:protected] =>
[ttd:protected] => 1
)

Так же как

[service] => sqs
[base_url] => https://sqs.us-east-1.amazonaws.com
[key] =>
[secret] =>
[token] =>
[token.ttd] =>
[credentials.cache] =>
[credentials.cache.key] =>
[credentials.client] =>
[client.backoff] => Guzzle\Plugin\Backoff\BackoffPlugin Object
.........

Код, который я использую, чрезвычайно прост …

Class Foo
{
private sqsClient = null;

public function __construct()
{
$this->sqsClient = SqsClient::factory([
'profile' => 'default',
'region'  => 'us-east-1',
]);

header('content-type: text/plain'); print_r($this->sqsClient); die;
}
}

$sqs = New Foo();

учетные данные, а также файлы конфигурации находятся в ~/.aws/{config,credentials}

конфиг

[default]
output = json
region = us-east-1

полномочия

[default]
aws_access_key_id = XXXXXXXXXXXX
aws_secret_access_key = XXXXXXXXXXXX

Почему они не читаются правильно? Это использует Laravel 5.0. Композитор срезается следующим образом

"require": {
"laravel/framework": "5.0.*",
"laravel/installer": "~1.2",
"aws/aws-sdk-php-laravel": "~2.0",
"aws/aws-sdk-php": "2.8.*"},

0

Решение

Проблема возникла из-за прав доступа к файлам ~/.aws/credentials принадлежащий пользователю root, а не пользователю

0

Другие решения

Других решений пока нет …