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 ─┘