#aws-sdk-js
#aws-sdk-js
Вопрос:
Я хотел бы составить список профилей с помощью AWS JS SDK, чтобы пользователи могли выбрать профиль AWS, который они хотят использовать для остальной части выполнения кода.
Я знаю, что могу попросить SDK загрузить учетные данные из профиля. Но я хочу перечислить эти профили.
Профили хранятся в ~/.aws/credentials
по умолчанию, но на их расположение могут влиять различные переменные среды. Вот почему я бы предпочел не читать этот файл напрямую, а вместо этого полагаться на логику SDK.
Конечное приложение — это приложение CLI с полным доступом к компьютеру пользователя (NodeJS, не запущенное в браузере).
Ответ №1:
Оказывается, в версии 3 JS SDK есть пакет только для этого:
npm install @aws-sdk/shared-ini-file-loader
const sharedIniFileLoader = require('@aws-sdk/shared-ini-file-loader');
const profiles = await sharedIniFileLoader.loadSharedConfigFiles();
Комментарии:
1. Чтобы получить только имена профилей, вы можете получить доступ к
configFile
значению:const profileNames = Object.keys(profiles.configFile)