練習 - 測試 Front Door 和 WAF 原則
最後一個步驟是測試 Front Door 環境,並確認路由規則是否已正確設定為導向 Web 流量。 我們也需要測試來源網頁伺服器的可用性,以及測試當伺服器關閉時,是否仍可存取快取的內容。
測試車輛登記 Web 應用程式的流量散發
在 Cloud Shell 中,執行下列命令來產生您 Front Door 端點的 URL。
echo https://$(az afd endpoint show \ --profile-name vehicleFrontDoor \ --endpoint-name $endpoint \ --resource-group $RG \ --query hostName \ --output tsv)
使用網頁瀏覽器,以先前命令所傳回的 URL 瀏覽該網站。 此 URL 是您在 Front Door 設定檔中建立的端點位址。 確認車輛登記 Web 應用程式的首頁會出現。 請注意,網頁伺服器的名稱會顯示在頁面上,讓您知道哪個執行個體正在提供您的要求。
在鍵盤上按幾次 F5 來重新整理瀏覽器。 請注意,在 webServer1 與 webServer2 之間來回變更的伺服器名稱。 這兩部網頁伺服器都位於相同的區域,而且有類似的延遲。 因此,這兩部伺服器有同等機會處理您的要求。
測試路由
現在讓我們測試路由設定至每個網站的路由。 您已設定符合 /VehicleRegistration/
和 /VehicleRegistration/*
以移至網頁伺服器私人端點的路由。 針對符合 /LicenseRenewal/
和 /LicenseRenewal/*
的要求,您已將這些要求路由傳送至 App Service。 在此實驗室中,您的 Azure Front Door 與來源資源之間的通訊是私人的,因為您是使用 Private Link 服務來建立連線能力。
若要測試路由傳送至車輛登記網站的其他頁面,請選取 [登記車輛]。
請注意,URL 已變更為包含路徑
/VehicleRegistration/Create
。 由於我們有一個/VehicleRegistration/*
的比對模式,因此萬用字元會比對/
之後的任何項目,並且會路由傳送至裝載車輛登記網站的網頁伺服器。接下來,讓我們測試路由傳送至授權更新網站。 將路徑從
/VehicleRegistration/Create
變更為/LicenseRenewal/
。 此路徑會路由傳送至 App Service 來源。選取 [更新授權] 以查看
/LicenseRenewal/Create
的路徑變更。 如同車輛登記的路由,有一個/LicenseRenewal/*
的比對模式具有萬用字元可比對/
之後的任何項目,並將該流量導向至 App Service。
您可以利用此設定,透過 Front Door 將使用者導向這兩個網站。 您可以設定可輕鬆記住的自訂網域,並將使用者導向符合其需求的正確頁面。 您可以利用 Front Door 進行擴充,以裝載多個網站、啟用快取以改善靜態資源的效能,以及提供高可調整且可用的 Web 應用程式。
測試安全性原則
下載並安裝適用於 Windows 的 Go。 在安裝期間使用所有預設設定。 您需要 Go 才能執行 GoTestWAF 應用程式。
下載並安裝適用於 Windows 的 Git。 在安裝期間使用所有預設設定。 您需要 Git 才能將 gotestwaf 存放庫複製到本機電腦。
安裝適用於 Windows 的 Go 和 Git 之後,請開啟 [Git Bash] 並執行
git clone https://github.com/wallarm/gotestwaf.git
,以將 GoTestWAF 檔案下載到本機電腦。使用
cd gotestwaf
命令將目錄變更為 gotestwaf 資料夾。現在請執行下列命令來測試安全性原則是否可正常運作。 將 `<EVALUATE_SECURITY_SOLUTION_URL> 取代為此單元開頭的端點 URL。
go run ./cmd --url=<EVALUATED_SECURITY_SOLUTION_URL> --verbose
如果您已正確設定 WAF 原則設定,則應該會在輸出中看到
Baseline attack status code: 999
。 這是您在 WAF 封鎖要求的情況下,所設定的相同回應狀態碼。
您現在擁有受 Web 應用程式防火牆 (WAF) 原則保護的全功能車輛 Web 應用程式。