常時Administrator権限を持つユーザが存在することは、権限を奪われるリスク(セキュリティの面)からもミスをした場合の影響度(運用の面)からも避けるべきこととされています。
ここでは、普段はReadOnlyユーザを利用し、必要なときに必要な権限を一時的に付与する環境の構築をします。
環境の構築
1. 全体準備編
AWSアカウント1つにつき1回行う準備作業です。
1.1. AssumeRole利用者ポリシの作成: http://qiita.com/tcsh/items/16f621ca10d95a5a7c81
1.2. AssumeRole利用者グループの作成 (ユーザ管理ポリシ: ReadOnly + AssumeRole): http://qiita.com/tcsh/items/1f48b9f8c5dfa4200d38
2. IAMユーザ作成編
実際に利用するIAMユーザを作成します。
2.1. AssumeRole利用者ユーザの作成: http://qiita.com/tcsh/items/9ab1aad97c3a358e1b68
2.2. (任意) ログインプロファイルの作成: http://qiita.com/tcsh/items/8b8b2906ce326f0f110a
以上で環境の構築は完了です。
普段はReadOnlyユーザで作業をし、作業内容に応じて必要な権限を一時的に付与して作業をします。
[参考] 一時的な権限付与 (例)
実際にIAMユーザに権限を一時的に付与するには、必要な権限を割り当てたロールを作成し、そのロールを使うための一時トークンの発行して利用します。
Administrator
- AssumeRole用管理者ロールの作成: http://qiita.com/tcsh/items/933a2b75c4c381b19e7f
- AssumeRoleによる権限の付与(Administrator): http://qiita.com/tcsh/items/4ef9174902c545c760dd
S3(Full)
- AssumeRole用S3管理者ロールの作成: http://qiita.com/tcsh/items/02abc9067c80719c1d66
- AssumeRoleによる権限の付与 (S3管理者): http://qiita.com/tcsh/items/51d6ff301bc75e90e5e1