PyCharm: почему «Консоль Python» не обращается к файлу ~ \ .aws \ credentials?Как установить это в «Python Console» - PullRequest
0 голосов
/ 07 декабря 2018

Я занимаюсь разработкой таблиц AWS DynamoDb в Pycharm.Для этого я создал виртуальную среду с Python 3.6 и установил необходимые библиотеки, такие как boto3.Я также установил свои учетные данные AWS с помощью инструмента AWS CLI в файле ~ / .aws / credentials.

Проблема в том, что когда я просто запускаю код, он работает как чудо-кнопка и может прочитать файл учетных данных.Однако когда я выбираю запуск кода в «консоли Python», я получаю сообщение об ошибке, что срок действия учетных данных истек.Мне кажется, что каким-то образом «консоль Python» не может получить доступ к файлу ~ / .aws / credentials и ищет где-то еще учетные данные.Или boto3 не обращается к файлу учетных данных из ~ / .aws / credentials, когда я выбираю код для запуска в консоли python.

Может кто-нибудь подсказать мне, как настроить учетные данные в консоли Python, чтобы я мог выполнять код в интерактивном режиме.

Спасибо,

1 Ответ

0 голосов
/ 07 декабря 2018

Из Учетные данные - Документация Boto 3 Документация 1.9.61 :

Механизм, в котором boto3 ищет учетные данные, заключается в поиске списка возможных местоположений и остановке в кратчайшие сроки.как он находит учетные данные.Порядок, в котором Boto3 выполняет поиск учетных данных:

  • Передача учетных данных в качестве параметров в методе boto.client()
  • Передача учетных данных в качестве параметров при создании объекта Session
  • Переменные среды
  • Общий файл учетных данных (~/.aws/credentials)
  • Файл конфигурации AWS (~/.aws/config)
  • Предположим, поставщик роли
  • Файл конфигурации Boto2 (/etc/boto.cfg и ~/.boto)
  • Служба метаданных экземпляра в экземпляре Amazon EC2, для которой настроена роль IAM.

Поэтому, если она не использует учетные данныефайл, вероятно, он получает учетные данные из переменных среды.

...