AWS Configとは
AWSリソースの設定を記録・追跡し、コンプライアンスを評価するサービス
出典: AWS Config terminology and concepts
主な機能
| 機能 | 説明 |
|---|---|
| 設定レコーダー | リソースの設定変更を記録 |
| Configルール | リソースがルールに準拠しているか評価 |
| コンフォーマンスパック | 複数ルールをまとめてデプロイ |
| アグリゲーター | 複数アカウント・リージョンのデータを集約 |
基本的な仕組み
リソース変更 → 設定レコーダーが検知 → 設定項目(CI)を生成 → S3に保存
↓
Configルールで評価
↓
COMPLIANT / NON_COMPLIANT
関連用語
設定項目(Configuration Item / CI)
リソースの設定情報をある時点でスナップショットとして記録したもの。リソースID、タイプ、設定内容、関連リソースなどを含む
設定レコーダー(Configuration Recorder)
リソースの設定変更を検知して記録するコンポーネント。アカウント・リージョンごとに1つ
配信チャネル(Delivery Channel)
設定項目の配信先。S3バケット(必須)とSNSトピック(任意)を指定
Configルール
ルールタイプ
| タイプ | 説明 |
|---|---|
| マネージドルール | AWSが提供する事前定義ルール |
| カスタムルール | Lambda関数で独自ロジックを実装 |
トリガータイプ
| タイプ | 発動タイミング |
|---|---|
| 設定変更 | 対象リソースの設定が変更されたとき |
| 定期的 | 指定した間隔で実行 |
評価結果
| 結果 | 意味 |
|---|---|
| COMPLIANT | ルールに準拠 |
| NON_COMPLIANT | ルールに違反 |
| NOT_APPLICABLE | 評価対象外 |
| ERROR | 評価中にエラー発生 |
EventBridgeとの連携
Configはコンプライアンス変更時にEventBridgeへイベントを送信する
つまり、Config ルールが非準拠(NON_COMPLIANT)となったタイミングで EventBridge を用いたトリガーが可能
{
"source": ["aws.config"],
"detail-type": ["Config Rules Compliance Change"],
"detail": {
"newEvaluationResult": {
"complianceType": ["NON_COMPLIANT"]
}
}
}出典: AWS Config events - Amazon EventBridge
自動修復
Configルールに修復アクション(Systems Manager Automation)を紐付けて、違反検知時に自動修復が可能
NON_COMPLIANT検知 → SSM Automationドキュメント実行 → リソースを修正
コンフォーマンスパック
複数のConfigルールと修復アクションをYAMLテンプレートでまとめたもの
組織全体に一括デプロイできる
出典: AWS Config terminology and concepts
マルチアカウント集約
アグリゲーターを使って複数アカウント・リージョンの設定・コンプライアンスデータを1つのアカウントに集約できる
アカウントA ─┐
アカウントB ─┼→ アグリゲーター → 集約アカウントで一元管理
アカウントC ─┘