Adaptive Protection が提示するルールを自動でデプロイする

このドキュメントでは、Adaptive Protection が生成する推奨ルールを自動でデプロイするための構成手順について説明します。自動的なルールのデプロイを有効にするには、次の値を使用してプレースホルダ ルールを作成する必要があります。

  • 表現の一致: evaluateAdaptiveProtectionAutoDeploy()
  • アクション: 任意
  • 優先度: 任意。優先度の高い正当なトラフィックには、他のルールよりも高い優先度の明示的な許可ルールを設定することをおすすめします。

サードパーティの CDN などの外部アプリケーション ロードバランサの前にアップストリーム プロキシを使用する場合、指定されたヘッダーからの元のクライアントの IP アドレスに基づいてリクエストに一致するように、プレースホルダ ルールを構成できます。このプレビュー機能を使用するには、advancedOptionsConfig フィールドに userIpRequestHeaders[] オプションを構成します。詳細については、ComputeSecurityPolicy リソースのリファレンスをご覧ください。

プレースホルダ ルールの例

次のコマンドは、POLICY_NAME というセキュリティ ポリシーのプレースホルダ ルールの例です。各ルールには異なるルール アクションが含まれています。これらのルールを既存のセキュリティ ポリシーに追加することも、新しいポリシーを作成することもできます。セキュリティ ポリシーの作成の詳細については、Google Cloud Armor セキュリティ ポリシーの構成をご覧ください。

悪意のあるトラフィックをブロックする

この例のルールによって、Adaptive Protection が攻撃トラフィックとして識別したリクエストが true と評価され、Google Cloud Armor によって、ブロック アクションが攻撃リクエストに適用されます。

gcloud compute security-policies rules create 1000 \
    --security-policy POLICY_NAME \
    --expression "evaluateAdaptiveProtectionAutoDeploy()" \
    --action deny-403

悪意のあるトラフィックを、reCAPTCHA による確認にリダイレクトする

この例のルールは、Adaptive Protection によって悪意があると識別されたトラフィックを reCAPTCHA チャレンジにリダイレクトします。

gcloud compute security-policies rules create 1000 \
    --security-policy POLICY_NAME \
    --expression "evaluateAdaptiveProtectionAutoDeploy()" \
    --action redirect \
    --redirect-type google-recaptcha

悪意のあるトラフィックのレート制限

この例では、Google Cloud Armor のレート制限を、Adaptive Protection によって悪意があると識別されたトラフィックに適用します。

gcloud compute security-policies rules create 1000 \
    --security-policy POLICY_NAME \
    --expression "evaluateAdaptiveProtectionAutoDeploy()" \
    --action throttle \
    --rate-limit-threshold-count 500 \
    --rate-limit-threshold-interval-sec 120 \
    --conform-action allow \
    --exceed-action deny-404 \
    --enforce-on-key ip

Adaptive Protection の自動デプロイ パラメータを構成する

ルールの自動デプロイのしきい値は、次のパラメータを調整して構成できます。パラメータの値を設定しなかった場合、Google Cloud Armor はデフォルト値を使用します。

  • 負荷しきい値: アラート攻撃の最中に、Adaptive Protection は、攻撃下にあるバックエンド サービスへの負荷がこのしきい値を超えた場合にのみ新しい攻撃者を識別します。 また、攻撃対象のバックエンド サービスへの負荷がこのしきい値を超えた場合にのみ、アラート用のルールが自動的にデプロイされます。

    • デフォルト値: 0.8
    • App EngineCloud Run、または Cloud Functions にトラフィックを送信するサーバーレス NEG。
    • 外部の送信元にトラフィックを送信するインターネット NEG。
  • 信頼度のしきい値: 信頼スコアがこのしきい値を超える可能性のある攻撃のアラートに対してのみ、ルールが自動的にデプロイされます。

    • デフォルト値: 0.5
  • 影響を受けるベースラインのしきい値: 推奨された緩和策でベースライン トラフィックに予想される影響がこのしきい値を下回った場合にのみ、ルールが自動的にデプロイされます。

    • デフォルト値: 0.01 パーセント
  • 有効期限を設定: この期間の後、Google Cloud Armor は、自動的にデプロイされたルールにあるアクションの識別した攻撃者への適用を停止します。このルールは、新しいリクエストに対して引き続き機能します。

    • デフォルト値: 7200

次のコマンド例を使用すると、セキュリティ ポリシーを更新して、デフォルト以外の自動デプロイのしきい値を使用できます。NAME はセキュリティ ポリシーの名前に、残りの変数はポリシーに必要な値に置き換えます。

gcloud beta compute security-policies update NAME [
    --layer7-ddos-defense-auto-deploy-load-threshold LOAD_THRESHOLD
    --layer7-ddos-defense-auto-deploy-confidence-threshold CONFIDENCE_THRESHOLD
    --layer7-ddos-defense-auto-deploy-impacted-baseline-threshold IMPACTED_BASELINE_THRESHOLD
    --layer7-ddos-defense-auto-deploy-expiration-sec EXPIRATION_SEC
]

制限事項

  • 適応型保護は、外部アプリケーション ロードバランサ経由で公開されるバックエンド サービスに接続しているバックエンド セキュリティ ポリシーでのみ使用できます。適応型保護は、外部プロキシ ネットワーク ロードバランサでは使用できません。