Exam Readiness DOP : 分野 4:ポリシーと標準の自動化

# はじめに
AWS DOPの試験対策で[Exam Readiness: AWS Certified DevOps Engineer – Professional (Japanese)](https://explore.skillbuilder.aws/learn/course/117/play/503/exam-readiness-aws-certified-devops-engineer-professional-japanese)を視聴したので、内容をまとめます。

# アジェンダ
| 分野 | 内容 |
|------|---------|
|    1  |   [ SDLC の自動化](https://qiita.com/tetsuya_tech/items/3da9ac5042f40d1577ba)|
|    2  |   [設定管理とIaC](https://qiita.com/tetsuya_tech/items/1691599cebc9ebafa730)|
|    3  |  [モニタリングとロギング](https://qiita.com/tetsuya_tech/items/338385fe2cdf2265a543)|
|    4  |  ポリシーと標準の自動化|
|    5  |   [インシデントとイベントレスポンス](https://qiita.com/tetsuya_tech/items/24315754f4af20743423)|
|    6  | [高可用性、対障害性、災害復旧](https://qiita.com/tetsuya_tech/items/317bb98700b7b59026c7)|


# インフラストラクチャの保護

## IAM 
 ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/951272/6b45f783-4b64-f0a3-75bb-a3f9fbcf920b.png)

## 暗号化
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/951272/3c885bb2-6d91-0572-d678-3b05720d8aa8.png)
### ELBのSSLターミネーション
　　- IAMに保存されている証明書
　　- ELB層のオフロード作業
　　- ロードバランサごとのに複数のSSL証明書


### CloudFrontのSSLターミネーション
- Server Name Indication
- 複数のIPに様々なドメイン証明書の終了を許可
- DNSレコードがELBまたはCloudFrontを指定

### セキュリティグループ、NACL、ファイアウォールのホスト
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/951272/c2ba3a96-e1b5-1d1c-bb09-3d45e1cb7ffe.png)

## データ保管時の保護
- S3サーバ側暗号化
- EBSはサーバ側またはホスト
- Glacierはデフォルトで暗号化
- EFSはKMSからのみ暗号化をサポート

## Amazon GuardDuty
- AWSアカウントトワークロードを監視
- 脅威IPリストと信頼IPリストを追加可能
- 複数のデータソースを分析（CloudTrail、VPCフローログ、DNSログ）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/951272/58c3aeb4-9d3f-daf2-ab99-ce72fd29271c.png)

## Amazon Inspector
- アプリケーションのセキュリティとコンプライアンスの向上を評価
- エージェントをインストールする
- 脆弱性の検出、ベストプラクティスの検証、レポートの生成

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/951272/dd796b0b-a28d-914b-e36b-7e551ff5e0fc.png)

## AWS Systems Manager
- エージェントを使用しクラウド内およびオンプレミスのシステムを管理
- 管理タスクを自動化
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/951272/c32a506e-796e-a785-7c95-585673340785.png)
- ランコマンドで事前に定義したスクリプトやコマンドを実行
- パッチマネージャはシステムの処理と更新をサポート。
- いつ適用するかをメンテナンスウィンドウで設定。
- 認証情報などの安全なストレージはパラメータストア機能。
  - AWS Secret ManagerはKMSにより暗号化、認証情報の自動ローテーションをサポート。料金以外は上位互換といえる。
  - AWS License Managerはライセンス用のストレージを管理、使用状況の追跡をサポート。

## AWS Config
リソースの設定変更を追跡、定義されたポリシーに対して評価。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/951272/fe486621-3380-4c86-0bb0-ff377e3813f3.png)

# コスト最適化
## AWS Trusted Advisor
- コスト削減、パフォーマンス向上、セキュリティ強化に役立つガイダンスを提供

# ガバナンスとコンプライアンス
## AWS Service Catalog
- 承認されたITサービスのカタログを作成、管理。
- 基盤となるAWSサービスへのアクセスを制御
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/951272/4d39e535-872c-346b-f3b2-d4ced11c36a2.png)

## EC2インスタンスのコンプライアンス
- AMIでGoldenベースイメージを作成
- ユーザーデータスクリプトを起動時に設定
- AWS OpsWorks等でアプリケーションレベルの設定を管理


# 問題例
- 転送中と補完中のデータを暗号化。サービスはELB、EC2、EBS、S3
-> SSL通信をEC2でターミネーション。またはELBでターミネーションとEC2のSSLリスナー。EBSの暗号化またがOSレベルでのディスク暗号化。 S3のサーバ側暗号化。
- AWSアカウント管理者が退職。ルートユーザ、管理者のIAMユーザ、他のIAMユーザおよびキー
-> パスワードを変更し、ルートユーザにMFAを追加。管理者のIAMユーザを削除。キーを交換し、IAMユーザのパスワードを変更。
- インスタンスのパッチ適用を自動化。インスタンスのリストが必要。スケールアウトに対応
-> AWS Systems Manager Patch Managerを使用。メンテナンスウィンドウを設定。
- AMIを構築できるCIパイプラインを作成
-> AWS Systems Manager Automationドキュメントを作成。AMIを作成。コードの変更があるたびにJenkinsで自動実行。