はじめに
AWS Configは、AWSリソースの設定を監視し、コンプライアンス違反を検出するための便利なサービスです。
AWS Certified Security – Specialty (AWS SCS) の認定資格取得を目指して学習を進める中でも、頻繁に登場する重要なサービスの一つです。
今回、サービスの理解を深めるために、コンプライアンス違反を検出し、通知を送信する仕組みを実際に構築してみました。
この記事では、AWS Configを活用して、パブリックアクセスブロックが無効になっているS3バケットを検出し、管理者に通知する方法を詳しく紹介します。
環境構成
本ハンズオンの環境構成は以下の通りです。
1. AWS Configの設定
AWS Configのルールを設定してパブリックアクセスブロックが無効になっているS3バケットを検出できるようにします。
- AWSマネジメントコンソールで「AWS Config」に移動します。「ダッシュボードを表示する」を選択します。
- 「ルール」を選択します。
- 「ルールの追加」を選択します。
- 「ルールタイプの指定」画面が表示されます。AWSマネージド型ルールから「s3-bucket-public-read-prohibited」を選択して次へ進んでください。
- 「ルールの設定」画面でが表示されます。変更範囲は「すべての変更」を選択します。
- 「確認と作成」画面でが表示されます。内容を確認して「保存」します。
- ルールが作成されました。
2. Amazon SNSトピックを作成
Amazon SNSで通知先の設定をします。
- AWSマネジメントコンソールで「Amazon SNS」に移動します。
- トピック名を入力して次のステップを選択します。
- 「トピックの作成」画面が表示されます。タイプはスタンダード、名前は任意で設定してください。
- トピック作成後、サブスクリプションの作成をします。
- サブスクリプションで通知の設定をします。以下Eメールの通知例です。
- サブスクリプションを作成するとエンドポイントで指定したメールアドレスにメールが通知されます。「Confirm subscription」のリンクをクリックしてサブスクリプションを有効化してください。
3. Amazon EventBridgeルールの設定
AWS Configのコンプライアンス違反の検知をトリガーにSNSを呼び出すEventBridgeのルールを設定します。
- AWSマネジメントコンソールで「Amazon EventBridge」に移動します。
- 左のサイドメニューから「ルール」を選択してください。
- ルールを作成します。
- 「ルールの詳細を定義」を選択します。名前は任意で入力し、ルールタイプに「イベントパターンを持つルール」を選択してください。
- 検知するイベントを選択します。サンプルイベントから「Config Rules Compliance Change」を選択してください。
- メソッドはカスタムパターンを選択し、イベントパターンに以下を入力してください。
{
"source": ["aws.config"],
"detail-type": ["Config Rules Compliance Change"],
"detail": {
"configRuleName": ["<AWS Configのルール名>"],
"newEvaluationResult": {
"complianceType": ["NON_COMPLIANT"]
}
}
}
- 検知後のターゲットを選択します。先ほど作成したSNSトピックを選択してください。
- 任意でタグの設定をしてください。
- 確認とレビュー画面で内容を確認してルールを作成してください。
動作確認
パブリックアクセスブロックが無効になっているS3バケットを作成し、コンプライアンス違反を検知します。
- パブリックアクセスブロックが無効になっているS3バケットを作成します。
- しばらくしてAWS Configで作成したルールを確認すると、検出コンプライアンス欄に「非準拠リソース」と表示されます。
- メールも通知されました。
5. まとめ
この記事では、AWS Configを活用して、パブリックアクセスブロックが無効になっているS3バケットを検出し、管理者に通知する方法を詳しく解説しました。
コンプライアンス違反を検知してから通知までの流れを理解していただけたのではないでしょうか。
AWS Configは今回の例に限らず、以下のような用途にも活用できます。
- 必須タグが付与されていないリソースの検出
- セキュリティグループに過剰な権限が設定されている場合の検出
- 未使用のEIP(Elastic IP)の検出
このように、AWS Configはさまざまなユースケースでセキュリティとコンプライアンスの強化に役立つツールです。ぜひ、他の設定管理シナリオにも活用してみてください。
より詳しく知りたい方は書籍などで理解を深めてみてください。
|