手順
1.インスタンスの削除権限を拒否するポリシーを作成
2.ユーザー作成
3.全許可権限+インスタンス削除権限を拒否するポリシーを付与
以下に詳細を書いていきます。
1.のポリシー作成
まずAWSにサインインし、サービスからIAMを選択
次にポリシーから、ポリシーの作成を選択
サービス選択でEC2
を選択し、アクションからアクセス権限の拒否に切り替え
をクリック。これで選択する権限は全て拒否することができます
”拒否されるアクションをEC2で指定”からインスタンス削除(終了)をする権限(TerminateInstances)
を検索し、付与
リソースは指定しない場合全てのリソース
にチェックを入れ、次へ進む
ポリシーに適当な名前を付け、ポリシーを作成。(この例ではec2_DeleteRejectionという名前で作成しています)
ユーザーの作成、及びポリシーの付与
ユーザーから、ユーザーの追加を選択
ユーザー名を入力し、AWSマネジメントコンソールにチェックを入れ、パスワードを設定
し、次のステップへ
既存のポリシーを直接アタッチ
を選択し、PowerUserAccess(全権限許可)と、先程自分で作成したec2_DeleteRejection(インスタンス削除権限拒否)をアタッチ
します。
これでインスタンスの削除権限をの除いたユーザーの作成は完了です
検証
実際にインスタンスの作成はできて、削除ができないかどうか試してみます
先程作成したユーザーにログインし、EC2でインスタンス作成を行います
インスタンスの作成はできました。
しかし削除をしようとすると「You are not authorized to perform this operation(権限がないからできない)」というメッセージのエラーがでて何度削除を試みても出来ません
これで検証ができました