LCL Engineers' Blog

バス比較なび・格安移動・バスとりっぷを運営する LCLの開発者ブログ

Switch Roleを利用して、同一アカウントでRoleを切り替える

Webエンジニアの森脇です。

AWSでは環境や用途に応じてアカウントを分け、Switch Roleを利用して別アカウントへ切り替えることが一般的だと思いますが、同一アカウント内でもSwitch Roleを利用できることを知りました。

用途

オペレーションミスを防ぐため、デフォルトでは最低限の権限のみを付与したい場合などに利用

設定手順

Switch Roleを利用して、AdministratorAccessを保持したロールに切り替える手順を例として説明します。

AdminRoleの作成

AdministratorAccessのポリシーを保持したAdminRoleというRoleを作成します。

assumerole-policyの作成

各ユーザが、AdminRoleへSwitchできるようにするため、assumerole-policyを作成し各ユーザに付与する。

{
    "Version": "2012-10-17",
    "Statement": {
        "Effect": "Allow",
        "Action": "sts:AssumeRole",
        "Resource": "arn:aws:iam::[AWS アカウントID]:role/*"
    }
}

Switch Roleの設定

各ユーザのメニューで、SwitchRoleの設定をします。

f:id:lcl-engineer:20181029170854p:plain

アカウントに、現在ログインしているアカウントと同一アカウントのIDを入力するところがポイントです。ロールには、上記で作成したロール名を設定します。

f:id:lcl-engineer:20181030162214p:plain

ロールの切り替え

メニューから切り替えができるようになっています。

f:id:lcl-engineer:20181031075202p:plain

まとめ

デフォルトで最低限の権限のみ与えることで、AWSに不慣れなメンバーでも気軽にコンソールを見ることができるようになりました。