

# ユーザーから IAM ロールに切り替える (コンソール)
<a name="id_roles_use_switch-role-console"></a>

IAM ユーザー、IAM Identity Center でのユーザー、SAML フェデレーションロール、またはウェブ ID フェデレーションロールとしてサインインするときにロールを切り替えられます。*ロール*は、必要な AWS リソースへのアクセスに使用できる一連のアクセス許可を指定します。ただし、ロールにはサインインされませんが、一度 IAM ユーザーとしてサインインすると IAM ロールに切り替えることができます。こうすると、元のユーザーアクセス権限が一時的に無効になり、そのロールに割り当てられたアクセス権限が代わりに付与されます。ロールは、自身のアカウントのロールでも、他の AWS アカウント のロールでもかまいません。ロール、その利点、作成方法の詳細については、「[IAM ロール](id_roles.md)」と「[IAM ロールの作成](id_roles_create.md)」を参照してください。

ユーザーと切り替え後のロールのアクセス許可は、累積されません。同時に有効になるアクセス権限のセットは 1 つのみです。ロールを切り替えると、ユーザーアクセス権限が一時的に無効になり、切り替え後のロールに割り当てられたアクセス権限が有効になります。そのロールを終了すると、ユーザーアクセス権限が自動的に復元されます。

AWS マネジメントコンソール でロールを切り替えると、コンソールは常に元の認可情報を使用して切り替えを認可します。例えば、RoleA に切り替える場合は、IAM は元の認証情報を使用して、RoleA の引き受けが許可されているかどうかを判断します。その後、*RoleA を使用中に* RoleB への切り替えを試みると、AWS は引き続き RoleA の認証情報ではなく**元の**認証情報を使用して切り替えを認可します。

**注記**  
IAM アイデンティティセンターのユーザーとして、SAML フェデレーテッドロールとして、またはウェブ ID フェデレーテッドロールとしてサインインすると、セッションの開始時に IAM ロールを引き受けます。例えば、IAM アイデンティティセンターのユーザーが AWS アクセスポータルにサインインする際には、AWS リソースにアクセスする前に、ロールに関連するアクセス許可セットを選択する必要があります。

## ロールセッション
<a name="id_roles_iam_user-switch-role-sessions"></a>

ロールを切り替えると、AWS マネジメントコンソール セッションはデフォルトで 1 時間続きます。IAM ユーザーセッションはデフォルトで 12 時間です。他のユーザーについては、異なるセッション時間が定義されている場合があります。コンソールでロールを切り替えると、ロールの最大セッション期間、またはユーザーセッションの残り時間のいずれか短い方が付与されます。ロールを引き受けることでセッション時間を延長することはできません。

たとえば、ロールに対して最大セッション期間が 10 時間に設定されているとします。ロールを切り替えることを決定するまでに、コンソールにサインインしてから 8 時間が経過していました。ユーザーセッションの残り時間は 4 時間であるため、許可されるロールセッション期間は、最大セッション期間の 10 時間ではなく、4 時間になります。次の表は、コンソールでロールを切り替えるときの IAM ユーザーのセッション期間を決定する方法を示しています。


| IAM ユーザーセッションの残り時間は..。 | ロールセッションの期間は..。 | 
| --- | --- | 
| ロールの最大セッション時間より小さい | ユーザーセッションでの残り時間 | 
| ロールの最大セッション時間の長さを超えています | 最大セッション期間値 | 
| ロールの最大セッション時間と同等 | 最大セッション継続時間値 (概算) | 

1 つのロールの認証情報を使用して別のロールを引き受けることを[ロールの連鎖](id_roles.md#iam-term-role-chaining)と言います。ロールの連鎖を使用する場合、個々のロールに設定された最大セッション期間の設定に関係なく、セッション期間は 1 時間に制限されます。これは、AWS マネジメントコンソール ロールの切り替え、AWS CLI、API オペレーションに適用されます。

**注記**  
ある程度 AWS サービスコンソールは、ロールセッションの有効期限が切れたときに、アクションを実行せずにロールセッションを自動更新できます。セッションを再認証するために、ブラウザページをリロードするように求めるメッセージが表示されることがあります。

## 考慮事項
<a name="id_roles_iam_user-switch-role-considerations"></a>
+ AWS アカウントのルートユーザー としてサインインすると、ロールを切り替えることはできません。
+ ロールを切り替えるためのアクセス許可が、ポリシーによってユーザーに付与されている必要があります。手順については、「[ロールを切り替えるアクセス許可をユーザーに付与する](id_roles_use_permissions-to-switch.md)」を参照してください。
+ AWS マネジメントコンソール で、[ExternalId](id_roles_common-scenarios_third-party.md#id_roles_third-party_external-id) 値を必要とするロールに切り替えることはできません。`ExternalId` パラメータをサポートする [https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html) API を呼び出すことにより、このようなロールに切り替えることができます。

## ロールを切り替えるには
<a name="id_roles_iam_user-switch-role-console-procedure"></a>

1. 「*AWS サインインサインインユーザーガイド*」の「[AWS マネジメントコンソール へのサインイン方法](https://docs.aws.amazon.com/signin/latest/userguide/how-to-sign-in.html)」のトピックで説明されているように、ユーザータイプに適したサインイン手順に従ってください。

1. AWS マネジメントコンソール で、右上のナビゲーションバーのユーザー名を選択します。通常は **{{username}}@{{account\_ID\_number\_or\_alias}}** のように表示されます。

1. ロールを切り替えるには、次のいずれかの方法を選択します。
   + **[ロールの切り替え]** を選択します。
   + マルチセッションサポートにオプトインしている場合は、**[セッションを追加]** を選択して **[ロールの切り替え]** を選択します。
**注記**  
AWS マネジメントコンソール では、1 つのウェブブラウザで最大 5 つの異なる ID に同時にサインインできます。詳細については、「*AWS マネジメントコンソール 入門ガイド*」の「[複数の入門ガイドアカウントへのサインイン](https://docs.aws.amazon.com/awsconsolehelpdocs/latest/gsg/multisession.html)」を参照してください。

1. [**ロールの切り替え**] ページで、アカウント ID 番号またはアカウントエイリアスと、管理者により提供されたロールの名前を入力します。
**注記**  
管理者が `division_abc/subdivision_efg/roleToDoX` などのパスを使用してロールを作成した場合は、[**ロール**] ボックスに完全なパスと名前を入力する必要があります。ロール名のみを入力した場合、または `Path` と `RoleName` の組み合わせの合計が 64 文字を超える場合は、ロールの切り替えは失敗します。これは、ロール名を保存するブラウザクッキーの制約です。この場合は、管理者に連絡して、パスとロール名のサイズを減らすことを依頼してください。

1. (オプション) 表示名を入力し、コンソールのナビゲーションバーでロールを強調表示する表示色を選択できます。
   + **[表示名]** で、このロールがアクティブな場合にユーザー名の代わりにナビゲーションバーに表示するテキストを入力します。名前の候補がアカウントとロールの情報に基づいて表示されますが、わかりやすい名前に変更できます。
   + **[表示色]** で、表示名を強調表示する色を選択します。

   名前と色から、ロールがアクティブになってアクセス権限が変わることがわかりやすくなります。たとえば、テスト環境にアクセスできるロールには、[**表示名**] に「**Test**」と入力し、[**色**] で緑を選択できます。本稼働環境にアクセスできるロールには、[**表示名**] に「**Production**」と入力し、[**色**] で赤を選択できます。

1. **[Switch Role]** (ロールの切り替え) を選択します。表示名と色によってナビゲーションバーのユーザー名が置き換えられ、そのロールにより付与されたアクセス許可を使用し始めることができます。

1. IAM ロールを必要とするタスクが完了したら、元のセッションに切り替えて戻ることができます。これにより、ロールによって付与される追加のアクセス許可が削除され、標準のアクセス許可に戻ります。

   1. IAM コンソールで、右上のナビゲーションバーでロールの [**表示名**] を選択します。

   1. **[スイッチバック]** を選択します。

      たとえば、アカウント番号 `123456789012` にユーザー名 `Richard` を使用してサインインしているとします。`admin-role` ロールの使用後に、ロールの使用を停止して元のアクセス許可に戻ります。ロールの使用を停止するには、**[admin-role @ 123456789012]** を選択し、**[スイッチバック]** を選択します。  
![IAM ロールの使用を停止し、元のユーザーに戻るためのスイッチバック機能の場所を示すグラフィックス。](http://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/images/role-stop-using.png)

**ヒント**  
最近使用したいくつかのロールがメニューに表示されます。次回いずれかのロールに切り替えたい場合は、そのロールを選択するだけで切り替えることができます。ロールがメニューに表示されない場合にのみ、アカウントとロールの情報を手動で入力する必要があります。

## その他のリソース
<a name="id_roles_use_switch-role-console_additional_resources"></a>
+ [ロールを切り替えるアクセス許可をユーザーに付与する](id_roles_use_permissions-to-switch.md)
+ [AWS サービスにロールを渡すアクセス許可をユーザーに付与する](id_roles_use_passrole.md)
+ [IAM ユーザーにアクセス許可を付与するロールを作成する](id_roles_create_for-user.md)
+ [AWS サービスにアクセス許可を委任するロールを作成する](id_roles_create_for-service.md)
+ [IAM ロールをトラブルシューティングする](troubleshoot_roles.md)