LoginSignup
0
0

Azure WAFポリシーへのアップグレード手順

Last updated at Posted at 2024-06-19

概要

AzureのApplication GatewayのWAF構成(レガシWAF)が2027年03月15日に廃止されるとマイクロソフトから2022年10月にアナウンスがありました。

2024060701.jpg

このEOLに対応するため、WAF構成(レガシWAF)Application Gateway(WAF_v2) が存在するか、社内のAzureリソースを調査した所、複数存在しているという事が判明しました。

本件に対応するため、PowerShell、またはAzure CLI(azコマンド)を用いたWAF構成(レガシWAF)からWAFポリシーへ関連付けを変更する手順をご紹介します。

前提

  • PowerShell、またはAzure CLI(azコマンド)を使用するため、自身の環境でセットアップしてください。
  • 既存のリソースと同じリソースグループに展開してください。
  • リソース内部の各種名称や各種設定については既存リソースを踏襲等、適宜変更してください。
  • 記載しているコマンドと既存リソースに差異がある場合はコマンド or オプションを適宜変更してください。

PowerShell

1. サブスクリプションへの接続

Connect-AzAccount -Subscription <SUBSCRIPTION_ID> -UseDeviceAuthentication

2. MS公式手順

PowerShellスクリプトを使用した公式アップグレード手順がMSのサイトで公開されています。
Azure PowerShell を使用して Web Application Firewall ポリシーをアップグレードする

3. 動作確認

アプリケーション側の観点で動作確認を実施

Azure CLI(azコマンド)

1. テナントへのログイン

対象のテナントにCLIからログイン。

az login --tenant <TENANT_NAME> (例: <テナント名>.onmicrosoft.com)

2. WAFポリシーの作成

既存のWAF構成(レガシWAF)のルールセットやバージョンを踏襲。

az network application-gateway waf-policy create \
    --name <POLICY_NAME> \
    --resource-group <RESOURCE_GROUP_NAME> \
    --type <WAF_RULE_SET_NAME> \
    --version <WAF_RULE_SET_VERSION>

3. WAFポリシーの特定のルールを無効化

既存のWAF構成(レガシWAF)のルールを踏襲。

az network application-gateway waf-policy managed-rule rule-set update \
    --policy-name <POLICY_NAME> \
    --resource-group <RESOURCE_GROUP_NAME> \
    --type <WAF_RULE_SET_NAME> \
    --version <WAF_RULE_SET_VERSION> \
    --group-name <WAF_RULE_GROUP_NAME> \
    --rule rule-id=<WAF_RULE_ID> \
           rule-id=<WAF_RULE_ID> \
           rule-id=<WAF_RULE_ID> \ ...

4. WAFポリシーの防御モードとリクエストボディチェックの有効化

既存のWAF構成(レガシWAF)の防御モードとリクエストボディチェックを踏襲。

az network application-gateway waf-policy policy-setting update \
    --policy-name <POLICY_NAME> \
    --resource-group <RESOURCE_GROUP_NAME> \
    --mode <MODE> \
    --request-body-check REQUEST_BODY_CHECK \
    --state <STATE>

5. WAFポリシーの除外を追加

既存のWAF構成(レガシWAF)の除外を踏襲。

az network application-gateway waf-policy managed-rule exclusion add \
    --policy-name <POLICY_NAME> \
    --resource-group <RESOURCE_GROUP_NAME> \
    --match-operator <MATCH_OPERATOR> \
    --match-variable <MATCH_VARIABLE> \
    --selector <SELECTOR>

6. WAFポリシーの関連付けを変更

WAFポリシーの関連付けと同時に既存のWAF構成(レガシWAF)のパラメーター(webApplicationFirewallConfiguration)を削除

az network application-gateway update \
    --name <APPLICATION_GATEWAY_NAME> \
    --resource-group <RESOURCE_GROUP_NAME> \
    --set firewallPolicy.id=<WAF_POLICY_RESOURCE_ID> \
    --remove webApplicationFirewallConfiguration

7. 動作確認

アプリケーション側の観点で動作確認を実施

参考

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0