2020年2月15日現在の内容です。
用語説明
IAM(Identity and Access Management)
AWSサービスを利用するユーザー権限を管理するサービス
概要
- AWSサービスをセキュアに操作するために、認証・認可の仕組みを提供する
- 各AWSサービスに対して別々のアクセス権限をユーザー毎に付与できる
- IAMの利用は無料
- ポリシー
- アクセス許可の定義
- ユーザー
- 個々のアカウントのユーザー
- グループ
- IAMユーザーの集合(複数のユーザーにアクセス許可を付与する作業を簡素化できる)
- ロール
- 一時的にアクセスを許可したアカウントを発行(EC2やLambdaなどのAWSリソースに権限を付与するために使用)
IAMのベストプラクティス
- 個々人にIAMユーザーを作成する
- ユーザーはグループに所属させてグループに権限を割り当てる
- 権限は最小限にする
- EC2インスタンスから実行するアプリケーションはロールを使用する
- 定期的に不要な認証情報を削除する
IAMポリシーの作成
「さらにアクセス許可を追加する」をクリック
同様に以下の通り設定し、「ポリシーの確認」をクリック
名前、説明に任意名を入力
設定内容を確認し、「ポリシーの作成」をクリック
同様に、「ポリシーの作成」をクリック
以下の通り設定し、「ポリシーの確認」をクリック
名前、説明に任意名を入力
設定内容を確認し、「ポリシーの作成」をクリック
IAMグループの作成
作成したDeveloperPolicyを選択し、「次のステップ」をクリック
作成したDirectorPolicyを選択し、「次のステップ」をクリック
IAMユーザーの作成
以下の通り設定し、「次のステップ」をクリック
ユーザー名:任意名
アクセスの種類:「AWS マネジメントコンソールへのアクセス」
ユーザーをグループに追加 → 作成したDeveloperグループをチェックし、「次のステップ」をクリック
以下の通り設定し、「次のステップ」をクリック
ユーザー名:任意名
アクセスの種類:「AWS マネジメントコンソールへのアクセス」
ユーザーをグループに追加 → 作成したDirectorグループをチェックし、「次のステップ」をクリック
IAMロールの作成
AWSサービス → EC2をチェックし、「次のステップ」をクリック
AmazonS3FullAccessをチェックし、「次のステップ」をクリック
IAMロールのアタッチ
EC2に移動
インスタンス → アクション → インスタンスの設定 → IAMロールの割り当て/置換をクリック
EC2インスタンスにログイン
ssh -i test-ssh-key.pem ec2-user@18.179.167.73
S3にアクセスできることを確認
[ec2-user@ip-10-0-10-10 ~]$ aws s3 ls
2020-02-02 08:45:43 test-aws-wp