#概要#
AWSリソースの設定から、AWSリソースの構成情報のスナップショットを取得し、管理するサービスです。
この構成情報を元に、現状のAWSリソースの設定が、利用者によって定義された正しい状態になっているか評価します。
また、リソースが変更された場合などのタイミングで、Amazon SNSと連携、通知し、システムの変更によって加えられたAWSリソースの変更履歴を管理するのにも利用できます。
#やってみる#
ステップ 1: 設定
記憶するリソースタイプ:すべてのリソース
Amazon S3 バケット:s3バケットを作成し、設定履歴と設定スナップショットを保存します。
Amazon SNS トピック:設定の更新および以前の状態からの変更についての通知を行うことが出来ますが、今回は設定していません。
AWS Config ロール:AWS Configが設定情報を記録するために必要なIAM Roleを作成します。
ステップ 2: ルール
今回は動作検証のために2つ程設定しています。
s3-bucket-versioning-enabled
S3 バケットに対してバージョン管理が有効になっているかどうかを確認します。オプションで、ルールは MFA 削除が S3 バケットに対して有効になっているかどうかを確認します。
→今回S3バケットのバージョニングはわざと設定しておかない。
なお、「マネージドルール」と「カスタムルール」があります。
「マネージドルール」はAWSが予め定義されているものであり、今回はこれを使います。
「カスタムルール」はAWS Lambdaとか関連づけることが可能です。
リソースのイベントリを確認する。
バージョニングは有効にしていないので、ルールに準拠していないことがわかる。
バージョニングを有効にし、再評価するとルールに準拠していることがわかる。
また、「ステップ 1: 設定」で設定した設定履歴と設定スナップショットがS3からも確認できる。
#料金#
AWS Config の料金
#UPDATE#
[Jun 3, 2020]AWS Config が 9 つの新しいマネージド型ルールをサポート
[Mar 15, 2021]AWS Configは、Amazon SecretsManagerに3つの新しい設定ルールを追加します
#暗号化#
[Feb 19, 2021]AWS Config で使用される S3 バケットでの KMS 暗号化のサポート
今まで保管したデータの暗号化はS3のサーバー側の暗号化はサポートしていましたが、KMSを利用した暗号化にはサポートしていませんでしたが、今回これに対応しました。
KMSで暗号化したデータにアクセスするには、S3とKMSのアクセス権が必要となり、S3のサーバー側の暗号化と比べ、よりセキュアに管理することができます。