

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

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

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

# 在 中使用規則動作 AWS WAF
<a name="waf-rule-action"></a>

本節說明規則動作的運作方式。

當 Web 請求符合規則中定義的條件時，規則動作會告知 AWS WAF 該如何處理。您可以選擇性地將自訂行為新增至每個規則動作。

**注意**  
規則動作可以是終止或非終止。終止動作會停止請求的保護套件 (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 定價](https://aws.amazon.com/waf/pricing/)。

  這些規則動作可以終止或非終止，取決於請求中的字符狀態：
  + **未終止有效、未過期的字符** – 如果字符根據設定的 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](waf-captcha-and-challenge.md)。

如需自訂請求和回應的資訊，請參閱 [中的自訂 Web 請求和回應 AWS WAF](waf-custom-request-response.md)。

如需將標籤新增至相符請求的詳細資訊，請參閱 [中的 Web 請求標籤 AWS WAF](waf-labels.md)。

如需有關保護套件 (Web ACL) 和規則設定如何互動的資訊，請參閱 [在 中使用保護套件 (Web ACLs) 搭配規則和規則群組 AWS WAF](web-acl-processing.md)。

## 獲利動作
<a name="waf-rule-action-monetize"></a>

Monetize 動作會將 HTTP 402 Payment Required 回應傳回給請求的用戶端。回應包含機器可讀取的 x402 付款指示，用戶端會使用此指示來完成付款並存取資源。使用獲利動作向 AI 機器人和代理程式收取內容存取的費用。此動作僅適用於與 Amazon CloudFront 分佈相關聯的 Web ACLs，且需要 Web ACL 上的 MonetizationConfig。

### 獲利動作的運作方式
<a name="waf-rule-action-monetize-how-it-works"></a>

當具有獲利動作的規則符合請求時：

1. 如果請求不包含有效的`payment-signature`標頭， 會 AWS WAF 發出付款必要挑戰 (HTTP 402 回應與付款指示）。

1. 用戶端會簽署付款授權，並使用 `payment-signature`標頭重新提交請求。

1. AWS WAF 驗證付款授權。

1. 成功驗證後，請求會繼續到原始伺服器。

1. 原始伺服器傳回 2xx 回應後，付款會透過第三方協助服務在鏈上結算。

1. 內容會與和解確認一起提供給用戶端。

**重要**  
為了實作 AI 流量獲利政策，我們使用行為訊號和風險型系統等多種偵測技術來檢查和分類傳入流量。雖然這些方法旨在提供高可信度的分類，但它們很概率，可能無法在所有情況下正確識別或分類所有機器人流量。我們會持續測試和更新分析方法，以提高準確性。我們建議您在啟用即時獲利之前，使用測試模式來驗證您的政策是否產生預期結果。

### 獲利動作參數
<a name="waf-rule-action-monetize-parameters"></a>


| 參數 | 必要 | 說明 | 
| --- | --- | --- | 
| PriceMultiplier | 否 | 套用至 Web ACL MonetizationConfig 中定義之基本價格的整數乘數 (1–100)。請求的有效價格是基本價格乘以此值。指定 做為字串。預設："1"。 | 

### 獲利動作行為
<a name="waf-rule-action-monetize-behavior"></a>
+ **終止評估** – 就像區塊一樣，Metize 動作會終止相符請求的規則評估。
+ **僅限 CloudFront ** – 僅支援保護 Amazon CloudFront 分佈ACLs。
+ **指標** – 在 CloudWatch `MonetizeRequests` 中發出指標，與 `BlockedRequests`和 分開`AllowedRequests`。
+ **記錄** – AWS WAF 日誌會在觸發時包含獲利特定欄位。

### 範例：以 JSON 獲利規則
<a name="waf-rule-action-monetize-example"></a>

```
{
  "Name": "MonetizeUnverifiedBots",
  "Priority": 5,
  "Statement": {
    "LabelMatchStatement": {
      "Scope": "LABEL",
      "Key": "awswaf:managed:aws:bot-control:bot:unverified"
    }
  },
  "Action": {
    "Monetize": {
      "PriceMultiplier": "2"
    }
  },
  "VisibilityConfig": {
    "CloudWatchMetricsEnabled": true,
    "MetricName": "MonetizeUnknownBotsMetric",
    "SampledRequestsEnabled": true
  }
}
```

### 限制
<a name="waf-rule-action-monetize-limitations"></a>
+ 僅適用於 Amazon CloudFront （全域範圍）。
+ 需要 Web ACL 上的 MonetizationConfig。
+ 以速率為基礎的規則無法使用 Monetize 作為其動作。