У меня есть несколько сценариев Bash, которые вызывают команды AWS CLI, для которых разрешения были изменены, чтобы требовать MFA, и я хочу иметь возможность запрашивать код, сгенерированный моим устройством MFA, в этих сценариях, чтобы они могли работать с необходимой аутентификацией.
Но, похоже, нет простого встроенного способа сделать это. Единственная документация, которую я могу найти, включает сложный процесс использования aws sts get-session-token
, а затем сохраняет каждое значение в конфигурации, которую затем непонятно, как использовать.
Чтобы прояснить, чего я хочу, так это того, чтобы при запуске одного из моих скриптов, который содержит команды AWS CLI, требующие MFA, мне просто предлагается ввести код, чтобы его предоставление позволило завершить операции AWS CLI. Что-то вроде:
#!/usr/bin/env bash
# (1) prompt for generated MFA code
# ???
# (2) use entered code to generate necessary credentials
aws sts get-session-token ... --token-code $ENTERED_VALUE
# (3) perform my AWS CLI commands requiring MFA
# ....
Мне непонятно, как запрашивать это при необходимости (что, вероятно, связано с незнанием bash) или как использовать вывод get-session-token
, когда он у меня есть.
Есть ли способ сделать то, что я ищу?
Я попытался вызвать запрос, указав --profile
с записью mfa_serial
; но это тоже не работает.