#amazon-web-services #intellij-idea #dockerfile #credentials
#amazon-web-services #intellij-idea #dockerfile #учетные данные
Вопрос:
Я часто использую конфигурации запуска / отладки IntelliJ Dockerfile в AWS. Я использую его в основном для локального запуска своих контейнеров, и они используют такие сервисы AWS, как S3 и Secrets Manager в нашей тестовой учетной записи.
Мы используем учетные данные AWS (секреты / токены и т.д.), Срок действия которых истекает каждый час. Сейчас я передаю учетные данные через параметры среды следующим образом:
-e AWS_SECRET_ACCESS_ID=значение (значение ключа, взятого из файла учетных данных). Я опускаю два других ключа для краткости, но он следует той же парадигме КЛЮЧА / ЗНАЧЕНИЯ, что и в предыдущем примере.
Это работает, но с этим связано несколько проблем.
- Я должен передать фактическое значение учетных данных в переменные среды. Не такая уж ужасная проблема, но поскольку срок их действия истекает каждый час, мне приходится обновлять конфигурацию запуска / отладки значениями обновления каждый час.
- В связи с вышесказанным, я не могу понять, как программно получить значения учетных данных с помощью вызова «aws configure».
У меня есть скрипт Bash, который я запускаю, который обновляет учетные данные AWS и сохраняет их в моем профиле по УМОЛЧАНИЮ в локальной папке «.aws».
Что я действительно хотел бы сделать, так это иметь конфигурацию запуска / отладки Dockerfile без необходимости взлома файла «учетные данные» из «.aws» и копирования / вставки значений в конфигурацию запуска / отладки.
Примечание: Конфигурации запуска / отладки Dockerfile не будут проверены в Git, поэтому нет никаких шансов, что мои учетные данные будут случайно проверены.
Что я хотел бы сделать: я хотел бы автоматически получать значения секретных данных в определение переменной среды Dockerfile, чтобы мне не приходилось постоянно обновлять конфигурацию запуска / отладки вручную. Когда я обновляю свои токены, конфигурация запуска / отладки Dockerfile автоматически их подбирает.
Что я пытался сделать: я изменил свой профиль local .bash, чтобы получать значения токенов из хранилища учетных данных с помощью «aws configure». Это работает, но новые токены не обновляются автоматически в конфигурации запуска / отладки Dockerfile. Если я использую команду «source» для запуска запущенной оболочки bash, она получает самое новое значение. Я думаю, мне нужно сделать что-то подобное в конфигурации запуска / отладки Dockerfile, но я не уверен, как.
Среда разработки: MacBook Pro (работает под управлением Mojave) IntelliJ (2018.3) Интерфейс командной строки AWS, установлены инструменты Docker
Есть идеи?
Комментарии:
1. На данный момент обходных путей нет, это обсуждается с командой AWS, и они пообещали отправить запрос по адресу youtrack.jetbrains.com/issues/IDEA с требованиями к будущим версиям IntelliJ IDEA.
2. Приятно это знать. Спасибо!