388-AWS SAP AWS 「理論・実践・一問道場」GeoMatch

 

理論

特定の国や地域に基づいたアクセス制御とログ記録のベストプラクティス

クラウド環境で特定の国や地域に基づいたアクセス制御を行い、さらにログ記録を維持することは、セキュリティやコンプライアンスの観点から重要です。このような要件に対応するための一般的な知識と手法を以下にまとめます。

1. AWS WAFを活用した地理的フィルタリング(GeoMatch)

AWS WAFのGeoMatch機能は、リクエストの送信元IPアドレスを解析し、特定の国や地域を基にアクセスを許可または拒否するルールを設定できます。
  • 主な特徴:
    • 許可または拒否する国や地域を簡単に指定可能。
    • WAFのルールで設定した条件に一致するリクエストをブロックしたり、カウントすることが可能。
    • ブロックされたリクエストはAWS WAFのログに記録され、Amazon S3やCloudWatch Logsに保存できる。
  • 利点:
    • メンテナンス負荷が少ない(国や地域のIP範囲の更新はAWSが管理)。
    • ALBやAPI Gatewayなどのリソースに簡単に適用可能。
    • コンプライアンス要件(例えば、地域限定のアクセス制御)を満たすのに有効。

2. ログ記録の設定

ブロックされたリクエストや許可されたリクエストのログ記録は、トラブルシューティングや監査に役立ちます。AWS WAFを使用する場合、以下の方法でログを保持できます。
  • Amazon S3: 長期的なログ保存に適しており、Athenaを使ったクエリ解析が可能。
  • CloudWatch Logs: リアルタイム監視やカスタムメトリクス作成に適している。
  • Kinesis Data Firehose: 高スループットのログ処理や分析パイプラインに適用可能。

3. セキュリティグループの役割と制限

セキュリティグループは、AWSリソースへのネットワークアクセスを制御するための基本機能ですが、次のような制限があります。
  • 制限:
    • 国や地域ベースでのフィルタリングは直接サポートしていない(IPアドレスを手動で指定する必要がある)。
    • ログ記録機能がないため、拒否されたリクエストの記録には別途CloudTrailやVPCフローログを使用する必要がある。
  • 推奨シナリオ:
    • 小規模な環境や、特定のIPアドレス範囲だけを許可する場合には有効。

4. IPアドレスベースのフィルタリング

特定の国や地域に基づいたIPアドレス範囲をフィルタリングする場合、以下の方法が考えられます。
  • IPSet(AWS WAF): IPアドレスのリストを作成し、特定の範囲を許可または拒否するルールを設定可能。
  • メンテナンス: 手動でIPアドレスリストを管理する場合、IP範囲の変更に応じて更新が必要。

5. 選択すべき解決策

  • AWS WAF GeoMatch: ログ記録機能が組み込まれており、メンテナンス負荷が低い。
  • IPSet(AWS WAF): IPアドレス範囲を細かく制御する必要がある場合に有効。
  • セキュリティグループ: 簡易的なIP制御に適しているが、国ベースの管理には不向き。

まとめ

  • 特定の国や地域に基づいたアクセス制御にはAWS WAFのGeoMatch機能を使用するのが最適。
  • ログ記録には、CloudWatch LogsやAmazon S3を活用する。
  • セキュリティグループはIP制御には適しているが、国ベースの管理やログ記録には適さない。
最適な設計を選ぶことで、運用負荷を軽減しつつセキュリティとコンプライアンス要件を満たせます。

実践

一問道場

質問 #388

ある企業が、パブリックなApplication Load Balancer(ALB)の背後でAuto Scalingグループ内のAmazon EC2インスタンスで実行されるWebアプリケーションを開発しています。特定の国のユーザーのみがアプリケーションにアクセスできるようにする必要があります。また、ブロックされたアクセスリクエストをログに記録できる機能が必要です。解決策は可能な限りメンテナンスが少なくて済むものでなければなりません。
以下のどの解決策がこれらの要件を満たしますか?
A. 指定された国に属するIPレンジを含むIPSetを作成します。AWS WAFウェブACLを作成し、IPSetに含まれないIPレンジからのリクエストをブロックするルールを設定します。そのルールをウェブACLに関連付け、ウェブACLをALBに関連付けます。
B. AWS WAFウェブACLを作成し、指定された国に属さないリクエストをブロックするルールを設定します。そのルールをウェブACLに関連付け、ウェブACLをALBに関連付けます。
C. AWS Shieldを構成して、指定された国に属さないリクエストをブロックします。AWS ShieldをALBに関連付けます。
D. 指定された国に属するIPレンジからのポート80および443の通信を許可するセキュリティグループルールを作成します。そのセキュリティグループをALBに関連付けます。

解説

この問題では、特定の国のユーザーのみを許可し、それ以外のリクエストをブロックしながら、ブロックされたアクセスリクエストをログに記録する方法を検討します。以下、選択肢ごとの解説です。

A.

「指定された国に属するIPレンジをIPSetに追加し、AWS WAFウェブACLを構成してブロックする」
  • AWS WAFを使用することで、リクエストのIPアドレスや地理的な場所を基にルールを設定できます。
  • ブロックされたリクエストはAWS WAFによってログに記録されるため、この要件を満たします。
  • ただし、IPSetを手動で管理する必要があり、指定された国のIP範囲が変更されるたびにメンテナンスが必要になる点がデメリットです。

B.

「AWS WAFウェブACLを使用して、指定された国に属さないリクエストをブロックする」
  • AWS WAFには地理的フィルタリング(GeoMatch)機能があり、国ベースでのルール作成が可能です。
  • この方法では、特定の国以外のリクエストを簡単にブロックできます。
  • AWS WAFのログ機能を利用することで、ブロックされたリクエストを記録することも可能です。
  • IPアドレスリスト(IPSet)のメンテナンスが不要で、AWS WAFのGeoMatchルールだけで対応できるため、最もメンテナンスの負担が少ない解決策です。

C.

「AWS Shieldを使用して、特定の国以外のリクエストをブロックする」
  • AWS Shieldは主に分散型サービス拒否(DDoS)攻撃を防ぐためのサービスであり、リクエストの国別ブロックやログ機能は提供していません。
  • このため、この選択肢は要件を満たしません。

D.

「セキュリティグループを使用して、特定の国のIPレンジだけを許可する」
  • セキュリティグループはIPアドレスベースのフィルタリングが可能ですが、特定の国に基づいたルール設定は直接サポートしていません。
  • また、セキュリティグループにはログ機能がなく、ブロックされたリクエストを記録することはできません。
  • このため、この選択肢も要件を満たしません。

正解:

B. AWS WAFのGeoMatch機能を使用したルール設定が最適解です。
理由:
  • ログ記録: AWS WAFはブロックされたリクエストを自動的にログに記録可能。
  • 低メンテナンス: 国ベースのフィルタリングはAWS WAFのGeoMatchルールで簡単に実現でき、IPアドレスの管理が不要。
  • 拡張性: ALBに関連付けることで、複数のEC2インスタンスへの適用が容易。
389-AWS SAP AWS 「理論・実践・一問道場」(DR)戦略387-AWS SAP AWS 「理論・実践・一問道場」Athena
Loading...
minami
minami
みなみの成長 🐝
Announcement

🎉 ブログへようこそ 🎉

名前: みなみ一人会社
性別:
国籍: China 🇨🇳
政治スタンス: 民主主義支持者
完全独学で基本情報技術者をはじめ、32個の資格を仕事をしながら取得。
現在はIT会社で技術担当として働きながら、ブログ執筆や学習支援にも取り組んでいます。
独学で合格できる学習法や勉強法、試験対策を発信中!

📚 発信内容

  • 💻 IT・システム開発
  • 🏠 不動産 × 宅建士
  • 🎓 MBA 学習記録