GetRateBasedStatementManagedKeys
Retrieves the IP addresses that are currently blocked by a rate-based rule instance. This is only available for rate-based rules that aggregate solely on the IP address or on the forwarded IP address.
The maximum number of addresses that can be blocked for a single rate-based rule instance is 10,000. If more than 10,000 addresses exceed the rate limit, those with the highest rates are blocked.
For a rate-based rule that you've defined inside a rule group, provide the name of the rule group reference statement in your request, in addition to the rate-based rule name and the web ACL name.
AWS WAF monitors web requests and manages keys independently for each unique combination of web ACL, optional rule group, and rate-based rule. For example, if you define a rate-based rule inside a rule group, and then use the rule group in a web ACL, AWS WAF monitors web requests and manages keys for that web ACL, rule group reference statement, and rate-based rule instance. If you use the same rule group in a second web ACL, AWS WAF monitors web requests and manages keys for this second usage completely independent of your first.
Request Syntax
{
"RuleGroupRuleName": "string
",
"RuleName": "string
",
"Scope": "string
",
"WebACLId": "string
",
"WebACLName": "string
"
}
Request Parameters
For information about the parameters that are common to all actions, see Common Parameters.
The request accepts the following data in JSON format.
- RuleGroupRuleName
-
The name of the rule group reference statement in your web ACL. This is required only when you have the rate-based rule nested inside a rule group.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 128.
Pattern:
^[\w\-]+$
Required: No
- RuleName
-
The name of the rate-based rule to get the keys for. If you have the rule defined inside a rule group that you're using in your web ACL, also provide the name of the rule group reference statement in the request parameter
RuleGroupRuleName
.Type: String
Length Constraints: Minimum length of 1. Maximum length of 128.
Pattern:
^[\w\-]+$
Required: Yes
- Scope
-
Specifies whether this is for a global resource type, such as a Amazon CloudFront distribution.
To work with CloudFront, you must also specify the Region US East (N. Virginia) as follows:
-
CLI - Specify the Region when you use the CloudFront scope:
--scope=CLOUDFRONT --region=us-east-1
. -
API and SDKs - For all calls, use the Region endpoint us-east-1.
Type: String
Valid Values:
CLOUDFRONT | REGIONAL
Required: Yes
-
- WebACLId
-
The unique identifier for the web ACL. This ID is returned in the responses to create and list commands. You provide it to operations like update and delete.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 36.
Pattern:
^[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$
Required: Yes
- WebACLName
-
The name of the web ACL. You cannot change the name of a web ACL after you create it.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 128.
Pattern:
^[\w\-]+$
Required: Yes
Response Syntax
{
"ManagedKeysIPV4": {
"Addresses": [ "string" ],
"IPAddressVersion": "string"
},
"ManagedKeysIPV6": {
"Addresses": [ "string" ],
"IPAddressVersion": "string"
}
}
Response Elements
If the action is successful, the service sends back an HTTP 200 response.
The following data is returned in JSON format by the service.
- ManagedKeysIPV4
-
The keys that are of Internet Protocol version 4 (IPv4).
Type: RateBasedStatementManagedKeysIPSet object
- ManagedKeysIPV6
-
The keys that are of Internet Protocol version 6 (IPv6).
Type: RateBasedStatementManagedKeysIPSet object
Errors
For information about the errors that are common to all actions, see Common Errors.
- WAFInternalErrorException
-
Your request is valid, but AWS WAF couldn’t perform the operation because of a system problem. Retry your request.
HTTP Status Code: 500
- WAFInvalidOperationException
-
The operation isn't valid.
HTTP Status Code: 400
- WAFInvalidParameterException
-
The operation failed because AWS WAF didn't recognize a parameter in the request. For example:
-
You specified a parameter name or value that isn't valid.
-
Your nested statement isn't valid. You might have tried to nest a statement that can’t be nested.
-
You tried to update a
WebACL
with aDefaultAction
that isn't among the types available at DefaultAction. -
Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL can't be associated.
HTTP Status Code: 400
-
- WAFNonexistentItemException
-
AWS WAF couldn’t perform the operation because your resource doesn't exist. If you've just created a resource that you're using in this operation, you might just need to wait a few minutes. It can take from a few seconds to a number of minutes for changes to propagate.
HTTP Status Code: 400
- WAFUnsupportedAggregateKeyTypeException
-
The rule that you've named doesn't aggregate solely on the IP address or solely on the forwarded IP address. This call is only available for rate-based rules with an
AggregateKeyType
setting ofIP
orFORWARDED_IP
.HTTP Status Code: 400
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following: