【小ネタ】複数のSwitch Roleでのクロスアカウントアクセスをブラウザのブックマークで管理する

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

こんにちは、せーのです。今日はSwitch Roleに関するちょっとした小ネタをお話します。AWSを業務で複数やられている方には便利かと思います。

Switch Roleってなんだっけ

Switch Roleとは複数のAWSアカウントを持っている時にいちいちログアウト - ログインを繰り返さなくてもRoleを設定しておくだけで簡単に別のアカウントにスイッチできる機能です。これは複数のアカウントを管理する方にはとっても便利な機能なんです!詳しくはこちらの記事をご覧ください。

で、今回はこの機能をより使いやすくする方法です。

Switch Roleのちょっとした罠

Switch Roleをすると[History Role]というところにスイッチをした履歴が残ります。

switchrole1-1

次回からはここをクリックするだけで別アカウントにスイッチが可能になるのでついつい油断してしまうのですが、これ、暫くすると消えてしまうんです。また、履歴は5つまでしか保存が出来ないため、5つを超えるアカウントを管理していると古い順からどんどん消えていきます。そうすると消えてしまったSwitch RoleにアクセスするにはまたSwitch Roleの画面に行き、スイッチしたいアカウントIDとロール名を調べ、スイッチボタンを押してようやくスイッチできるようになります。

switchrole2

人間とはとかく罪深き生き物故、一度便利な体験をしてしまうとその怠惰な環境から抜けだせず、たったこれだけの手間がとてもめんどくさく感じてしまうのですね。
そんな罪深き私達に手を差し伸べるが如きTipsをご紹介します。

Switch Roleにはリンクがある

実はSwitch Roleには一気にボックスを埋めるリンクがあります。Switch先で作ったスイッチ用のIAM Roleを選択するとこのような画面が出てきます。

switchrole3

ご丁寧に[copy link]というボタンまであります。こちらのボタンをクリックし、リンクをコピーしてブラウザに貼り付けてみるとボックスが埋まります。
例えば[https://signin.aws.amazon.com/switchrole?account=123456789012&roleName=cm-chao2suke]というリンクをブラウザに貼り付けてみると

switchrole4

ここまで一気に埋まります!あとはdisplay nameをつけてボタンを押すだけでスイッチされます。

さらに怠惰に

でもここまできたらdisplay nameも埋めたいですよね。実はさっきのリンクを[https://signin.aws.amazon.com/switchrole?account=123456789012&roleName=cm-chao2suke&displayName=switchroleTest]とするとdisplay nameも埋めてくれます!

switchrole5

さらにさらに怠惰に

ここまで来るとフロントエンドの開発等をやっていた方からくるとピンとくるかもしれません。そう、Switch Roleの画面は要は単純なフォーム入力となっていて、それぞれのテキストボックスのNameタグをURL上で指定して埋めているんですね。なので

  • account : アカウントID
  • roleName : ロール名
  • displayName : 表示名

をそれぞれURL上で[https://signin.aws.amazon.com/switchrole?account=[アカウントID]&roleName=[ロール名]&displayName=[表示名]]という風に埋めてやって、このURLをブックマークしておけばいつでもスイッチ画面で調べることなくスイッチできるわけです。便利便利。

せっかくなので色も最初から選んでおきましょう。chromeのdevelopers toolsでswitch roleの色の部分を見てみると

switchrole6

とこのように色を選ぶ部分はラジオボタン、value値はカラーピッカーの値になっているようです。つまり、

  • 赤 : F2B0A9
  • オレンジ : FBBF93
  • 黄色 : FAD791
  • 緑 : B7CA9D
  • 青 : 99BCE3

となります。なので例えば上のスイッチロールのデフォルト値を青にしたい場合は[https://signin.aws.amazon.com/switchrole?account=123456789012&roleName=cm-chao2suke&displayName=switchroleTest&color=99BCE3]とすると

switchrole7

となり、このURLをブックマークしておけば、スイッチしたい時はこのブックマークを選んで、ボタンを押すだけでOK!となります。これは便利ですね!

まとめ

いかがでしょうか。怠惰を極めるとここまでいきました。ちなみにスイッチを許可されたAWSアカウントには普通にログインしておくことが条件ですので、そちらは忘れないようにしてください。
また今回「黒」だけValue値がなくて選べませんでした。どなたかフロントエンドに詳しい方、黒の選び方を知っていたら教えて下さい。