AWS SDK Version 3 for .NET
API Reference

AWS services or capabilities described in AWS Documentation may vary by region/location. Click Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.

Container for the parameters to the UpdateWebACL operation. Inserts or deletes ActivatedRule objects in a WebACL. Each Rule identifies web requests that you want to allow, block, or count. When you update a WebACL, you specify the following values:

To create and configure a WebACL, perform the following steps:

  1. Create and update the predicates that you want to include in Rules. For more information, see CreateByteMatchSet, UpdateByteMatchSet, CreateIPSet, UpdateIPSet, CreateSqlInjectionMatchSet, and UpdateSqlInjectionMatchSet.

  2. Create and update the Rules that you want to include in the WebACL. For more information, see CreateRule and UpdateRule.

  3. Create a WebACL. See CreateWebACL.

  4. Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of an UpdateWebACL request.

  5. Submit an UpdateWebACL request to specify the Rules that you want to include in the WebACL, to specify the default action, and to associate the WebACL with a CloudFront distribution.

Be aware that if you try to add a RATE_BASED rule to a web ACL without setting the rule type when first creating the rule, the UpdateWebACL request will fail because the request tries to add a REGULAR rule (the default rule type) with the specified ID, which does not exist.

For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide.

Inheritance Hierarchy


Namespace: Amazon.WAFRegional.Model
Assembly: AWSSDK.WAFRegional.dll
Version: 3.x.y.z


public class UpdateWebACLRequest : AmazonWAFRegionalRequest

The UpdateWebACLRequest type exposes the following members


Public Method UpdateWebACLRequest()


Public Property ChangeToken System.String

Gets and sets the property ChangeToken.

The value returned by the most recent call to GetChangeToken.

Public Property DefaultAction Amazon.WAFRegional.Model.WafAction

Gets and sets the property DefaultAction.

A default action for the web ACL, either ALLOW or BLOCK. AWS WAF performs the default action if a request doesn't match the criteria in any of the rules in a web ACL.

Public Property Updates System.Collections.Generic.List<Amazon.WAFRegional.Model.WebACLUpdate>

Gets and sets the property Updates.

An array of updates to make to the WebACL.

An array of WebACLUpdate objects that you want to insert into or delete from a WebACL. For more information, see the applicable data types:

  • WebACLUpdate: Contains Action and ActivatedRule

  • ActivatedRule: Contains Action, OverrideAction, Priority, RuleId, and Type. ActivatedRule|OverrideAction applies only when updating or adding a RuleGroup to a WebACL. In this case you do not use ActivatedRule|Action. For all other update requests, ActivatedRule|Action is used instead of ActivatedRule|OverrideAction.

  • WafAction: Contains Type

Public Property WebACLId System.String

Gets and sets the property WebACLId.

The WebACLId of the WebACL that you want to update. WebACLId is returned by CreateWebACL and by ListWebACLs.


The following example deletes an ActivatedRule object in a WebACL with the ID webacl-1472061481310.

To update a Web ACL

var response = client.UpdateWebACL(new UpdateWebACLRequest 
    ChangeToken = "abcd12f2-46da-4fdb-b8d5-fbd4c466928f",
    DefaultAction = new WafAction { Type = "ALLOW" },
    Updates = new List {
        new WebACLUpdate {
            Action = "DELETE",
            ActivatedRule = new ActivatedRule {
                Action = new WafAction { Type = "ALLOW" },
                Priority = 1,
                RuleId = "WAFRule-1-Example"
    WebACLId = "webacl-1472061481310"

string changeToken = response.ChangeToken;


Version Information

.NET Standard:
Supported in: 1.3

.NET Framework:
Supported in: 4.5, 4.0, 3.5

Portable Class Library:
Supported in: Windows Store Apps
Supported in: Windows Phone 8.1
Supported in: Xamarin Android
Supported in: Xamarin iOS (Unified)
Supported in: Xamarin.Forms