⛳
【AWS】IAMロールの基本と活用
1. IAMロールの概要
-
IAMロールとは:
- AWSリソース(例: EC2、Lambda)に一時的な権限を付与するための仕組み。
- 他のリソースへの操作(例: S3バケットの参照、リソースの作成)を許可。
-
特徴:
- IAMユーザーとは異なり、AWSリソース自体に権限を割り当てる。
- 必要な権限のみを付与することで、セキュリティを強化。
2. ハンズオン:IAMロールの作成と活用
ステップ1: IAMロールの作成
-
管理者ユーザーでログイン
- AWSマネジメントコンソールにアクセス。
- 検索バーに「IAM」と入力し、IAMダッシュボードに移動。
-
空のIAMロールを作成
- 左メニューから「ロール」を選択し、「ロールを作成」をクリック。
- ユースケース: 「EC2」を選択して「次へ」。
- ポリシーの選択: ポリシーを選ばずに「次へ」。
- ロール名: 「EC2Role」と設定し、「ロールを作成」をクリック。
ステップ2: IAMロールをEC2に割り当て
-
EC2インスタンスにIAMロールを割り当て
- EC2ダッシュボードでインスタンスを選択。
- 「アクション」→「セキュリティ」→「IAMロールの変更」をクリック。
- 作成した「EC2Role」を選択し、「IAMロールの更新」をクリック。
-
EC2インスタンスに接続
- EC2インスタンスを選択し、「接続」→「EC2インスタンスコネクト」を選択。
- コンソールでCLI(コマンドラインインターフェース)にアクセス。
-
動作確認
-
aws ec2 describe-instances --region ap-northeast-1
を実行。 - エラー: 「権限が足りない」ことを確認。
-
ステップ3: IAMロールに権限を付与
-
IAMロールにポリシーを追加
- IAMダッシュボードで「ロール」を選択。
- 「EC2Role」をクリックし、「許可を追加」→「ポリシーをアタッチ」を選択。
- 事前に作成した「DevPolicy」を選択し、「許可を追加」をクリック。
-
再度動作確認
- EC2インスタンスに戻り、同じコマンドを実行。
- 結果: JSON形式でインスタンスの情報が返されることを確認。
3. ポイント
-
IAMロールの仕組み
- AWSリソースに権限を付与する「帽子」のような役割。
- 必要に応じて権限を付与し、セキュリティを向上。
-
実用例(オリジナル具体例)
-
バックアップ作業:
- EC2がS3に定期的にデータをバックアップ。
- IAMロールでEC2にS3への書き込み権限を付与。
-
ログ管理:
- LambdaがCloudWatchにログを記録。
- IAMロールでLambdaにログ書き込み権限を付与。
-
バックアップ作業:
-
最小権限の原則
- 必要な操作のみ許可するポリシーを作成。
- 過剰な権限を付与しない。
4. まとめ
- IAMロールはAWSリソースに権限を付与する便利な仕組み。
- 権限を持たないリソースはエラーを返すため、適切なポリシーを付与。
- 最小限の権限設定を心がけてセキュリティを保つ。
修正や追加の希望があれば教えてください!
Discussion