はじめに
「AWSフリートマネージャーでは何ができるの?」
「別のロールに切り替えて操作したいけれど、どの権限を設定すればいい?」と迷っていませんか。
AWS Systems ManagerのFleet ManagerでEC2などのマネージドノードを管理しようとしても、ロールの切り替え方や必要な権限が分からず、操作を進められないことがあります。
この記事では、AWSフリートマネージャーの基本的な役割から、ロールを切り替える方法、必要な権限、操作前に確認したい注意点まで紹介します。
AWSでロールを切り替えると何が変わる?

AWSでスイッチロールを実行すると、操作に使われる権限は切り替え先のロールに設定された権限へ変わります。
ここでは、ロール切り替え後に適用される権限と、元のユーザー権限との関係を説明します。
スイッチロールでは切り替え先のロール権限が適用される
スイッチロールを実行すると、その後の操作には切り替え先のIAMロールに設定された権限が適用されます。
利用できるAWSサービスやリソースはロールに付与されたポリシーで決まるため、許可されていない操作は実行できません。
元のユーザー権限とロール権限は累積しない
スイッチロールでは、元のIAMユーザーと切り替え先のロールの権限を合算して使うことはできません。
切り替え後はロールの権限で操作するため、元のユーザーに許可されている操作でも、ロール側に権限がなければ実行できない点に注意しましょう。
AWSでロールを切り替える前に必要な情報と権限
AWSでロールを切り替えるには、切り替え先を指定するための情報と、ロールを引き受けるための権限が必要です。
ここでは、切り替え前に確認するアカウントIDとロール名、必要な権限について説明します。
切り替え先のアカウントIDとロール名を確認する
スイッチロールを実行する前に、切り替え先の12桁のAWSアカウントIDとIAMロール名を確認します。
入力内容が実際の設定と異なると対象のロールを指定できないため、表示されている値を確認しながら正確に入力しましょう。
AWSアカウントIDをどこで確認できるか分からない場合は、事前に確認方法を押さえておくとスムーズです。
▶AWSアカウントIDの確認方法は?コンソール・CLIで調べる手順を解説
ロールを切り替えるための権限があるか確認する
ロールを切り替えるには、切り替え元に対象ロールを引き受ける sts:AssumeRole 権限が必要です。
あわせて、切り替え先のロールの信頼ポリシーでも引き受けが許可されているか確認しましょう。
AWS Management Consoleでロールを切り替える方法
AWS Management Consoleでは、ロールの切り替え画面から切り替え先のアカウントとロールを指定します。
ここでは、ロールの切り替え画面を開いてから、切り替え後の状態を確認するまでの手順を説明します。
ロールの切り替え画面を開く
AWS Management Consoleにサインインし、画面右上のアカウントメニューを開きます。
「ロールの切り替え」を選択すると、切り替え先の情報を入力する画面が表示されます。
アカウントIDとロール名を入力して切り替える
切り替え先の12桁のAWSアカウントIDとロール名を入力し、「ロールの切り替え」を選択します。
入力内容に問題がなければ、指定したIAMロールへ切り替わります。
切り替え後のアカウントとロールを確認する
切り替え後は、画面右上のアカウントメニューから現在のアカウントとロールを確認します。
アカウントIDとロール名が指定した切り替え先と一致していれば、正しく切り替えられています。
切り替えたAWSロールから元のセッションに戻す方法
AWSロールでの作業が終わったら、現在のロールセッションを終了して、切り替え前に使用していたユーザーへ戻れます。
ここでは、ロールセッションを終了して元のユーザーへ戻る手順を説明します。
ロールセッションを終了して元のユーザーに戻る
AWS Management Console右上のアカウントメニューを開き、「元のユーザーに戻る」を選択します。
ロールセッションが終了して切り替え前のIAMユーザーへ戻るため、サインアウトして再度サインインする必要はありません。
AWSでロールを切り替えられないときの確認点
AWSでロールを切り替えられない場合は、権限の設定や入力した情報、現在使用しているユーザーを確認します。
ここでは、ロールを切り替えられないときに確認する3つの項目を説明します。
ロールを切り替える権限が付与されているか確認する
切り替え元に、対象ロールを引き受けるための sts:AssumeRole 権限があるか確認します。
あわせて、切り替え先のロールの信頼ポリシーでも、切り替え元からのロール引き受けが許可されているか確認しましょう。
アカウントIDとロール名が正しいか確認する
入力した12桁のAWSアカウントIDとIAMロール名が、実際の設定と一致しているか確認します。
入力ミスがあると対象のロールを指定できないため、切り替え先の設定と照らし合わせて確認しましょう。
ルートユーザーで操作していないか確認する
ルートユーザーでサインインしている場合は、AWS Management Consoleからロールを切り替えることができません。
現在のユーザーを確認し、ルートユーザーの場合はIAMユーザーでサインインしてから切り替えを行いましょう。
AWSでロールを切り替えるときの注意点
AWSでロールを切り替えて作業する場合は、ロールセッションの有効時間と、切り替え後に実行できる操作の範囲を確認しておく必要があります。
ここでは、ロールを切り替えて作業する前に確認しておきたい2つの注意点を説明します。
ロールセッションには有効時間がある
AWSのロールセッションには有効時間があり、設定された時間を過ぎるとセッションは終了します。
IAMロールでは最大1〜12時間に設定できますが、ロールから別のロールへ切り替えるロールチェーンでは最大1時間です。
作業中にセッションが切れるのが心配な場合は、AWSコンソールのセッション時間の仕組みも確認しておきましょう。
▶AWSコンソールのセッション時間は?有効期限と設定方法を解説
切り替え先で実行できる操作はロールの権限で決まる
ロールへ切り替えた後に実行できる操作は、切り替え先のIAMロールに設定された権限で決まります。
必要な操作ができない場合は、ロールに付与されているポリシーを確認してみましょう。
まとめ
AWSでロールを切り替えると、切り替え前のIAMユーザーではなく、切り替え先のIAMロールに付与された権限でAWSサービスを操作します。
スイッチロールには、切り替え先の12桁のAWSアカウントIDとロール名に加えて、切り替え元のsts:AssumeRole権限と、切り替え先ロールの信頼ポリシーの設定が必要です。
切り替えられない場合は、権限の有無、アカウントIDとロール名の入力内容、ルートユーザーで操作していないかを順に確認します。
また、ロールセッションには有効時間があるため、Fleet Managerなどで作業する前に、切り替え先のロールで必要な操作が許可されているかも確認しておきましょう。











