AWS公式サイトにて “AWS Hands-on for Beginners"というAWS初心者向けハンズオン学習メニューがあります。その中のAWSアカウント作成&IAM基礎についてのハンズオンをやってみました。
どんなことをやったか
以下の画像に記載されているように、AWSアカウントの作成、IAM(ポリシー、ユーザー、グループ、ロール)等について動画上で行われる解説と操作を踏まえて、自身でもAWSコンソール上での操作を行いました。
大枠の流れ
学習・実施した内容における大枠の流れは以下です。
1.ハンズオンの説明 + アカウント作成に必要なもの + 作成の流れ(解説)
2.アカウントを作成
3.ルートユーザーと IAM ユーザーについて学ぶ(解説)
4.IAM ユーザーを作成する
5.IAM (ポリシー、ユーザー、グループ、ロール)について学ぶ
6.IAM ポリシーと IAM グループを作ってみる
7.IAM ロールを試してみる
重要ポイント・ハマリがちな箇所
・ルートユーザーとIAMユーザーの違い、使い分け方
以下画像で確認できます。
初めにAWSアカウント登録を行うと同時にルートユーザーが作成されます。以降の開発・運用においてはIAMユーザーを作成し、必要最小限の権限を付与した上で使用します。
・IAMポリシーとIAMロールの違い、各用途について
IAMポリシーとは、「AWSのどのリソースでどのような操作を許可するか?」を定めたもの。JSON形式で定義され、AWSで予め用意されているものに加え、ユーザーが独自に定義できる。IAMユーザー、IAMグループ、IAMロールに紐づけて使用する。
AWSのリソース(EC2やS3等)に直接アタッチすることは出来ない。
IAMロールは、あるAWSリソースに対して、他のAWSリソースを操作する権限を与える仕組み。IAMロールに対して必要な操作権限を定義したIAMポリシー(複数可)をアタッチし、そのIAMロールを対象のAWSリソースにアタッチする形で使用する。
例:EC2からS3にアクセスして操作したい場合、そのためのIAMロールを作成した上でS3の操作権限を定義したIAMポリシーをそのIAMロールにアタッチする。続いて、そのIAMロールを対象のEC2にアタッチすれば、対象のEC2からS3にアクセスすることが可能になる。