AssumeRole API を一時的な認証情報とともに使用して、AWS Identity and Access Management (IAM) の役割を引き受けました。しかし、次のようなエラーが表示されました。 「リクエストされた DurationSeconds は、ロールチェイニングが引き受けるロールの 1 時間のセッション制限を超えています。」
解決方法
一時的なセキュリティ認証情報を持つロールを引き受けるには、ロールチェイニング付きの AWS コマンドラインインターフェイス (AWS CLI) を使用します。ロールチェイニングでは、AWS CLI または AWS API ロールセッションが最大 1 時間に制限されます。セッション時間を増やすことはできません。1 時間の最大期間は AWS CLI と API にのみ適用されます。ロールチェインについて詳しくは、「ロールの用語と概念」を参照してください。
**注:**AWS CLI のコマンドの実行時にエラーが発生する場合は、「AWS CLI エラーのトラブルシューティング」を参照してください。また、AWS CLI の最新バージョンを使用していることを確認してください。
ロールチェイニングでは、次のベストプラクティスを実践してください。
- 一時認証情報の DurationSeconds パラメーター値が 1 時間を超えると、操作は失敗します。
- AWS マネジメントコンソールはロールチェイニングをサポートしていません。ロールの一時的な認証情報を取得するには、AWS マネジメントコンソールのロール切り替え機能を使用します。AWS マネジメントコンソールは IAM またはフェデレーションユーザーの認証情報を使用して別のロールに切り替えます。
- AWS CLI で多要素認証 (MFA) を使用するユーザーは、一時的な認証情報を使用して別のロールを引き受けます。一時的な認証情報は AWS STS GetSessionToken API を使用しており、1 時間に制限されています。
- ロールチェイニングを使用してロール A と同じ AWS アカウントのロール B を引き継ぐ場合は、ロール A に追加の権限を割り当てます。ロール A に追加の権限を与えると、ロール B へのロールチェイニングを回避できます。
関連情報
IAM と Amazon EC2 のトラブルシューティング