【Let's AWSハンズオン①】AWSハンズオンを始める前の準備

# はじめに
　AWS資格をいくつか取得（CLF、SAA、DVA、SOA）したのですが、ハンズオンをほとんどしたことがないので、これから少しずつ行っていこうとこの記事を作成しております。
　私自身がハンズオンできていなかった一番の理由として、従量課金制で学習にコストがかかることでしたので、この記事では実際にかかった費用も紹介できればと思っています。まだまだ初学者でありますので誤った表記などあればご指摘いただけると幸いです。

 
# もくじ
- **ハンズオンを始める前の準備事項**
     **①ルートルートユーザーのMFA認証有効化**
     **②IAMユーザーの作成**
- **AWSにおけるユーザーについて**
  - **ルートユーザーとは？**
  - **IAMユーザーとは？**
- **Let's AWSハンズオン**
    - **ルートユーザーのMFA認証有効化**
    - **IAMユーザーの作成**
- **今回のハンズオンで発生する課金金額【０円】**
- **まとめ**


# ハンズオンを始める前の準備事項
**①ルートユーザーのMFA認証有効化**
**②IAMユーザーの作成**

※すでにAWSアカウントは作成しているものとする


# AWSにおけるユーザーについて
　AWSでは、大きく分けて以下３つのユーザーが存在します。
 
- ルートユーザー
- IAMユーザー
- フェデレーションユーザー（今回は説明を割愛）


### ルートユーザーとは？
　AWSアカウントを作成した際に作成される最初のユーザーであり、**そのアカウントの全てのリソースに対して完全な管理アクセス権を持つ特権的なユーザー**になります。
　その強力な権限ゆえにセキュリティリスクも高いため、使用は最小限に抑え、日々の運用では後述する「IAMユーザー」を使用することが推奨されています。

**★上記の理由から、今回はハンズオンを始める前に
「ルートユーザーのMFA認証有効化」、「IAMユーザーの作成」を行います。**

### IAMユーザーとは？
　IAMユーザーとは、AWSアカウント内で特定の権限を持つ個別のアカウントです。これにより、ユーザーはAWSリソースにアクセスできるようになります。
　AWSでは、ルートユーザーを利用せず、必要最低限の操作権限に対する認可を受けたIAMユーザーを作成して利用することが推奨されています。

 
# Let's AWSハンズオン!



### ルートユーザーMAF有効化
**①コンソールにサインインする**
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/986061/9672ec78-c059-93f4-3113-4d2b6803c1e3.png)



**②AWSアカウント作成時に登録したメールアドレスとパスワードを入力し、ルートユーザーとしてサインインする**
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/986061/7984e928-813d-bb6c-a5af-3eccb6e6a0d4.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/986061/da4125f8-47c2-753c-4c03-96d9500f2464.png)



**③コンソール画面右上のアカウント名をクリックし「セキュリティ認証情報」を選択**
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/986061/962325a7-3212-5b14-caef-86a775f61a3b.png)



**④「MFAを割り当てる」を選択**
※MFA認証の設定がされていない場合はこのアラートが表示されます
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/986061/e1dfee49-558b-7e5e-e872-ee9ff89bbf70.png)



**⑤MFAデバイスの選択**
・デバイス名を入力
・今回はスマートフォンを利用したMFA認証
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/986061/0b06faf5-af2d-c57d-869f-038599d5b839.png)



**⑥デバイスの設定**
・認証アプリの「Google Authenticator」をスマホにインストールしておく
・QRコードを表示し、「Google Authenticator」でコードをスキャンする
・30秒毎に6桁の数字が表示されるので、「MFAコード１」「MFAコード２」に値を入力し「MFAを追加」を選択
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/986061/b76e23d2-2008-4527-f440-d8ca77e59e12.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/986061/64be60ef-36c9-bcca-ae72-e5a6426fb469.png)![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/986061/0649bd9c-0f68-2d0d-c6f6-97e0238051b7.png)



**⑦MFAの設定完了**
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/986061/48268bcf-c1ca-30d0-7c64-6e6cf4ef2bbd.png)




**⑧MFA認証の確認**
1度サインアウトして、サインイン画面にてメールアドレスとパスワードを入力した後にMFAのコードを入力するように求められ、「Google Authenticator」に表示されるコードを入力するとコンソール画面へサインインできる。

以上

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/986061/2a70f3ff-d4bd-9fcd-20f8-5d3adc843776.png)




### IAMユーザーの作成
**①コンソール画面上部の検索窓に「IAM」と入力し、検索結果の「IAM」サービスを選択**
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/986061/e098ea71-3c59-4c88-e611-a27faac1df3d.png)


**②IAMダッシュボード左側の「ユーザー」を選択し、ユーザーの作成を行う**
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/986061/5ee0e312-31e7-e5fc-acac-497d3afdeb5c.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/986061/7d1a926c-0501-825f-76fd-d317653101c9.png)


**③ユーザーの詳細を指定**
・ユーザー名を入力
・「AWS マネジメントコンソールへのユーザーアクセスを提供する - オプション」にチェックを入れる
・「ユーザーにコンソールアクセスを提供していますか?」で「IAM ユーザーを作成します」にチェックを入れる
・「コンソールパスワード」＞「自動生成されたパスワード」にチェックを入れる
・「ユーザーは次回のサインイン時に新しいパスワードを作成する必要があります - 推奨」にチェックを入れ
・次へを選択
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/986061/daf8a55f-fa96-5e21-75fb-1b54de344957.png)


**⑤IAMユーザーに割り当てる許可を設定する**
・「ポリシーを直接アタッチする」にチェックを入れる
→管理するユーザーが多い場合は、「ユーザーグループ」を作成し、そのグループに対して許可を設定することで、グループに所属しているユーザー全体にまとめて許可を設定することができます（今回は個人での利用なのでユーザーに直接ポリシーをアタッチします）

・「許可ポリシー」にて「AdministratorAccess」にチェックを入れる
→「AdministratorAccess」は管理者用の権限で、すべてのAWSサービスとリソースに対してすべてのアクションを実行する権限を持ちます。ルートユーザーとの違いは、支払い情報の管理やアカウント情報の変更など、アカウント全体に対する設定権限は持っていません
※ルートユーザーと同じく、セキュリティリスクの高い権限となるので、取り扱いには注意が必要

・次へを選択
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/986061/df59f9bc-28a4-60c8-9946-c4b0b08cfb1a.png)


**⑥設定内容を確認してユーザーの作成を行う**
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/986061/a4011633-41d0-411f-0e9d-2daeb2383091.png)


**⑦IAMユーザー作成完了-パスワードを取得**
・初期パスワードを確認する
→コンソールにサインインするための情報をCSV出力できる
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/986061/0f656486-5910-ac49-4bd7-45a154425284.png)


**⑧コンソールサイン詳細情報のCSV**
・コンソールサインインURLとユーザー名、パスワードの情報が記載されている
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/986061/7cba92f7-2e07-8ac5-d2ba-a186abead982.png)

**⑨IAMユーザーとしてサインイン**
・アカウントID、ユーザー名、パスワードを入力する
（アカウントIDは各AWSアカウントに一意で割り振られた12桁の数字）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/986061/dba076ee-6ccd-3302-a9ec-84fdf055314b.png)


**⑩新しいパスワードの設定**
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/986061/753e6205-932d-b18b-1664-d02fdf7dfc5c.png)


**⑪IAMユーザーとしてコンソール画面へサインイン**
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/986061/4f3a1f39-0fd3-10d8-d9f2-9025d9a8f518.png)


**※権限のないサービスについては「アクセス拒否」と表示される**
AdministratorAccessポリシーでも、デフォルトではコスト管理についてアクセス許可がない為、別途アクセス権を付与する必要がある
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/986061/569bbfbc-c978-07ad-4c38-a3a50b07db09.png)

**※IAMユーザーに対してもMFA機能は有効化できるので、セキュリティを高めるために行っておきましょう！**
以上


# 今回のハンズオンで発生する課金金額【０円】
　今回行った、「ルートユーザーのMFA認証有効化」「IAMユーザーの作成」はどちらもAWS IAMを利用しており、**AWS IAMの利用料は無料**であるため【**０円**】になります。






# まとめ
　今回は、これからハンズオンを行っていく為の準備事項を説明させていただきました。安全に運用を行う為にユーザーのセキュリティをあげることは重要なので、しっかり対策を行いましょう。