

**推出 的新主控台體驗 AWS WAF**

您現在可以使用更新後的體驗，在主控台的任何位置存取 AWS WAF 功能。如需詳細資訊，請參閱[使用 主控台](https://docs.aws.amazon.com/waf/latest/developerguide/working-with-console.html)。

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 使用容量限制條件
<a name="classic-web-acl-size-conditions"></a>

**警告**  
AWS WAF Classic 正在經歷規劃end-of-life程序。如需區域特定的里程碑和日期，請參閱您的 AWS Health 儀表板。

**注意**  
這是 **AWS WAF Classic** 文件。只有在您在 2019 年 11 月 AWS WAF 之前建立 AWS WAF 規則和 Web ACLs 等資源，且尚未將它們遷移到最新版本時，才應該使用此版本。若要遷移您的 Web ACLs，請參閱 [將您的 AWS WAF Classic 資源遷移至 AWS WAF](waf-migrating-from-classic.md)。  
**如需 的最新版本 AWS WAF**，請參閱 [AWS WAF](waf-chapter.md)。

如果您想根據指定部分請求的長度，允許或封鎖 web 請求，請建立容量限制條件。大小限制條件可識別您希望 AWS WAF Classic 查看的 Web 請求部分、您希望 AWS WAF Classic 尋找的位元組數，以及 運算子，例如大於 (＞) 或小於 (＜)。例如，您可以使用容量限制條件，以尋找超過 100 位元組的查詢字串。稍後，當您建立 Web ACL，您需要指定是否要根據這些設定允許或封鎖請求。

請注意，如果您設定 AWS WAF Classic 來檢查請求內文，例如，透過搜尋內文以取得指定的字串， AWS WAF Classic 只會檢查前 8192 個位元組 (8 KB)。如果您的 Web 請求的請求主體永遠不會超過 8192 個位元組，您可以建立容量限制條件，封鎖大於 8192 位元組的請求。

**Topics**
+ [建立容量限制條件](#classic-web-acl-size-conditions-creating)
+ [在您建立或編輯容量限制條件時所指定的值](#classic-web-acl-size-conditions-values)
+ [新增和刪除容量限制條件的篩選條件](#classic-web-acl-size-conditions-editing)
+ [刪除容量限制條件](#classic-web-acl-size-conditions-deleting)

## 建立容量限制條件
<a name="classic-web-acl-size-conditions-creating"></a>

當您建立大小限制條件時，您可以指定篩選條件，以識別您希望 AWS WAF Classic 評估長度的 Web 請求部分。您可以將多個篩選條件增至容量限制條件，或您可以為每個篩選條件建立獨立的條件。以下是每個組態如何影響 AWS WAF Classic 行為的方式：
+ **每個大小限制條件一個篩選條件** – 當您將個別大小限制條件新增至規則並將規則新增至 Web ACL 時，Web 請求必須符合 AWS WAF Classic 的所有條件，才能根據條件允許或封鎖請求。

  例如，假設您建立兩個條件。一個符合 web 請求查詢字串大於 100 位元組。另一個符合 web 請求內文大於 1024 位元組。當您將兩個條件新增至相同的規則並將規則新增至 Web ACL 時， AWS WAF Classic 只會在兩個條件皆為 true 時允許或封鎖請求。
+ **每個大小限制條件超過一個篩選條件** – 當您將包含多個篩選條件的大小限制條件新增至規則，並將規則新增至 Web ACL 時，Web 請求只需要符合 AWS WAF Classic 大小限制條件中的其中一個篩選條件，即可根據該條件允許或封鎖請求。

  假設您建立一個條件而不是兩個條件，而一個條件包含與上述範例中相同的兩個篩選條件。如果查詢字串大於 100 個位元組或請求內文大於 1024 個位元組， AWS WAF Classic 允許或封鎖請求。

**注意**  
當您將大小限制條件新增至規則時，您也可以設定 AWS WAF Classic 來允許或封鎖*不符合*條件中值的 Web 請求。<a name="classic-web-acl-size-conditions-creating-procedure"></a>

**建立容量限制條件**

1. 登入 AWS 管理主控台 並在 https：//[https://console.aws.amazon.com/wafv2/](https://console.aws.amazon.com/wafv2/) 開啟 AWS WAF 主控台。

   如果您在導覽窗格中看到**切換到 AWS WAF 傳統**，請選取它。

1. 在導覽窗格中，選擇**容量限制**。

1. 選擇 **Create condition (建立條件)**。

1. 指定適用的篩選條件設定。如需詳細資訊，請參閱[在您建立或編輯容量限制條件時所指定的值](#classic-web-acl-size-conditions-values)。

1. 選擇 **Add another filter (新增其他篩選條件)**。

1. 如果您希望新增另一個篩選，重複步驟四和五。

1. 當您完成新增篩選條件後，請選擇**建立容量限制條件**。

## 在您建立或編輯容量限制條件時所指定的值
<a name="classic-web-acl-size-conditions-values"></a>

在建立或更新容量限制條件時，請指定以下的值：

**名稱**  
輸入容量限制條件的名稱。  
名稱僅能含有英數字元 (A-Z、a-z、0-9) 或以下特殊字元：\$1-\$1"\$1`\$1\$1\$1,./。條件的名稱在建立後無法變更。

**要篩選的請求部分是**  
選擇您希望 AWS WAF Classic 評估其長度的每個 Web 請求的部分：    
**標頭**  
指定的請求標頭，例如，`User-Agent` 或 `Referer` 標頭。如果您選擇**標頭**，請在**標頭**欄位裡指定標頭的名稱。  
**HTTP 方法**  
HTTP 方法，指出請求要求原始伺服器執行的操作類型。CloudFront 支援下列方法：`DELETE`、`GET`、`HEAD`、`OPTIONS`、`PATCH`、`POST` 和 `PUT`。  
**查詢字串**  
出現在 `?` 字元後的 URL 部分 (如果有)。  
**URI**  
請求的 URI 路徑，可識別資源，例如 `/images/daily-ad.jpg`。這不包含 URI 的查詢字串或片段元件。如需詳細資訊，請參閱[統一資源識別符 (URI)：一般語法](https://tools.ietf.org/html/rfc3986#section-3.3)。  
除非指定**轉換**，否則 URI 不會標準化，並如同在請求中從用戶端 AWS 接收 URI 一樣進行檢查。**Transformation (轉換)** 將如指定重新格式化 URI。  
**Body**  
部分的請求內容含有您想傳送至您的 web 伺服器做為 HTTP 請求內文的額外資料，您要傳送到您的 Web 伺服器的 HTTP 請求的內文，例如資料表單。  
**單一查詢參數 (僅數值)**  
任何您已定義做為部分查詢字串的參數。例如，如果 URL 為「www.xyz.com?UserName=abc&SalesRegion=seattle」，則您可以新增篩選條件至 *UserName* 或 *SalesRegion* 參數。  
如果您選擇**單一查詢參數 (僅數值)**，您也可以指定**查詢參數名稱**。這是您將在查詢字串參數中檢查的項目，例如 *UserName*。**查詢參數名稱**的長度上限為 30 個字元。**查詢參數名稱** 不區分大小寫。例如，您指定 *UserName* 為**查詢參數名稱**，此會比對所有 *UserName* 的異體，如 *username* 和 *UsERName*。  
**所有的查詢參數 (僅數值)**  
與**單一查詢參數 （僅限值）** 類似，但不會檢查單一參數的值， AWS WAF Classic 會檢查查詢字串內所有參數的值是否有大小限制。例如，如果 URL 是 "www.xyz.com？UserName=abc&SalesRegion=seattle"，而且您選擇**所有查詢參數 （僅限值）**，則如果 *UserName* 或 *SalesRegion* 超過指定的大小， AWS WAF Classic 會觸發 的值。

**標頭 (只有當「部分請求的篩選條件」為「標頭」時)**  
如果您為**要篩選的部分請求**選擇**標頭**，請從常見標頭清單中選擇標頭，或輸入您要 AWS WAF Classic 評估長度的標頭名稱。

**比較運算子**  
選擇您希望 AWS WAF Classic 如何針對您為**大小**指定的值，評估 Web 請求中查詢字串的長度。  
例如，如果您針對**比較運算子**選擇**大於** ，且針對**大小**選擇 **100**， AWS WAF Classic 會評估查詢字串超過 100 個位元組的 Web 請求。

**大小**  
輸入您希望 AWS WAF Classic 在查詢字串中監看的長度，以位元組為單位。  
如果您選擇 **URI** 為 **部分請求的值來篩選**，則會視 URI 的 **/** 為一個字元。例如，URI 路徑長度`/logo.jpg`為九個字元。

**轉換**  
在 AWS WAF Classic 評估請求指定部分的長度之前，轉換會重新格式化 Web 請求。這消除了攻擊者為了繞過 AWS WAF Classic 而在 Web 請求中使用的一些異常格式。  
如果您選擇**用於部分篩選請求**的**內文**，則無法設定 AWS WAF Classic 來執行轉換，因為只有前 8192 個位元組會轉送以供檢查。不過，您仍然可以根據 HTTP 請求內文的大小來篩選流量，並指定**無**轉換。(AWS WAF Classic 會從請求標頭取得內文的長度。)
您只能指定一種文字轉換類型。  
轉換可執行下列操作：    
**無**  
AWS WAF 在檢查長度之前，Classic 不會對 Web 請求執行任何文字轉換。  
**轉換成小寫**  
AWS WAF Classic 會將大寫字母 (A-Z) 轉換為小寫 (a-z)。  
**HTML 解碼**  
AWS WAF Classic 以未編碼的字元取代 HTML 編碼的字元：  
+ 將 `&quot;` 換成 `&`
+ 以非中斷空格取代 `&nbsp;`
+ 將 `&lt;` 換成 `<`
+ 將 `&gt;` 換成 `>`
+ 將表示為十六進位格式的字元 `&#xhhhh;` 以對應字元取代
+ 將表示為十進位格式的字元 `&#nnnn;` 以對應字元取代  
**標準化空格**  
AWS WAF Classic 以空格字元 （小數 32) 取代下列字元：  
+ \$1f、跳頁、小數 12
+ \$1t、標籤、小數 9
+ \$1n、換行，小數 10
+ \$1r、換行、小數 13
+ \$1v、垂直標籤，小數 11
+ 非中斷空格，小數 160
此外，此選項將數個空格取代為一個空格。  
**簡化命令列**  
對於包含作業系統命令列命令的請求，請使用此選項以執行以下轉換：  
+ 刪除以下字元：\$1 " ' ^
+ 刪除以下字元前的空格：/ (
+ 將以下字元取代為空格：, ;
+ 將數個空格取代為一個空格
+ 將所有大寫字母 (A-Z) 轉換成小寫 (a-z)  
**URL 解碼**  
解碼 URL 編碼請求。

## 新增和刪除容量限制條件的篩選條件
<a name="classic-web-acl-size-conditions-editing"></a>

您可以新增和刪除容量限制條件的篩選條件。若要變更篩選條件、新增新的篩選條件、和刪除舊的篩選條件。<a name="classic-web-acl-size-conditions-editing-procedure"></a>

**新增和刪除容量限制條件的篩選條件**

1. 登入 AWS 管理主控台 並在 https：//[https://console.aws.amazon.com/wafv2/](https://console.aws.amazon.com/wafv2/) 開啟 AWS WAF 主控台。

   如果您在導覽窗格中看到**切換到 AWS WAF 傳統**，請選取它。

1. 在導覽窗格中，選擇**容量限制**。

1. 選擇您想要在條件裡新增或刪除的篩選條件。

1. 若要新增篩選條件，請執行以下步驟：

   1. 選擇**新增篩選條件**。

   1. 指定適用的篩選條件設定。如需詳細資訊，請參閱[在您建立或編輯容量限制條件時所指定的值](#classic-web-acl-size-conditions-values)。

   1. 選擇**新增**。

1. 若要刪除篩選條件，請執行以下步驟：

   1. 選取您要刪除的篩選條件。

   1. 選擇**刪除篩選條件**。

## 刪除容量限制條件
<a name="classic-web-acl-size-conditions-deleting"></a>

如果您想要刪除容量限制條件，您需要先刪除該條件內的所有篩選條件，以及從所有使用它的規則中移除，請參閱下列程序。<a name="classic-web-acl-size-conditions-deleting-procedure"></a>

**刪除容量限制條件**

1. 登入 AWS 管理主控台 並在 https：//[https://console.aws.amazon.com/wafv2/](https://console.aws.amazon.com/wafv2/) 開啟 AWS WAF 主控台。

   如果您在導覽窗格中看到**切換到 AWS WAF 傳統**，請選取它。

1. 在導覽窗格中，選擇**容量限制**。

1. 在**容量限制條件**窗格中，選擇您要刪除的容量限制條件。

1. 在右窗格中，選擇 **Associated rules (關聯的規則)** 標籤。

   如果使用此容量限制條件規則的名單為空白，請移至步驟六。如果清單有包含任何規則，請記下該規則並繼續步驟五。

1. 若要從使用該容量限制條件的規則中移除該條件，請執行以下步驟：

   1. 在導覽窗格中，選擇**規則**。

   1. 選擇要刪除使用該容量限制條件的規則名稱。

   1. 在右窗格中，選擇要刪除使用該容量限制條件的規則，然後選擇**移除選取的條件**。

   1. 對所有剩下要刪除使用該容量限制條件的規則，重複步驟 b 和 c。

   1. 在導覽窗格中，選擇**容量限制**。

   1. 在**容量限制條件**窗格中，選擇您要刪除的容量限制條件。

1. 選擇**刪除**以刪除選取的條件。