public static interface RateBasedStatementCustomKey.Builder extends SdkPojo, CopyableBuilder<RateBasedStatementCustomKey.Builder,RateBasedStatementCustomKey>
| Modifier and Type | Method and Description |
|---|---|
default RateBasedStatementCustomKey.Builder |
cookie(Consumer<RateLimitCookie.Builder> cookie)
Use the value of a cookie in the request as an aggregate key.
|
RateBasedStatementCustomKey.Builder |
cookie(RateLimitCookie cookie)
Use the value of a cookie in the request as an aggregate key.
|
default RateBasedStatementCustomKey.Builder |
forwardedIP(Consumer<RateLimitForwardedIP.Builder> forwardedIP)
Use the first IP address in an HTTP header as an aggregate key.
|
RateBasedStatementCustomKey.Builder |
forwardedIP(RateLimitForwardedIP forwardedIP)
Use the first IP address in an HTTP header as an aggregate key.
|
default RateBasedStatementCustomKey.Builder |
header(Consumer<RateLimitHeader.Builder> header)
Use the value of a header in the request as an aggregate key.
|
RateBasedStatementCustomKey.Builder |
header(RateLimitHeader header)
Use the value of a header in the request as an aggregate key.
|
default RateBasedStatementCustomKey.Builder |
httpMethod(Consumer<RateLimitHTTPMethod.Builder> httpMethod)
Use the request's HTTP method as an aggregate key.
|
RateBasedStatementCustomKey.Builder |
httpMethod(RateLimitHTTPMethod httpMethod)
Use the request's HTTP method as an aggregate key.
|
default RateBasedStatementCustomKey.Builder |
ip(Consumer<RateLimitIP.Builder> ip)
Use the request's originating IP address as an aggregate key.
|
RateBasedStatementCustomKey.Builder |
ip(RateLimitIP ip)
Use the request's originating IP address as an aggregate key.
|
default RateBasedStatementCustomKey.Builder |
labelNamespace(Consumer<RateLimitLabelNamespace.Builder> labelNamespace)
Use the specified label namespace as an aggregate key.
|
RateBasedStatementCustomKey.Builder |
labelNamespace(RateLimitLabelNamespace labelNamespace)
Use the specified label namespace as an aggregate key.
|
default RateBasedStatementCustomKey.Builder |
queryArgument(Consumer<RateLimitQueryArgument.Builder> queryArgument)
Use the specified query argument as an aggregate key.
|
RateBasedStatementCustomKey.Builder |
queryArgument(RateLimitQueryArgument queryArgument)
Use the specified query argument as an aggregate key.
|
default RateBasedStatementCustomKey.Builder |
queryString(Consumer<RateLimitQueryString.Builder> queryString)
Use the request's query string as an aggregate key.
|
RateBasedStatementCustomKey.Builder |
queryString(RateLimitQueryString queryString)
Use the request's query string as an aggregate key.
|
default RateBasedStatementCustomKey.Builder |
uriPath(Consumer<RateLimitUriPath.Builder> uriPath)
Use the request's URI path as an aggregate key.
|
RateBasedStatementCustomKey.Builder |
uriPath(RateLimitUriPath uriPath)
Use the request's URI path as an aggregate key.
|
equalsBySdkFields, sdkFieldscopyapplyMutation, buildRateBasedStatementCustomKey.Builder header(RateLimitHeader header)
Use the value of a header in the request as an aggregate key. Each distinct value in the header contributes to the aggregation instance. If you use a single header as your custom key, then each value fully defines an aggregation instance.
header - Use the value of a header in the request as an aggregate key. Each distinct value in the header
contributes to the aggregation instance. If you use a single header as your custom key, then each
value fully defines an aggregation instance.default RateBasedStatementCustomKey.Builder header(Consumer<RateLimitHeader.Builder> header)
Use the value of a header in the request as an aggregate key. Each distinct value in the header contributes to the aggregation instance. If you use a single header as your custom key, then each value fully defines an aggregation instance.
This is a convenience method that creates an instance of theRateLimitHeader.Builder avoiding the
need to create one manually via RateLimitHeader.builder().
When the Consumer completes, SdkBuilder.build() is called immediately and its
result is passed to header(RateLimitHeader).
header - a consumer that will call methods on RateLimitHeader.Builderheader(RateLimitHeader)RateBasedStatementCustomKey.Builder cookie(RateLimitCookie cookie)
Use the value of a cookie in the request as an aggregate key. Each distinct value in the cookie contributes to the aggregation instance. If you use a single cookie as your custom key, then each value fully defines an aggregation instance.
cookie - Use the value of a cookie in the request as an aggregate key. Each distinct value in the cookie
contributes to the aggregation instance. If you use a single cookie as your custom key, then each
value fully defines an aggregation instance.default RateBasedStatementCustomKey.Builder cookie(Consumer<RateLimitCookie.Builder> cookie)
Use the value of a cookie in the request as an aggregate key. Each distinct value in the cookie contributes to the aggregation instance. If you use a single cookie as your custom key, then each value fully defines an aggregation instance.
This is a convenience method that creates an instance of theRateLimitCookie.Builder avoiding the
need to create one manually via RateLimitCookie.builder().
When the Consumer completes, SdkBuilder.build() is called immediately and its
result is passed to cookie(RateLimitCookie).
cookie - a consumer that will call methods on RateLimitCookie.Buildercookie(RateLimitCookie)RateBasedStatementCustomKey.Builder queryArgument(RateLimitQueryArgument queryArgument)
Use the specified query argument as an aggregate key. Each distinct value for the named query argument contributes to the aggregation instance. If you use a single query argument as your custom key, then each value fully defines an aggregation instance.
queryArgument - Use the specified query argument as an aggregate key. Each distinct value for the named query argument
contributes to the aggregation instance. If you use a single query argument as your custom key, then
each value fully defines an aggregation instance.default RateBasedStatementCustomKey.Builder queryArgument(Consumer<RateLimitQueryArgument.Builder> queryArgument)
Use the specified query argument as an aggregate key. Each distinct value for the named query argument contributes to the aggregation instance. If you use a single query argument as your custom key, then each value fully defines an aggregation instance.
This is a convenience method that creates an instance of theRateLimitQueryArgument.Builder avoiding
the need to create one manually via RateLimitQueryArgument.builder().
When the Consumer completes, SdkBuilder.build() is called immediately and
its result is passed to queryArgument(RateLimitQueryArgument).
queryArgument - a consumer that will call methods on RateLimitQueryArgument.BuilderqueryArgument(RateLimitQueryArgument)RateBasedStatementCustomKey.Builder queryString(RateLimitQueryString queryString)
Use the request's query string as an aggregate key. Each distinct string contributes to the aggregation instance. If you use just the query string as your custom key, then each string fully defines an aggregation instance.
queryString - Use the request's query string as an aggregate key. Each distinct string contributes to the
aggregation instance. If you use just the query string as your custom key, then each string fully
defines an aggregation instance.default RateBasedStatementCustomKey.Builder queryString(Consumer<RateLimitQueryString.Builder> queryString)
Use the request's query string as an aggregate key. Each distinct string contributes to the aggregation instance. If you use just the query string as your custom key, then each string fully defines an aggregation instance.
This is a convenience method that creates an instance of theRateLimitQueryString.Builder avoiding
the need to create one manually via RateLimitQueryString.builder().
When the Consumer completes, SdkBuilder.build() is called immediately and
its result is passed to queryString(RateLimitQueryString).
queryString - a consumer that will call methods on RateLimitQueryString.BuilderqueryString(RateLimitQueryString)RateBasedStatementCustomKey.Builder httpMethod(RateLimitHTTPMethod httpMethod)
Use the request's HTTP method as an aggregate key. Each distinct HTTP method contributes to the aggregation instance. If you use just the HTTP method as your custom key, then each method fully defines an aggregation instance.
httpMethod - Use the request's HTTP method as an aggregate key. Each distinct HTTP method contributes to the
aggregation instance. If you use just the HTTP method as your custom key, then each method fully
defines an aggregation instance.default RateBasedStatementCustomKey.Builder httpMethod(Consumer<RateLimitHTTPMethod.Builder> httpMethod)
Use the request's HTTP method as an aggregate key. Each distinct HTTP method contributes to the aggregation instance. If you use just the HTTP method as your custom key, then each method fully defines an aggregation instance.
This is a convenience method that creates an instance of theRateLimitHTTPMethod.Builder avoiding the
need to create one manually via RateLimitHTTPMethod.builder().
When the Consumer completes, SdkBuilder.build() is called immediately and
its result is passed to httpMethod(RateLimitHTTPMethod).
httpMethod - a consumer that will call methods on RateLimitHTTPMethod.BuilderhttpMethod(RateLimitHTTPMethod)RateBasedStatementCustomKey.Builder forwardedIP(RateLimitForwardedIP forwardedIP)
Use the first IP address in an HTTP header as an aggregate key. Each distinct forwarded IP address contributes to the aggregation instance.
When you specify an IP or forwarded IP in the custom key settings, you must also specify at least one other
key to use. You can aggregate on only the forwarded IP address by specifying FORWARDED_IP in
your rate-based statement's AggregateKeyType.
With this option, you must specify the header to use in the rate-based rule's ForwardedIPConfig
property.
forwardedIP - Use the first IP address in an HTTP header as an aggregate key. Each distinct forwarded IP address
contributes to the aggregation instance.
When you specify an IP or forwarded IP in the custom key settings, you must also specify at least one
other key to use. You can aggregate on only the forwarded IP address by specifying
FORWARDED_IP in your rate-based statement's AggregateKeyType.
With this option, you must specify the header to use in the rate-based rule's
ForwardedIPConfig property.
default RateBasedStatementCustomKey.Builder forwardedIP(Consumer<RateLimitForwardedIP.Builder> forwardedIP)
Use the first IP address in an HTTP header as an aggregate key. Each distinct forwarded IP address contributes to the aggregation instance.
When you specify an IP or forwarded IP in the custom key settings, you must also specify at least one other
key to use. You can aggregate on only the forwarded IP address by specifying FORWARDED_IP in
your rate-based statement's AggregateKeyType.
With this option, you must specify the header to use in the rate-based rule's ForwardedIPConfig
property.
RateLimitForwardedIP.Builder avoiding
the need to create one manually via RateLimitForwardedIP.builder().
When the Consumer completes, SdkBuilder.build() is called immediately and
its result is passed to forwardedIP(RateLimitForwardedIP).
forwardedIP - a consumer that will call methods on RateLimitForwardedIP.BuilderforwardedIP(RateLimitForwardedIP)RateBasedStatementCustomKey.Builder ip(RateLimitIP ip)
Use the request's originating IP address as an aggregate key. Each distinct IP address contributes to the aggregation instance.
When you specify an IP or forwarded IP in the custom key settings, you must also specify at least one other
key to use. You can aggregate on only the IP address by specifying IP in your rate-based
statement's AggregateKeyType.
ip - Use the request's originating IP address as an aggregate key. Each distinct IP address contributes to
the aggregation instance.
When you specify an IP or forwarded IP in the custom key settings, you must also specify at least one
other key to use. You can aggregate on only the IP address by specifying IP in your
rate-based statement's AggregateKeyType.
default RateBasedStatementCustomKey.Builder ip(Consumer<RateLimitIP.Builder> ip)
Use the request's originating IP address as an aggregate key. Each distinct IP address contributes to the aggregation instance.
When you specify an IP or forwarded IP in the custom key settings, you must also specify at least one other
key to use. You can aggregate on only the IP address by specifying IP in your rate-based
statement's AggregateKeyType.
RateLimitIP.Builder avoiding the need to
create one manually via RateLimitIP.builder().
When the Consumer completes, SdkBuilder.build() is called immediately and its result
is passed to ip(RateLimitIP).
ip - a consumer that will call methods on RateLimitIP.Builderip(RateLimitIP)RateBasedStatementCustomKey.Builder labelNamespace(RateLimitLabelNamespace labelNamespace)
Use the specified label namespace as an aggregate key. Each distinct fully qualified label name that has the specified label namespace contributes to the aggregation instance. If you use just one label namespace as your custom key, then each label name fully defines an aggregation instance.
This uses only labels that have been added to the request by rules that are evaluated before this rate-based rule in the web ACL.
For information about label namespaces and names, see Label syntax and naming requirements in the WAF Developer Guide.
labelNamespace - Use the specified label namespace as an aggregate key. Each distinct fully qualified label name that
has the specified label namespace contributes to the aggregation instance. If you use just one label
namespace as your custom key, then each label name fully defines an aggregation instance.
This uses only labels that have been added to the request by rules that are evaluated before this rate-based rule in the web ACL.
For information about label namespaces and names, see Label syntax and naming requirements in the WAF Developer Guide.
default RateBasedStatementCustomKey.Builder labelNamespace(Consumer<RateLimitLabelNamespace.Builder> labelNamespace)
Use the specified label namespace as an aggregate key. Each distinct fully qualified label name that has the specified label namespace contributes to the aggregation instance. If you use just one label namespace as your custom key, then each label name fully defines an aggregation instance.
This uses only labels that have been added to the request by rules that are evaluated before this rate-based rule in the web ACL.
For information about label namespaces and names, see Label syntax and naming requirements in the WAF Developer Guide.
This is a convenience method that creates an instance of theRateLimitLabelNamespace.Builder avoiding
the need to create one manually via RateLimitLabelNamespace.builder().
When the Consumer completes, SdkBuilder.build() is called immediately
and its result is passed to labelNamespace(RateLimitLabelNamespace).
labelNamespace - a consumer that will call methods on RateLimitLabelNamespace.BuilderlabelNamespace(RateLimitLabelNamespace)RateBasedStatementCustomKey.Builder uriPath(RateLimitUriPath uriPath)
Use the request's URI path as an aggregate key. Each distinct URI path contributes to the aggregation instance. If you use just the URI path as your custom key, then each URI path fully defines an aggregation instance.
uriPath - Use the request's URI path as an aggregate key. Each distinct URI path contributes to the aggregation
instance. If you use just the URI path as your custom key, then each URI path fully defines an
aggregation instance.default RateBasedStatementCustomKey.Builder uriPath(Consumer<RateLimitUriPath.Builder> uriPath)
Use the request's URI path as an aggregate key. Each distinct URI path contributes to the aggregation instance. If you use just the URI path as your custom key, then each URI path fully defines an aggregation instance.
This is a convenience method that creates an instance of theRateLimitUriPath.Builder avoiding the
need to create one manually via RateLimitUriPath.builder().
When the Consumer completes, SdkBuilder.build() is called immediately and its
result is passed to uriPath(RateLimitUriPath).
uriPath - a consumer that will call methods on RateLimitUriPath.BuilderuriPath(RateLimitUriPath)Copyright © 2023. All rights reserved.