1つ以上のフィールドに無効な情報があります。と表示されロールが切り替えれない【AWS】

IAM

・ロールの切り替えがうまくいかない
・他アカウントのロール切り替えを行いたい

「ロールの切り替え」から他のアカウントにロールの切り替えを行おうとしたところ、「1つ以上のフィールドに無効な情報があります。」と文言が表示されうまくいきませんでした。

ロールの切り替え失敗画面

今回はこちらのエラーを修正していきます。

前提条件

まず前提としては下記のような状況です。

・スイッチしようとしているユーザーは「AdministratorAccess」の権限を割り当てている。
・スイッチ先のロール信頼ポリシーは割り当て済み。

前提条件が満たされていない方は下記のサイトを参考にしてみてください。

http://43.206.224.155/2023/08/30/%e3%82%b8%e3%83%a3%e3%83%b3%e3%83%97%e3%82%a2%e3%82%ab%e3%82%a6%e3%83%b3%e3%83%88%e3%82%92%e7%94%a8%e3%81%84%e3%81%a6%e3%83%9e%e3%83%ab%e3%83%81%e3%82%a2%e3%82%ab%e3%82%a6%e3%83%b3%e3%83%88%e3%82%92/

対処法1:MFAを設定していない

スイッチ先ロールを作成するとき「MFAが必要」の項目にチェックを入れませんでしたか?

この項目にチェックを入れた場合スイッチするユーザーにMFAを設定する必要があります。

MFA作成チェック画面

MFAの設定方法はIAMダッシュボードのユーザーから設定できますので、心当たりがある方は再確認してみましょう。

コンソールサインイン画面

対処法2:信頼ポリシーの間違い

信頼ポリシーが間違っていても発生します。改めてロールと信頼ポリシーの確認を行なってみましょう。
信頼ポリシーはIAMダッシュボードのロールから「信頼関係」タブをクリックし表示できます。

今回はここのアカウントIDが間違っていました、信頼ポリシーを編集からアカウントIDを編集します。

信頼関係タブ

いかがでしょうか。

他にもロールのスイッチ権限(AssumeRole)がない、間違えて他のアカウントにログインしている等考えられますが、引っ掛かりやすいポイントをまとめたつもりです。

参考になれば幸いです。