AWS Audit Managerで、AWS Configのカスタムルールを使用できるようになりました

2022.04.30

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

いわさです。

AWS Audit Managerを使うと、AWSリソースがコンプライアンスに準拠しているかを監査用にチェックすることが出来ます。
コンプライアンスの準拠チェックのみであれば、ConfigやSecurity Hub、Cloud Trailなどいくつかのサービスで実現可能ですが、それらのエビデンスを収集したりレポート形式で表示したりと監査人向けに利用出来るのが特徴です。

上記のようにデータソースとしてAWS Configを選択することが出来ていましたが、AWS Configで独自あるいは組織によって作成されたカスタムルールに対応出来ていませんでした。
本日のアップデートで、AWS Configのカスタムルールを使用してAWS Audit Managerのカスタムコントロールを作成することが出来るようになりました。

やってみる

利用イメージをつかむためにやってみましょう。
ただ、利用方法は簡単で、カスタムコントロールを作成する際にカスタムルールを選択するだけです。

コントロールライブラリからカスタムコントロールを作成します。
もちろん、既存のコントロールをカスタマイズすることも可能です。

データソースにAWS Configを選択すると、Configルールタイプが選択出来るようになっています。
ここでカスタムルールを選択することで、AWS Config カスタムルールを選択することが出来るようになります。
なお、Orgranizationsの子アカウントの場合は組織で共有されているカスタムルールも選択出来ます。

ちなみに、ここで選択しているhoge-ruleカスタムルールは、以前以下の記事で作成したものです。

中身はLambda関数ブループリントを使っていて、作成・変更されたVPCのCIDRが10.0.0.0/16以外だと非準拠とマークするだけのカスタムルールです。

function evaluateChangeNotificationCompliance(configurationItem, ruleParameters) {
    checkDefined(configurationItem, 'configurationItem');
    checkDefined(configurationItem.configuration, 'configurationItem.configuration');
    checkDefined(ruleParameters, 'ruleParameters');

    if (configurationItem.resourceType !== 'AWS::EC2::VPC') {
        return 'NOT_APPLICABLE';
    } else if ("10.0.0.0/16" === configurationItem.configuration.cidrBlock) {
        return 'COMPLIANT';
    }
    return 'NON_COMPLIANT';
}

カスタムコントロールが作成出来たら、あとはコントロールをフレームワークに追加して利用するだけです。

一応アセスメント実施まで行いましたが最大24時間かかるやつですので、のちほど結果を確認してみます。

さいごに

本日はAWS Audit Managerのカスタムコントロールで、AWS Configのカスタムルールを使ってみました。
簡単に利用開始出来ますね。すでにConfigでカスタムルールを導入されていて、監査用エビデンス収集としては諦めていた方はこれを期に使ってみてください。

AWS Configのカスタムルールを利用して追加のコンプライアンスチェックを行っている場合は、監査用のエビデンスとして収集することが出来るようになるので、よりAudit Managerのカスタマイズ性が上がりますね。
なお、この機能は Audit Managerを利用出来るすべてのリージョンで利用可能です。なので、東京リージョンは利用できて大阪リージョンは利用出来ません。