IAM(AWS Indentity and Access Management)
AWSのサービスの利用権限をユーザーごとに設定したもの。
ルートアカウントはすべての権限を持つため、これを日常的に使うのはセキュリティ的にあまりよろしくない。
よってIAMユーザーやIAMグループを作成してIAMごとに権限を付与する形で日常的にはAWSを運用する。
IAM作成時の注意点
- 権限は最小限にする
- APIキーは各アカウント2つまでしか発行できない→3つめがほしい場合は1つめを削除する必要あり
- シークレットアクセスキーは生成時以外確認不能→なくしたら再発行してね
IAMロール
APIキーを使わずにEC2などの各サービスごとに使用できるIAMを定めたもの。
APIキーの利用は非推奨とされているのでIAMロールを使うのが好ましい
セキュリティグループ
1つ以上(複数でもOK)のインスタンスのトラフィックを制限する仮想のファイアウォール。
オンプレミス時代は全体で1つのファイアウォールを使用していたが、AWSではセキュリティグループを設定するだけで各インスタンスごとに個別にファイアウォールを設定できる
特徴
- インバウンドとアウトバウンドを個別に指定可能
- インバウンド…インスタンス外からインスタンスへのアクセス
- アウトバウンド…インスタンスからインスタンス外へのリクエスト
- インバウンドはデフォルトでは何も許可されていない→許可しない限りインスタンスには外部からアクセスできない
- 許可するリクエストは設定できるけど、拒否するリクエストは設定できない
AWS Shield
DDos攻撃というトラフィック量を増加させてサーバーダウンを狙う攻撃からインスタンスを守ってくれる。
Standardプランであれば無償で利用可能。Advancedにすると分析レポートの作成とかやってくれるらしい
AWS WAF(Web Application Firewall)
Webアプリに特化したファイアウォール
特徴
- 基本利用料無料
- WAFの定義自体は自分でやる必要ある
- フル機能のAPIが用意されていてそのまま使うこともできる
- EC2インスタンス自体には設定できず、LoadBalancerを介して設定する
AWS Inspector
EC2でデプロイしたアプリのセキュリティとコンプライアンス向上のための脆弱性診断を自動でやってくれるもの
AWS Artifact
AWSのコンプライアンスレポートにアクセスできる
AWS Key Management Service
AWS上で暗号化キーを作成しアプリの使用を制限できる。