Использование роли службы IAM для учетных данных в сервисах AWS с PHP - PullRequest
2 голосов
/ 12 июня 2019

У меня есть приложение PHP, работающее на эластичном бобовом стебле, которое использует некоторые сервисы AWS, такие как S3, RDS и SES. В настоящее время я делаю то, что они не рекомендуют, а именно жестко кодировать мои учетные данные, когда я инициализирую клиента для любой из этих служб. Код выглядит следующим образом:

$s3 = new S3Client([
    'region' => 'us-west-2',
    'version' => 'latest',
    'credentials' => [
        'key'    => ‘**********’,
       'secret' => ‘******************’,
    ],
]);

Я пытаюсь отойти от этого, и есть много документации AWS о том, как действовать, но почти нет примеров, которые я мог бы найти. Я рассматриваю возможность использования роли службы IAM, к которой прикреплены все правильные политики. Шаги:

  1. В экземпляре эластичного боба роль службы, связанная с этим экземпляром, равна aws-elastic-beanstalk-role
  2. Я прикрепил все необходимые политики к этой роли службы для всех различных служб, которые я использую. Это было сделано из консоли управления.

Теперь, как бы я сослался на учетные данные при инициализации клиента, как указано выше? Я, честно говоря, не смог найти пример, как это сделать. Я использую AWS SDK для PHP версии 3.0. Спасибо за любые указатели.

1 Ответ

1 голос
/ 12 июня 2019

Просто удалите поле credentials из параметров клиента s3.

Подробности

Если вы не предоставите явно учетные значения, AWS SDK будет проходить через цепочку поставщиков учетных данных по умолчанию , чтобы попытаться найти учетные данные.

Он ищет учетные данные в следующем порядке:

  1. Переменные среды
  2. Профиль или файлы конфигурации в файловой системе
  3. Предполагаемые роли (через профили экземпляров EC2, роли Lambda и т. Д.)

Если у вас не настроены переменные или профили среды, SDK будет использовать роль, прикрепленную к вашему экземпляру EC2, для подписи запросов.

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