Все AWS SDK ищут учетные данные из различных источников в указанном c порядке приоритета. Вы можете увидеть этот порядок в документации boto3 .
Обычно, если SDK не может найти какие-либо учетные данные из любого из источников, в которых он ищет, тогда он сообщает об ошибке при получении учетных данных от последнего поставщика учетных данных в своем списке поиска, и это обычно (и, возможно, всегда) учетные данные STS из службы метаданных экземпляра.
В вашем случае вы даже не работаете на AWS поэтому служба метаданных экземпляра неактуальна, и вы видите сообщение об ошибке: красная сельдь .
Вот что, я подозреваю, происходит: вы пытаетесь предоставить учетные данные через ~/.aws/credentials
файл, но AWS PHP SDK не находит там учетные данные. Таким образом, может происходить одно из следующих действий:
- ваше PHP приложение работает от имени другого пользователя Linux и, следовательно, его домашний каталог не совпадает с тем, который вы поместили
.aws/credentials
файл в - ваш
~/.aws/credentials
файл каким-то образом недействителен или имеет нулевые учетные данные (вряд ли, я бы сказал)
Мой голос за # 1.