本文以網頁登入和網頁存在多個子網域名稱為例,介紹如何自訂防爬情境化規則。
樣本一:阿里雲官網登入頁面
本樣本以阿里雲國際站官網登入頁面(account.alibabacloud.com)為例,介紹防爬情境化防護規則的具體配置。
在阿里雲官網單擊登入按鈕後,觸發的網頁請求欄位如下:
情境化防爬規則配置示意圖如下:規則配置說明:
- 執行登入操作時,需要在阿里雲官網頁面上單擊表徵圖來觸發登入請求。這是此次樣本情境中防護的最終目標,因此,防護業務情境填寫登入。
- 網頁登入流程是在瀏覽器環境下完成的,防護目標類型選擇網頁/瀏覽器。
- 登入按鈕位於account.alibabacloud.com這個網域名稱下的頁面中,但登入請求是提交到passport.alibabacloud.com這個網域名稱的,存在跨域的情況。因此,防護策略本身應該配置在passport.alibabacloud.com網域名稱下,但同時需要選中防護目標有來自其它網域名稱的跨域調用,並填寫account.alibaba.com網域名稱。
- 登入請求本身的特徵是URL包含/newlogin/login.do,且要求方法為POST。因此,防護目標特徵需要按該特徵進行定義。
樣本二:阿里雲官網解決方案詳情頁面
本樣本以阿里雲國際站官網解決方案詳情頁面(alibabacloud.com/solutions)為例,介紹防爬情境化防護規則的具體配置。
以下是本樣本中提及的阿里雲解決方案詳情頁面:
情境化防爬規則配置示意圖如下:規則配置說明如下:
- 此次樣本情境中防護的最終目標是alibabacloud.com/solutions頁面下的各個解決方案子頁面。因此,防護業務情境填寫解決方案詳情頁。
- 訪問該頁面是在瀏覽器環境下完成的,防護目標類型選擇網頁/瀏覽器。
- 在阿里雲解決方案詳情頁面(alibabacloud.com/solutions),訪問單個解決方案頁面,其URL結構為
/solutions/xxx
。因此,防護目標特徵設定為URLPath包含/solutions/
、要求方法為GET
。本樣本中不涉及跨域請求,因此,無需選擇防護目標有來自其它網域名稱的跨域調用。您也可以根據業務情境的實際情況,添加更多防護條件,例如user-agent、param、referer等。