Я настраиваю нашу AWS, чтобы иметь несколько учетных записей, с нашими пользователями IAM, определенными в одной учетной записи, и нашими ресурсами, определенными в одной или нескольких других учетных записях, с политиками, настроенными для того, чтобы пользователи могли выполнять роли в производственных и промежуточных учетных записях.Я использую этот пост в блоге Coinbase в качестве руководства.В двух словах, подход заключается в том, чтобы вызвать aws sts get-session-token
для получения временных учетных данных (вы должны сделать это, если используете MFA), а затем использовать эти учетные данные для вызова assume-role
для нужной роли.
Однако, похоже, что вы не можете assume-role
с продолжительностью, превышающей час, используя временные учетные данные.Когда я запускаю это:
aws sts assume-role --role-arn arn:aws:iam::<REDACTED>:role/power-user --role-session-name my_session --duration <DURATION>
Если я использую длительность, превышающую час, я получаю эту ошибку:
An error occurred (ValidationError) when calling the AssumeRole operation: The requested DurationSeconds exceeds the 1 hour session limit for roles assumed by role chaining.
Это будет трудно продать моей команде разработчиков, еслиони должны вводить свои токены MFA раз в час.Есть ли способ assume-role
с временными учетными данными, которые длятся более часа?