推出 的新主控台體驗 AWS WAF
您現在可以使用更新後的體驗,在主控台的任何位置存取 AWS WAF 功能。如需詳細資訊,請參閱使用更新的主控台體驗。
本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
在 中覆寫規則群組動作 AWS WAF
本節說明如何覆寫規則群組動作。
當您將規則群組新增至保護套件或 Web ACL 時,您可以覆寫在相符的 Web 請求上所採取的動作。覆寫保護套件或 Web ACL 組態內規則群組的動作並不會改變規則群組本身。它只會改變 AWS WAF 如何在保護套件或 Web ACL 的內容中使用規則群組。
規則群組規則動作覆寫
您可以將規則群組內規則的動作覆寫為任何有效的規則動作。當您執行此操作時,比對請求的處理方式與設定的規則動作為覆寫設定完全相同。
注意
規則動作可以終止或非終止。終止動作會停止請求的保護套件或 Web ACL 評估,並讓它繼續到您的受保護應用程式或封鎖它。
以下是規則動作選項:
-
Allow – AWS WAF 允許將請求轉送至受保護 AWS 的資源以進行處理和回應。這是終止動作。在您定義的規則中,您可以將自訂標頭插入請求,然後再轉送到受保護的資源。
-
Block – AWS WAF 封鎖請求。這是終止動作。根據預設,受保護 AWS 的資源會以 HTTP
403 (Forbidden)
狀態碼回應。在您定義的規則中,您可以自訂回應。當 AWS WAF 封鎖請求時,Block動作設定會決定受保護資源傳回用戶端的回應。 -
Count – AWS WAF 計算請求,但不決定允許或封鎖請求。這是非終止動作。 會 AWS WAF 繼續處理保護套件或 Web ACL 中的其餘規則。在您定義的規則中,您可以將自訂標頭插入請求,也可以新增其他規則可比對的標籤。
-
CAPTCHA 和 Challenge – AWS WAF 使用 CAPTCHA 拼圖和靜音挑戰來驗證請求不是來自機器人,並使用 AWS WAF 字符來追蹤最近成功的用戶端回應。
CAPTCHA 拼圖和無提示挑戰只能在瀏覽器存取 HTTPS 端點時執行。瀏覽器用戶端必須在安全的內容中執行,才能取得字符。
注意
當您在其中一個規則中使用 CAPTCHA或 Challenge規則動作,或做為規則群組中的規則動作覆寫時,需支付額外費用。如需詳細資訊,請參閱AWS WAF 定價
。 這些規則動作可以終止或非終止,取決於請求中字符的狀態:
-
未終止有效、未過期的字符 – 如果字符根據設定的 CAPTCHA 或挑戰抗擾性時間有效且未過期, 會 AWS WAF 處理類似於 Count動作的請求。 會根據保護套件或 Web ACL 中的其餘規則 AWS WAF 繼續檢查 Web 請求。與Count組態類似,在您定義的規則中,您可以選擇使用自訂標頭來設定這些動作以插入請求,也可以新增其他規則可比對的標籤。
-
終止無效或過期權杖的封鎖請求 – 如果權杖無效或指定的時間戳記已過期, 會 AWS WAF 終止 Web 請求的檢查並封鎖請求,類似於 Block動作。 AWS WAF 然後以自訂回應碼回應用戶端。對於 CAPTCHA,如果請求內容指出用戶端瀏覽器可以處理它, AWS WAF 會在 JavaScript 間質中傳送 CAPTCHA 拼圖,其旨在區分人類用戶端和機器人。對於 Challenge動作, AWS WAF 會傳送具有無提示挑戰的 JavaScript 間質,此挑戰旨在區分正常瀏覽器與由機器人執行的工作階段。
如需其他資訊,請參閱 CAPTCHA 和 Challenge 中的 AWS WAF。
-
如需如何使用此選項的詳細資訊,請參閱 覆寫規則群組中的規則動作。
將規則動作覆寫為 Count
規則動作覆寫的最常見使用案例是將部分或全部規則動作覆寫至 Count,以測試和監控規則群組的行為,然後再將其投入生產環境。
您也可以使用它來對產生誤報的規則群組進行故障診斷。當規則群組封鎖您預期不會封鎖的流量時,會發生誤報。如果您在規則群組中識別規則,該規則會封鎖您想要允許通過的請求,您可以保留該規則上的計數動作覆寫,以排除該規則對您的請求採取動作。
如需在測試中使用規則動作覆寫的詳細資訊,請參閱 測試和調校您的 AWS WAF 保護。
JSON 清單:RuleActionOverrides
取代 ExcludedRules
如果您在 2022 年 10 月 27 日之前將保護套件或 Web ACL 組態Count中的規則群組規則動作設為 ,則 會將保護套件或 Web ACL JSON 中的覆寫 AWS WAF 儲存為 ExcludedRules
。現在,將規則覆寫為 的 JSON 設定Count位於RuleActionOverrides
設定中。
建議您將 JSON 清單中的所有ExcludedRules
設定更新為動作設為 RuleActionOverrides
的設定Count。如果您只使用新的設定,API 會接受任一RuleActionOverrides
設定,但您會在主控台工作與 API 工作之間取得 JSON 清單中的一致性。
注意
在 AWS WAF 主控台中,保護套件或 Web ACL 取樣請求索引標籤不會顯示具有舊設定的規則範例。如需詳細資訊,請參閱檢視 Web 請求的範例。
當您使用 AWS WAF 主控台編輯現有的規則群組設定時,主控台會自動將 JSON 中的任何ExcludedRules
設定轉換為 RuleActionOverrides
設定,並將覆寫動作設定為 Count。
-
目前的設定範例:
"ManagedRuleGroupStatement": { "VendorName": "AWS", "Name": "AWSManagedRulesAdminProtectionRuleSet", "RuleActionOverrides": [ { "Name": "AdminProtection_URIPATH", "ActionToUse": { "Count": {} } } ]
-
舊設定範例:
OLD SETTING "ManagedRuleGroupStatement": { "VendorName": "AWS", "Name": "AWSManagedRulesAdminProtectionRuleSet", "ExcludedRules": [ { "Name": "AdminProtection_URIPATH" } ] OLD SETTING
規則群組傳回動作覆寫至 Count
您可以覆寫規則群組傳回的動作,將其設定為 Count。
注意
這不是在規則群組中測試規則的好選項,因為它不會改變規則群組本身 AWS WAF 的評估方式。它只會影響 AWS WAF 如何處理從規則群組評估傳回至保護套件或 Web ACL 的結果。如果您想要測試規則群組中的規則,請使用上一節中所述的選項 規則群組規則動作覆寫。
當您將規則群組動作覆寫為 時Count, 會正常 AWS WAF 處理規則群組評估。
如果規則群組中沒有相符的規則,或者所有相符的規則都具有Count動作,則此覆寫不會影響規則群組或保護套件或 Web ACL 的處理。
規則群組中符合 Web 請求且具有終止規則動作的第一個規則 AWS WAF 會導致 停止評估規則群組,並將終止動作結果傳回至保護套件或 Web ACL 評估層級。此時,在保護套件或 Web ACL 評估中,此覆寫會生效。 會 AWS WAF 覆寫終止動作,使得規則群組評估的結果僅為Count動作。 AWS WAF 然後繼續處理保護套件或 Web ACL 中的其餘規則。
如需如何使用此選項的詳細資訊,請參閱 將規則群組的評估結果覆寫為 Count。