Настройка переменной среды для файлов JSON в AWS Lambda Chalice - PullRequest
0 голосов
/ 28 января 2019

Я работаю с каким-то Kaggle проектом.Используя библиотеку Python для BigQuery на моем ноутбуке, я могу успешно загрузить набор данных после передачи учетных данных для аутентификации по переменной окружения GOOGLE_APPLICATION_CREDENTIALS.Как объясняется в документации, эта переменная среды указывает на местоположение файла JSON, содержащего учетные данные.

Теперь я хочу запустить этот код на Amazon Lambda , используя Chalice ,Я знаю, что в Chalice есть опция для переменной среды , но я не знаю, как включить файл JSON в приложение Chalice и передать его местоположение в качестве переменной среды.Более того, я не уверен, безопасно ли передавать учетные данные в виде файла JSON в Chalice.

У кого-нибудь есть опыт передачи Google Credential в качестве переменной среды для приложения Chalice?

1 Ответ

0 голосов
/ 31 января 2019

Вы можете просто встроить содержимое файла JSON как переменную среды в Chalice, а затем использовать метод GCP Client.from_service_account_info() для загрузки учетных данных из памяти вместо файла.Этого не рекомендуется, поскольку ваши личные учетные данные GCP, вероятно, будут переданы в систему контроля версий.

Могу ли я предложить вам другие способы передачи учетных данных GCP, отличных от переменных среды.Этот объект JSON можно сохранить в Хранилище параметров AWS System Manager в качестве защищенного параметра.Ваша функция AWS Lambda может затем использовать метод boto3 ssm.get_parameter(), когда это необходимо.

Вы также можете рассмотреть AWS Secrets Manager в качестве другой аналогичной альтернативы.

...