AWS Config で実現する継続的コンプライアンス監視 - ルール評価と自動修復
AWS Config によるリソース構成の記録、Config ルールによるコンプライアンス評価、自動修復アクションの設定を解説します。
Config の概要
AWS Config は AWS リソースの構成変更を継続的に記録し、コンプライアンスを自動評価するサービスです。EC2 インスタンスのセキュリティグループ変更、S3 バケットのパブリックアクセス設定変更、IAM ポリシーの変更など、記録の対象にしたリソースの構成変更が記録されます。マネージド Config ルールで「S3 バケットのパブリックアクセスがブロックされていること」などの条件を定義し、非準拠リソースを検出します。構成アイテム (Configuration Item) は、メタデータ、属性、関係、現在の構成、関連するイベントで構成され、ある時点のリソースの状態を表します。
ルールと自動修復
マネージドルールは AWS が提供する事前定義ルールで、s3-bucket-public-read-prohibited、ec2-instance-no-public-ip、iam-password-policy などがあります。カスタムルールは Lambda 関数で独自の評価ロジックを実装します。Guard ルールは AWS CloudFormation Guard の宣言型構文でポリシーを定義でき、Lambda を書かずにカスタムルールを作成できます。自動修復では非準拠リソースの検出時に SSM Automation ドキュメントを実行し、例えば S3 バケットのパブリックアクセスを自動的にブロックします。修復アクションには手動承認ステップを挟むことも可能で、本番環境での意図しない変更を避けられます。トリガーは変更トリガー (リソース変更時に評価) と定期トリガー (1 時間、3 時間、6 時間、12 時間、24 時間) を選択でき、変更頻度の少ないルールには定期トリガーを適用して評価の回数を抑えます。
コンフォーマンスパックと集約
コンフォーマンスパックは複数の Config ルールと修復アクションをパッケージ化したテンプレートで、CIS Benchmark、PCI DSS、NIST 800-53 などのコンプライアンスフレームワークに対応した事前定義パックが提供されています。カスタムコンフォーマンスパックで組織固有のルールセットを定義し、Organizations 全体に一括デプロイできます。Config アグリゲーターは複数アカウント / 複数リージョンのコンプライアンス状況を 1 つのアカウントに集約し、組織全体の準拠状況をダッシュボードで可視化します。高度なクエリで「暗号化されていない EBS ボリュームを持つ全アカウントのリソース」のような横断的な検索を実行できます。
設計のベストプラクティスと落とし穴
Config を有効化する際、全リソースタイプの記録を有効にすると構成アイテムの数とコストが増えます。まず IAM、S3、EC2、RDS などセキュリティに直結するリソースタイプを記録対象にし、段階的に広げる方法があります。自動修復の設定では、修復アクションが別のルール違反を引き起こすカスケード修復のリスクを確かめます。例えば「セキュリティグループのインバウンドルールを削除する」修復がアプリケーション通信を遮断する場合があります。自動修復は手動承認のステップから始め、段階的に自動化します。Organization 全体でルールをデプロイする際、一部のアカウント (サンドボックスや開発環境) を除外リストで管理し、過剰な評価を避けます。Config の記録と CloudTrail の記録は補完関係にあり、Config は「状態の変化」を記録し CloudTrail は「誰がその変更を行ったか」を記録するため、インシデント調査では両方を組み合わせて使います。
Config と Security Hub の連携
Config ルールの評価結果は AWS Security Hub でも確認できます。Security Hub を有効にすると CIS AWS Foundations Benchmark や AWS Foundational Security Best Practices の Config ルールが自動的にデプロイされ、各リソースのコンプライアンス状態がスコアカードとして表示されます。Config 単体では個々のルール評価結果をアグリゲーターで集約しますが、Security Hub はこれを優先度付けされたファインディングとして重大度ごとに整理します。実務上の使い分けとして、Config はルール定義 / カスタム評価 / 自動修復のエンジン、Security Hub は組織全体のセキュリティポスチャの可視化ダッシュボードとして機能します。Security Hub 経由で Config ルール違反を EventBridge に送り、チケット自動起票や Slack 通知を実装する構成にもできます。
Config の料金最適化
Config の料金は、記録した構成アイテムの数、ルールの評価の数、コンフォーマンスパックの評価の数などで決まります。全リソースタイプの記録を有効にすると構成アイテム数が膨大になるため、コンプライアンスに必要なリソースタイプのみを記録対象にすることでコストを管理します。ルールの評価頻度を定期的 (24 時間ごと) と変更トリガーで使い分け、変更が少ないリソースには定期評価を適用します。Config の高度なクエリは、コンプライアンスレポートの作成に使えます。大量のルールを持つアカウントでは、変更トリガーを使うと、評価結果が変わらないリソースに対する再評価を減らせます。
まとめ
AWS Config はリソースの構成変更を記録し、コンプライアンスを継続的に評価するサービスです。コンフォーマンスパックで CIS Benchmark や PCI DSS のルールセットを一括デプロイし、アグリゲーターで組織全体の準拠状況を可視化します。自動修復で、非準拠リソースの検出から修正までを自動で実行できます。
参考資料 (AWS 公式)
本ページの一次情報は AWS 公式サイトと公式ドキュメントです。最新の仕様と料金は次の公式ページで確認できます。
本ページと公式ドキュメントの記述が食い違う場合は、公式ドキュメントを正としてください。