Smaws_Client_WAF.UpdateWebACL
val request :
Smaws_Lib.Context.t ->
update_web_acl_request ->
(update_web_acl_response,
[> Smaws_Lib.Protocols.AwsJson.error
| `WAFInternalErrorException of waf_internal_error_exception
| `WAFInvalidAccountException of waf_invalid_account_exception
| `WAFInvalidOperationException of waf_invalid_operation_exception
| `WAFInvalidParameterException of waf_invalid_parameter_exception
| `WAFLimitsExceededException of waf_limits_exceeded_exception
| `WAFNonexistentContainerException of waf_nonexistent_container_exception
| `WAFNonexistentItemException of waf_nonexistent_item_exception
| `WAFReferencedItemException of waf_referenced_item_exception
| `WAFStaleDataException of waf_stale_data_exception
| `WAFSubscriptionNotFoundException of waf_subscription_not_found_exception ])
Stdlib.result
This is AWS WAF Classic documentation. For more information, see AWS WAF Classic in the developer guide.
For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints for regional and global use.
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:
WebACL
, 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 WebACL
.Rules
that you want to add or delete. If you want to replace one Rule
with another, you delete the existing Rule
and add the new one.Rule
, whether you want AWS WAF to allow requests, block requests, or count requests that match the conditions in the Rule
.Rules
in a WebACL
. If you add more than one Rule
to a WebACL
, AWS WAF evaluates each request against the Rules
in order based on the value of Priority
. (The Rule
that has the lowest value for Priority
is evaluated first.) When a web request matches all the predicates (such as ByteMatchSets
and IPSets
) in a Rule
, AWS WAF immediately takes the corresponding action, allow or block, and doesn't evaluate the request against the remaining Rules
in the WebACL
, if any.To create and configure a WebACL
, perform the following steps:
Rules
. For more information, see CreateByteMatchSet
, UpdateByteMatchSet
, CreateIPSet
, UpdateIPSet
, CreateSqlInjectionMatchSet
, and UpdateSqlInjectionMatchSet
.Rules
that you want to include in the WebACL
. For more information, see CreateRule
and UpdateRule
.WebACL
. See CreateWebACL
.GetChangeToken
to get the change token that you provide in the ChangeToken
parameter of an UpdateWebACL
request.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.
The ActivatedRule
can be a rule group. If you specify a rule group as your ActivatedRule
, you can exclude specific rules from that rule group.
If you already have a rule group associated with a web ACL and want to submit an UpdateWebACL
request to exclude certain rules from that rule group, you must first remove the rule group from the web ACL, the re-insert it again, specifying the excluded rules. For details, see ActivatedRule$ExcludedRules
.
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.