「スイッチロールして作業してください」と言われたときのために

ロールを使用して権限の管理をしているプロジェクトに参加した時渡されるのは、なんの権限もないユーザーと謎のURLかもしれません。 スイッチロールという謎の単語だけがヒントのように伝えられます。 Webブラウザ(マネージメントコンソール)の場合に何をしたらよいかを整理します。
2022.01.31

ストーリー

あなたはある日突然AWSを使うことになりました。 担当者の人に「はい、これIAMユーザーの認証情報ね。あとはスイッチロールして使ってもらっていいから」とだけ伝えられ、謎の文字列を受け取ります。 さて、ここからどうしたらAWSを触れるようになるでしょうか?

用語の整理

スイッチロールを行うに当たって関連する用語を整理していきます。

AWSアカウント

AWS上の様々なリソース(IAMユーザー、ロール、EC2インスタンス )などを管理する本体。 アカウントIDと呼ばれる12桁の番号を持つ。

IAMユーザー

AWS上のサービスであるIAMで管理されるユーザー 一つのアカウントの下に複数のユーザーが作成できる。 こちらを使って作業をすることが多い 「アカウントID」、「IAMユーザー名」と「パスワード」で認証を行う。

ロール

AWS上の様々なリソースにアクセスするための権限の集合体。 IAMユーザーがこれを使用して、様々な作業を行う。

スイッチロール

IAMユーザーがロールを切り替えること 環境ごとに用意されたロールに切り替えて作業したりする。 切り替え先は別のアカウントの場合もある。 切り替える先の「アカウントID」と「ロール名」がわかれば切り替えができる。

ここで先程の言葉を整理します。

「はい、これIAMユーザーの認証情報ね。あとはスイッチロールして使ってもらっていいから」

つまりここで担当者は以下の情報をくれたはずです。

ログインに必要なもの:

  • アカウントID
  • IAMユーザー名
  • パスワード

スイッチロールに必要なもの:

  • 切り替え先のアカウントID
  • ロール名

スイッチロールに必要なものについては単なるURLかもしれません。それは後ほど解説します。

ここからAWS上で作業をするためには以下のステップが必要です。

  1. ログイン
  2. スイッチロール

では実際にスイッチロールまでしてみましょう

スイッチロールについて詳しく知りたい人は以下の記事がおすすめです。

実践

ログイン

まずはログインページを開きます。 すると以下のようなページが出てくると思うので「IAMユーザー」にチェックを入れアカウントIDまたはエイリアスを入力します。

アカウントIDは数字ですが、エイリアスは人間が覚えやすいようにつけた名前です。 渡された方を入力します。

次にIAMユーザー名とパスワードを入力します。 始めてのサインインの場合は、パスワードの変更を求められることがあるので、その場合は安全なパスワードに変更します。 これでログインは完了です。

スイッチロール

いよいよロールを切り替えます。 画面上部のナビゲーションバーからロールの切り替えをクリックします。

ロールの切り替えをクリックします。

アカウントIDとロール名を入力します。この二つは必須です。 表示名と色はわかりやすいものをつけましょう。

場合によっては担当者から以下のようなURLをもらうかもしれません。

https://signin.aws.amazon.com/switchrole?roleName=xxxxxxx&account=xxxxxxx

その場合は上のような画面がいきなり表示されます。 これは今までのステップを省略するための便利なURLです。 同じ画面が表示されるので、そのままで問題ありません。

入力が完了した後はロールの切り替えを押します。

これでロールに切り替えが完了しました。

情報を確認するとアカウントIDやIAMロール名が表示されていることが確認できます。 ちなみに元のアカウントに戻ることを「スイッチバック」と呼びます。

応用編

取引先などからAWSアカウントに招待される場合があるかもしれません。 そんな時あなたは何を伝えれば良いでしょうか?

少なくともAWSアカウント、できればIAMユーザーも伝えましょう。

これは以下のようにして確認できます。

このとき、しっかりとスイッチバックを行い、正しいアカウントの状態になっているかを確認しましょう。