

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

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

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

# 中的標籤語法和命名需求 AWS WAF
<a name="waf-rule-label-requirements"></a>

本節說明如何建構和比對 AWS WAF 標籤。

標籤是由字首、選用命名空間和名稱組成的字串。標籤的元件以冒號分隔。標籤具有下列需求和特性：
+ 標籤區分大小寫。
+ 每個標籤命名空間或標籤名稱最多可有 128 個字元。
+ 您可以在標籤中指定最多五個命名空間。
+ 標籤的元件以冒號 () 分隔`:`。
+ 您無法在為標籤指定的命名空間或名稱中使用下列預留字串：`awswaf`、`aws`、`waf`、`rulegroup`、`webacl`、 `regexpatternset` `ipset`和 `managed`。

## 標籤語法
<a name="waf-rule-label-syntax"></a>

完整標籤具有字首、選用命名空間和標籤名稱。字首識別新增標籤之規則的規則群組或保護套件 (Web ACL) 內容。命名空間可用於為標籤新增更多內容。標籤名稱提供最低層級的標籤詳細資訊。它通常表示將標籤新增至請求的特定規則。

標籤字首會根據其原始伺服器而有所不同。
+ **您的標籤** – 以下顯示您在保護套件 (Web ACL) 和規則群組規則中建立的標籤的完整標籤語法。實體類型為 `rulegroup`和 `webacl`。

  ```
  awswaf:<entity owner account id>:<entity type>:<entity name>:<custom namespace>:...:<label name>
  ```
  + 標籤命名空間字首： `awswaf:<entity owner account id>:<entity type>:<entity name>:`
  + 自訂命名空間新增項目： `<custom namespace>:…:`

  當您在規則群組或保護套件 (Web ACL) 中定義規則的標籤時，您可以控制自訂命名空間字串和標籤名稱。其餘部分由 為您產生 AWS WAF。 AWS WAF 會以 `awswaf`和帳戶和保護套件 (Web ACL) 或規則群組實體設定自動加上所有標籤的字首。
+ **受管規則群組標籤** – 以下顯示受管規則群組中規則所建立標籤的完整標籤語法。

  ```
  awswaf:managed:<vendor>:<rule group name>:<custom namespace>:...:<label name>
  ```
  + 標籤命名空間字首： `awswaf:managed:<vendor>:<rule group name>:`
  + 自訂命名空間新增項目： `<custom namespace>:…:`

  所有 AWS 受管規則規則群組都會新增標籤。如需受管規則群組的相關資訊，請參閱 [在 中使用受管規則群組 AWS WAF](waf-managed-rule-groups.md)。
+ **來自其他 AWS 程序的標籤** – AWS 受管規則規則群組會使用這些程序，因此您會看到這些程序新增至您使用受管規則群組評估的 Web 請求。以下顯示由受管規則群組呼叫的程序所建立之標籤的完整標籤語法。

  ```
  awswaf:managed:<process>:<custom namespace>:...:<label name>
  ```
  + 標籤命名空間字首： `awswaf:managed:<process>:`
  + 自訂命名空間新增： `<custom namespace>:…:`

  此類型的標籤會針對呼叫 程序 AWS 的受管規則群組列出。如需受管規則群組的相關資訊，請參閱 [在 中使用受管規則群組 AWS WAF](waf-managed-rule-groups.md)。

## 規則的標籤範例
<a name="waf-rule-label-examples-rules"></a>

下列範例標籤是由屬於帳戶 111122223333 `testRules`的規則群組中的規則定義。

```
awswaf:111122223333:rulegroup:testRules:testNS1:testNS2:LabelNameA
```

```
awswaf:111122223333:rulegroup:testRules:testNS1:LabelNameQ
```

```
awswaf:111122223333:rulegroup:testRules:LabelNameZ
```

下列清單顯示 JSON 中的範例標籤規格。這些標籤名稱包含結尾標籤名稱之前的自訂命名空間字串。

```
Rule: {
    Name: "label_rule",
    Statement: {...}
    RuleLabels: [
        Name: "header:encoding:utf8",
        Name: "header:user_agent:firefox"
    ],
    Action: { Count: {} }
}
```

**注意**  
您可以透過規則 JSON 編輯器在主控台中存取此類型的清單。

如果您在與上述標籤範例相同的規則群組和帳戶中執行上述規則，則產生的完整標籤如下：

```
awswaf:111122223333:rulegroup:testRules:header:encoding:utf8
```

```
awswaf:111122223333:rulegroup:testRules:header:user_agent:firefox
```

## 受管規則群組的標籤範例
<a name="waf-rule-label-examples-rule-groups"></a>

以下顯示受 AWS 管規則規則群組的範例標籤，以及他們叫用的處理程序。

```
awswaf:managed:aws:core-rule-set:NoUserAgent_Header
```

```
awswaf:managed:aws:sql-database:SQLiExtendedPatterns_QueryArguments
```

```
awswaf:managed:aws:atp:aggregate:attribute:compromised_credentials
```

```
awswaf:managed:token:accepted
```