public class AbstractAWSWAF extends Object implements AWSWAF
AWSWAF
. Convenient method forms pass
through to the corresponding overload that takes a request object, which
throws an UnsupportedOperationException
.Modifier and Type | Method and Description |
---|---|
CreateByteMatchSetResult |
createByteMatchSet(CreateByteMatchSetRequest request)
Creates a
ByteMatchSet . |
CreateIPSetResult |
createIPSet(CreateIPSetRequest request)
Creates an IPSet, which you use to specify which web requests you
want to allow or block based on the IP addresses that the requests
originate from.
|
CreateRuleResult |
createRule(CreateRuleRequest request)
Creates a
Rule , which contains the IPSet
objects, ByteMatchSet objects, and other predicates that
identify the requests that you want to block. |
CreateSizeConstraintSetResult |
createSizeConstraintSet(CreateSizeConstraintSetRequest request)
Creates a
SizeConstraintSet . |
CreateSqlInjectionMatchSetResult |
createSqlInjectionMatchSet(CreateSqlInjectionMatchSetRequest request)
Creates a SqlInjectionMatchSet, which you use to allow, block, or
count requests that contain snippets of SQL code in a specified part of
web requests.
|
CreateWebACLResult |
createWebACL(CreateWebACLRequest request)
Creates a
WebACL , which contains the Rules that
identify the CloudFront web requests that you want to allow, block, or
count. |
DeleteByteMatchSetResult |
deleteByteMatchSet(DeleteByteMatchSetRequest request)
Permanently deletes a ByteMatchSet.
|
DeleteIPSetResult |
deleteIPSet(DeleteIPSetRequest request)
Permanently deletes an IPSet.
|
DeleteRuleResult |
deleteRule(DeleteRuleRequest request)
Permanently deletes a Rule.
|
DeleteSizeConstraintSetResult |
deleteSizeConstraintSet(DeleteSizeConstraintSetRequest request)
Permanently deletes a SizeConstraintSet.
|
DeleteSqlInjectionMatchSetResult |
deleteSqlInjectionMatchSet(DeleteSqlInjectionMatchSetRequest request)
Permanently deletes a SqlInjectionMatchSet.
|
DeleteWebACLResult |
deleteWebACL(DeleteWebACLRequest request)
Permanently deletes a WebACL.
|
GetByteMatchSetResult |
getByteMatchSet(GetByteMatchSetRequest request)
Returns the ByteMatchSet specified by
ByteMatchSetId . |
ResponseMetadata |
getCachedResponseMetadata(AmazonWebServiceRequest request)
Returns additional metadata for a previously executed successful request,
typically used for debugging issues where a service isn't acting as
expected.
|
GetChangeTokenResult |
getChangeToken(GetChangeTokenRequest request)
When you want to create, update, or delete AWS WAF objects, get a change
token and include the change token in the create, update, or delete
request.
|
GetChangeTokenStatusResult |
getChangeTokenStatus(GetChangeTokenStatusRequest request)
Returns the status of a
ChangeToken that you got by calling
GetChangeToken. |
GetIPSetResult |
getIPSet(GetIPSetRequest request)
Returns the IPSet that is specified by
IPSetId . |
GetRuleResult |
getRule(GetRuleRequest request)
|
GetSampledRequestsResult |
getSampledRequests(GetSampledRequestsRequest request)
Gets detailed information about a specified number of requests--a
sample--that AWS WAF randomly selects from among the first 5,000 requests
that your AWS resource received during a time range that you choose.
|
GetSizeConstraintSetResult |
getSizeConstraintSet(GetSizeConstraintSetRequest request)
Returns the SizeConstraintSet specified by
SizeConstraintSetId . |
GetSqlInjectionMatchSetResult |
getSqlInjectionMatchSet(GetSqlInjectionMatchSetRequest request)
Returns the SqlInjectionMatchSet that is specified by
SqlInjectionMatchSetId . |
GetWebACLResult |
getWebACL(GetWebACLRequest request)
Returns the WebACL that is specified by
WebACLId . |
ListByteMatchSetsResult |
listByteMatchSets(ListByteMatchSetsRequest request)
Returns an array of ByteMatchSetSummary objects.
|
ListIPSetsResult |
listIPSets(ListIPSetsRequest request)
Returns an array of IPSetSummary objects in the response.
|
ListRulesResult |
listRules(ListRulesRequest request)
Returns an array of RuleSummary objects.
|
ListSizeConstraintSetsResult |
listSizeConstraintSets(ListSizeConstraintSetsRequest request)
Returns an array of SizeConstraintSetSummary objects.
|
ListSqlInjectionMatchSetsResult |
listSqlInjectionMatchSets(ListSqlInjectionMatchSetsRequest request)
Returns an array of SqlInjectionMatchSet objects.
|
ListWebACLsResult |
listWebACLs(ListWebACLsRequest request)
Returns an array of WebACLSummary objects in the response.
|
void |
setEndpoint(String endpoint)
Overrides the default endpoint for this client
("https://waf.amazonaws.com/").
|
void |
setRegion(Region region)
An alternative to
AWSWAF.setEndpoint(String) , sets the regional
endpoint for this client's service calls. |
void |
shutdown()
Shuts down this client object, releasing any resources that might be held
open.
|
UpdateByteMatchSetResult |
updateByteMatchSet(UpdateByteMatchSetRequest request)
Inserts or deletes ByteMatchTuple objects (filters) in a
ByteMatchSet.
|
UpdateIPSetResult |
updateIPSet(UpdateIPSetRequest request)
Inserts or deletes IPSetDescriptor objects in an
IPSet . |
UpdateRuleResult |
updateRule(UpdateRuleRequest request)
Inserts or deletes Predicate objects in a
Rule . |
UpdateSizeConstraintSetResult |
updateSizeConstraintSet(UpdateSizeConstraintSetRequest request)
Inserts or deletes SizeConstraint objects (filters) in a
SizeConstraintSet.
|
UpdateSqlInjectionMatchSetResult |
updateSqlInjectionMatchSet(UpdateSqlInjectionMatchSetRequest request)
Inserts or deletes SqlInjectionMatchTuple objects (filters) in a
SqlInjectionMatchSet.
|
UpdateWebACLResult |
updateWebACL(UpdateWebACLRequest request)
Inserts or deletes ActivatedRule objects in a
WebACL . |
public void setEndpoint(String endpoint)
AWSWAF
Callers can pass in just the endpoint (ex: "waf.amazonaws.com/") or a
full URL, including the protocol (ex: "https://waf.amazonaws.com/"). If
the protocol is not specified here, the default protocol from this
client's ClientConfiguration
will be used, which by default is
HTTPS.
For more information on using AWS regions with the AWS SDK for Java, and a complete list of all available endpoints for all AWS services, see: http://developer.amazonwebservices.com/connect/entry.jspa?externalID= 3912
This method is not threadsafe. An endpoint should be configured when the client is created and before any service requests are made. Changing it afterwards creates inevitable race conditions for any service requests in transit or retrying.
setEndpoint
in interface AWSWAF
endpoint
- The endpoint (ex: "waf.amazonaws.com/") or a full URL, including
the protocol (ex: "https://waf.amazonaws.com/") of the region
specific AWS endpoint this client will communicate with.public void setRegion(Region region)
AWSWAF
AWSWAF.setEndpoint(String)
, sets the regional
endpoint for this client's service calls. Callers can use this method to
control which AWS region they want to work with.
By default, all service endpoints in all regions use the https protocol.
To use http instead, specify it in the ClientConfiguration
supplied at construction.
This method is not threadsafe. A region should be configured when the client is created and before any service requests are made. Changing it afterwards creates inevitable race conditions for any service requests in transit or retrying.
setRegion
in interface AWSWAF
region
- The region this client will communicate with. See
Region.getRegion(com.amazonaws.regions.Regions)
for
accessing a given region. Must not be null and must be a region
where the service is available.Region.getRegion(com.amazonaws.regions.Regions)
,
Region.createClient(Class,
com.amazonaws.auth.AWSCredentialsProvider, ClientConfiguration)
,
Region.isServiceSupported(String)
public CreateByteMatchSetResult createByteMatchSet(CreateByteMatchSetRequest request)
AWSWAF
Creates a ByteMatchSet
. You then use
UpdateByteMatchSet to identify the part of a web request that you
want AWS WAF to inspect, such as the values of the
User-Agent
header or the query string. For example, you can
create a ByteMatchSet
that matches any requests with
User-Agent
headers that contain the string
BadBot
. You can then configure AWS WAF to reject those
requests.
To create and configure a ByteMatchSet
, perform the
following steps:
ChangeToken
parameter of a
CreateByteMatchSet
request.CreateByteMatchSet
request.GetChangeToken
to get the change token that you
provide in the ChangeToken
parameter of an
UpdateByteMatchSet
request.For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide.
createByteMatchSet
in interface AWSWAF
public CreateIPSetResult createIPSet(CreateIPSetRequest request)
AWSWAF
Creates an IPSet, which you use to specify which web requests you
want to allow or block based on the IP addresses that the requests
originate from. For example, if you're receiving a lot of requests from
one or more individual IP addresses or one or more ranges of IP addresses
and you want to block the requests, you can create an IPSet
that contains those IP addresses and then configure AWS WAF to block the
requests.
To create and configure an IPSet
, perform the following
steps:
ChangeToken
parameter of a CreateIPSet
request.CreateIPSet
request.GetChangeToken
to get the change token that you
provide in the ChangeToken
parameter of an
UpdateIPSet request.UpdateIPSet
request to specify the IP
addresses that you want AWS WAF to watch for.For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide.
createIPSet
in interface AWSWAF
public CreateRuleResult createRule(CreateRuleRequest request)
AWSWAF
Creates a Rule
, which contains the IPSet
objects, ByteMatchSet
objects, and other predicates that
identify the requests that you want to block. If you add more than one
predicate to a Rule
, a request must match all of the
specifications to be allowed or blocked. For example, suppose you add the
following to a Rule
:
IPSet
that matches the IP address
192.0.2.44/32
ByteMatchSet
that matches BadBot
in the
User-Agent
header
You then add the Rule
to a WebACL
and specify
that you want to blocks requests that satisfy the Rule
. For
a request to be blocked, it must come from the IP address 192.0.2.44
and the User-Agent
header in the request must contain
the value BadBot
.
To create and configure a Rule
, perform the following steps:
Rule
. For more information, see CreateByteMatchSet,
CreateIPSet, and CreateSqlInjectionMatchSet.ChangeToken
parameter of a CreateRule
request.CreateRule
request.GetChangeToken
to get the change token that you
provide in the ChangeToken
parameter of an UpdateRule
request.UpdateRule
request to specify the predicates
that you want to include in the Rule
.WebACL
that contains the
Rule
. For more information, see CreateWebACL.For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide.
createRule
in interface AWSWAF
public CreateSizeConstraintSetResult createSizeConstraintSet(CreateSizeConstraintSetRequest request)
AWSWAF
Creates a SizeConstraintSet
. You then use
UpdateSizeConstraintSet to identify the part of a web request that
you want AWS WAF to check for length, such as the length of the
User-Agent
header or the length of the query string. For
example, you can create a SizeConstraintSet
that matches any
requests that have a query string that is longer than 100 bytes. You can
then configure AWS WAF to reject those requests.
To create and configure a SizeConstraintSet
, perform the
following steps:
ChangeToken
parameter of a
CreateSizeConstraintSet
request.CreateSizeConstraintSet
request.GetChangeToken
to get the change token that you
provide in the ChangeToken
parameter of an
UpdateSizeConstraintSet
request.For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide.
createSizeConstraintSet
in interface AWSWAF
public CreateSqlInjectionMatchSetResult createSqlInjectionMatchSet(CreateSqlInjectionMatchSetRequest request)
AWSWAF
Creates a SqlInjectionMatchSet, which you use to allow, block, or count requests that contain snippets of SQL code in a specified part of web requests. AWS WAF searches for character sequences that are likely to be malicious strings.
To create and configure a SqlInjectionMatchSet
, perform the
following steps:
ChangeToken
parameter of a
CreateSqlInjectionMatchSet
request.CreateSqlInjectionMatchSet
request.GetChangeToken
to get the change token that you
provide in the ChangeToken
parameter of an
UpdateSqlInjectionMatchSet request.For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide.
createSqlInjectionMatchSet
in interface AWSWAF
request
- A request to create a SqlInjectionMatchSet.public CreateWebACLResult createWebACL(CreateWebACLRequest request)
AWSWAF
Creates a WebACL
, which contains the Rules
that
identify the CloudFront web requests that you want to allow, block, or
count. AWS WAF evaluates Rules
in order based on the value
of Priority
for each Rule
.
You also specify a default action, either ALLOW
or
BLOCK
. If a web request doesn't match any of the
Rules
in a WebACL
, AWS WAF responds to the
request with the default action.
To create and configure a WebACL
, perform the following
steps:
ByteMatchSet
objects and other
predicates that you want to include in 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.ChangeToken
parameter of a CreateWebACL
request.CreateWebACL
request.GetChangeToken
to get the change token that you
provide in the ChangeToken
parameter of an
UpdateWebACL request.Rules
that you want to include in the WebACL
,
to specify the default action, and to associate the WebACL
with a CloudFront distribution.For more information about how to use the AWS WAF API, see the AWS WAF Developer Guide.
createWebACL
in interface AWSWAF
public DeleteByteMatchSetResult deleteByteMatchSet(DeleteByteMatchSetRequest request)
AWSWAF
Permanently deletes a ByteMatchSet. You can't delete a
ByteMatchSet
if it's still used in any Rules
or
if it still includes any ByteMatchTuple objects (any filters).
If you just want to remove a ByteMatchSet
from a
Rule
, use UpdateRule.
To permanently delete a ByteMatchSet
, perform the following
steps:
ByteMatchSet
to remove filters, if any. For
more information, see UpdateByteMatchSet.ChangeToken
parameter of a
DeleteByteMatchSet
request.DeleteByteMatchSet
request.deleteByteMatchSet
in interface AWSWAF
public DeleteIPSetResult deleteIPSet(DeleteIPSetRequest request)
AWSWAF
Permanently deletes an IPSet. You can't delete an
IPSet
if it's still used in any Rules
or if it
still includes any IP addresses.
If you just want to remove an IPSet
from a Rule
, use UpdateRule.
To permanently delete an IPSet
from AWS WAF, perform the
following steps:
IPSet
to remove IP address ranges, if any.
For more information, see UpdateIPSet.ChangeToken
parameter of a DeleteIPSet
request.DeleteIPSet
request.deleteIPSet
in interface AWSWAF
public DeleteRuleResult deleteRule(DeleteRuleRequest request)
AWSWAF
Permanently deletes a Rule. You can't delete a Rule
if it's still used in any WebACL
objects or if it still
includes any predicates, such as ByteMatchSet
objects.
If you just want to remove a Rule
from a WebACL
, use UpdateWebACL.
To permanently delete a Rule
from AWS WAF, perform the
following steps:
Rule
to remove predicates, if any. For more
information, see UpdateRule.ChangeToken
parameter of a DeleteRule
request.DeleteRule
request.deleteRule
in interface AWSWAF
public DeleteSizeConstraintSetResult deleteSizeConstraintSet(DeleteSizeConstraintSetRequest request)
AWSWAF
Permanently deletes a SizeConstraintSet. You can't delete a
SizeConstraintSet
if it's still used in any
Rules
or if it still includes any SizeConstraint
objects (any filters).
If you just want to remove a SizeConstraintSet
from a
Rule
, use UpdateRule.
To permanently delete a SizeConstraintSet
, perform the
following steps:
SizeConstraintSet
to remove filters, if any.
For more information, see UpdateSizeConstraintSet.ChangeToken
parameter of a
DeleteSizeConstraintSet
request.DeleteSizeConstraintSet
request.deleteSizeConstraintSet
in interface AWSWAF
public DeleteSqlInjectionMatchSetResult deleteSqlInjectionMatchSet(DeleteSqlInjectionMatchSetRequest request)
AWSWAF
Permanently deletes a SqlInjectionMatchSet. You can't delete a
SqlInjectionMatchSet
if it's still used in any
Rules
or if it still contains any
SqlInjectionMatchTuple objects.
If you just want to remove a SqlInjectionMatchSet
from a
Rule
, use UpdateRule.
To permanently delete a SqlInjectionMatchSet
from AWS WAF,
perform the following steps:
SqlInjectionMatchSet
to remove filters, if
any. For more information, see UpdateSqlInjectionMatchSet.ChangeToken
parameter of a
DeleteSqlInjectionMatchSet
request.DeleteSqlInjectionMatchSet
request.deleteSqlInjectionMatchSet
in interface AWSWAF
request
- A request to delete a SqlInjectionMatchSet from AWS WAF.public DeleteWebACLResult deleteWebACL(DeleteWebACLRequest request)
AWSWAF
Permanently deletes a WebACL. You can't delete a
WebACL
if it still contains any Rules
.
To delete a WebACL
, perform the following steps:
WebACL
to remove Rules
, if any.
For more information, see UpdateWebACL.ChangeToken
parameter of a DeleteWebACL
request.DeleteWebACL
request.deleteWebACL
in interface AWSWAF
public GetByteMatchSetResult getByteMatchSet(GetByteMatchSetRequest request)
AWSWAF
Returns the ByteMatchSet specified by ByteMatchSetId
.
getByteMatchSet
in interface AWSWAF
public GetChangeTokenResult getChangeToken(GetChangeTokenRequest request)
AWSWAF
When you want to create, update, or delete AWS WAF objects, get a change token and include the change token in the create, update, or delete request. Change tokens ensure that your application doesn't submit conflicting requests to AWS WAF.
Each create, update, or delete request must use a unique change token. If
your application submits a GetChangeToken
request and then
submits a second GetChangeToken
request before submitting a
create, update, or delete request, the second GetChangeToken
request returns the same value as the first GetChangeToken
request.
When you use a change token in a create, update, or delete request, the
status of the change token changes to PENDING
, which
indicates that AWS WAF is propagating the change to all AWS WAF servers.
Use GetChangeTokenStatus
to determine the status of your
change token.
getChangeToken
in interface AWSWAF
public GetChangeTokenStatusResult getChangeTokenStatus(GetChangeTokenStatusRequest request)
AWSWAF
Returns the status of a ChangeToken
that you got by calling
GetChangeToken. ChangeTokenStatus
is one of the
following values:
PROVISIONED
: You requested the change token by calling
GetChangeToken
, but you haven't used it yet in a call to
create, update, or delete an AWS WAF object.PENDING
: AWS WAF is propagating the create, update, or
delete request to all AWS WAF servers.IN_SYNC
: Propagation is complete.getChangeTokenStatus
in interface AWSWAF
public GetIPSetResult getIPSet(GetIPSetRequest request)
AWSWAF
Returns the IPSet that is specified by IPSetId
.
public GetRuleResult getRule(GetRuleRequest request)
AWSWAF
Returns the Rule that is specified by the RuleId
that
you included in the GetRule
request.
public GetSampledRequestsResult getSampledRequests(GetSampledRequestsRequest request)
AWSWAF
Gets detailed information about a specified number of requests--a sample--that AWS WAF randomly selects from among the first 5,000 requests that your AWS resource received during a time range that you choose. You can specify a sample size of up to 100 requests, and you can specify any time range in the previous three hours.
GetSampledRequests
returns a time range, which is usually
the time range that you specified. However, if your resource (such as a
CloudFront distribution) received 5,000 requests before the specified
time range elapsed, GetSampledRequests
returns an updated
time range. This new time range indicates the actual period during which
AWS WAF selected the requests in the sample.
getSampledRequests
in interface AWSWAF
public GetSizeConstraintSetResult getSizeConstraintSet(GetSizeConstraintSetRequest request)
AWSWAF
Returns the SizeConstraintSet specified by
SizeConstraintSetId
.
getSizeConstraintSet
in interface AWSWAF
public GetSqlInjectionMatchSetResult getSqlInjectionMatchSet(GetSqlInjectionMatchSetRequest request)
AWSWAF
Returns the SqlInjectionMatchSet that is specified by
SqlInjectionMatchSetId
.
getSqlInjectionMatchSet
in interface AWSWAF
request
- A request to get a SqlInjectionMatchSet.public GetWebACLResult getWebACL(GetWebACLRequest request)
AWSWAF
Returns the WebACL that is specified by WebACLId
.
public ListByteMatchSetsResult listByteMatchSets(ListByteMatchSetsRequest request)
AWSWAF
Returns an array of ByteMatchSetSummary objects.
listByteMatchSets
in interface AWSWAF
public ListIPSetsResult listIPSets(ListIPSetsRequest request)
AWSWAF
Returns an array of IPSetSummary objects in the response.
listIPSets
in interface AWSWAF
public ListRulesResult listRules(ListRulesRequest request)
AWSWAF
Returns an array of RuleSummary objects.
public ListSizeConstraintSetsResult listSizeConstraintSets(ListSizeConstraintSetsRequest request)
AWSWAF
Returns an array of SizeConstraintSetSummary objects.
listSizeConstraintSets
in interface AWSWAF
public ListSqlInjectionMatchSetsResult listSqlInjectionMatchSets(ListSqlInjectionMatchSetsRequest request)
AWSWAF
Returns an array of SqlInjectionMatchSet objects.
listSqlInjectionMatchSets
in interface AWSWAF
request
- A request to list the SqlInjectionMatchSet objects created
by the current AWS account.public ListWebACLsResult listWebACLs(ListWebACLsRequest request)
AWSWAF
Returns an array of WebACLSummary objects in the response.
listWebACLs
in interface AWSWAF
public UpdateByteMatchSetResult updateByteMatchSet(UpdateByteMatchSetRequest request)
AWSWAF
Inserts or deletes ByteMatchTuple objects (filters) in a
ByteMatchSet. For each ByteMatchTuple
object, you
specify the following values:
ByteMatchSetUpdate
object, you delete the existing
object and add a new one.User-Agent
header.TargetString
in the ByteMatchTuple data type.
For example, you can add a ByteMatchSetUpdate
object that
matches web requests in which User-Agent
headers contain the
string BadBot
. You can then configure AWS WAF to block those
requests.
To create and configure a ByteMatchSet
, perform the
following steps:
ByteMatchSet.
For more information, see
CreateByteMatchSet.ChangeToken
parameter of an
UpdateByteMatchSet
request.UpdateByteMatchSet
request to specify the part
of the request that you want AWS WAF to inspect (for example, the header
or the URI) and the value that you want AWS WAF to watch for.For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide.
updateByteMatchSet
in interface AWSWAF
public UpdateIPSetResult updateIPSet(UpdateIPSetRequest request)
AWSWAF
Inserts or deletes IPSetDescriptor objects in an
IPSet
. For each IPSetDescriptor
object, you
specify the following values:
IPSetDescriptor
object, you delete the existing
object and add a new one.IPv4
.192.0.2.0/24
(for the range of IP addresses from
192.0.2.0
to 192.0.2.255
) or
192.0.2.44/32
(for the individual IP address
192.0.2.44
).AWS WAF supports /8, /16, /24, and /32 IP address ranges. For more information about CIDR notation, see the Wikipedia entry Classless Inter-Domain Routing.
You use an IPSet
to specify which web requests you want to
allow or block based on the IP addresses that the requests originated
from. For example, if you're receiving a lot of requests from one or a
small number of IP addresses and you want to block the requests, you can
create an IPSet
that specifies those IP addresses, and then
configure AWS WAF to block the requests.
To create and configure an IPSet
, perform the following
steps:
ChangeToken
parameter of an UpdateIPSet request.UpdateIPSet
request to specify the IP
addresses that you want AWS WAF to watch for.
When you update an IPSet
, you specify the IP addresses that
you want to add and/or the IP addresses that you want to delete. If you
want to change an IP address, you delete the existing IP address and add
the new one.
For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide.
updateIPSet
in interface AWSWAF
public UpdateRuleResult updateRule(UpdateRuleRequest request)
AWSWAF
Inserts or deletes Predicate objects in a Rule
. Each
Predicate
object identifies a predicate, such as a
ByteMatchSet or an IPSet, that specifies the web requests
that you want to allow, block, or count. If you add more than one
predicate to a Rule
, a request must match all of the
specifications to be allowed, blocked, or counted. For example, suppose
you add the following to a Rule
:
ByteMatchSet
that matches the value
BadBot
in the User-Agent
headerIPSet
that matches the IP address
192.0.2.44
You then add the Rule
to a WebACL
and specify
that you want to block requests that satisfy the Rule
. For a
request to be blocked, the User-Agent
header in the request
must contain the value BadBot
and the request must
originate from the IP address 192.0.2.44.
To create and configure a Rule
, perform the following steps:
Rule
.Rule
. See CreateRule.GetChangeToken
to get the change token that you
provide in the ChangeToken
parameter of an UpdateRule
request.UpdateRule
request to add predicates to the
Rule
.WebACL
that contains the
Rule
. See CreateWebACL.
If you want to replace one ByteMatchSet
or
IPSet
with another, you delete the existing one and add the
new one.
For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide.
updateRule
in interface AWSWAF
public UpdateSizeConstraintSetResult updateSizeConstraintSet(UpdateSizeConstraintSetRequest request)
AWSWAF
Inserts or deletes SizeConstraint objects (filters) in a
SizeConstraintSet. For each SizeConstraint
object,
you specify the following values:
SizeConstraintSetUpdate
object, you delete the
existing object and add a new one.User-Agent
header.8192
bytes of your request
to AWS WAF.ComparisonOperator
used for evaluating the selected
part of the request against the specified Size
, such as
equals, greater than, less than, and so on.
For example, you can add a SizeConstraintSetUpdate
object
that matches web requests in which the length of the
User-Agent
header is greater than 100 bytes. You can then
configure AWS WAF to block those requests.
To create and configure a SizeConstraintSet
, perform the
following steps:
SizeConstraintSet.
For more information, see
CreateSizeConstraintSet.ChangeToken
parameter of an
UpdateSizeConstraintSet
request.UpdateSizeConstraintSet
request to specify the
part of the request that you want AWS WAF to inspect (for example, the
header or the URI) and the value that you want AWS WAF to watch for.For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide.
updateSizeConstraintSet
in interface AWSWAF
public UpdateSqlInjectionMatchSetResult updateSqlInjectionMatchSet(UpdateSqlInjectionMatchSetRequest request)
AWSWAF
Inserts or deletes SqlInjectionMatchTuple objects (filters) in a
SqlInjectionMatchSet. For each SqlInjectionMatchTuple
object, you specify the following values:
Action
: Whether to insert the object into or delete the
object from the array. To change a SqlInjectionMatchTuple
,
you delete the existing object and add a new one.FieldToMatch
: The part of web requests that you want AWS
WAF to inspect and, if you want AWS WAF to inspect a header, the name of
the header.TextTransformation
: Which text transformation, if any,
to perform on the web request before inspecting the request for snippets
of malicious SQL code.
You use SqlInjectionMatchSet
objects to specify which
CloudFront requests you want to allow, block, or count. For example, if
you're receiving requests that contain snippets of SQL code in the query
string and you want to block the requests, you can create a
SqlInjectionMatchSet
with the applicable settings, and then
configure AWS WAF to block the requests.
To create and configure a SqlInjectionMatchSet
, perform the
following steps:
ChangeToken
parameter of an UpdateIPSet request.UpdateSqlInjectionMatchSet
request to specify
the parts of web requests that you want AWS WAF to inspect for snippets
of SQL code.For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide.
updateSqlInjectionMatchSet
in interface AWSWAF
request
- A request to update a SqlInjectionMatchSet.public UpdateWebACLResult updateWebACL(UpdateWebACLRequest request)
AWSWAF
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 and/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 of 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.WebACL
.
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.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.For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide.
updateWebACL
in interface AWSWAF
public void shutdown()
AWSWAF
public ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request)
AWSWAF
Response metadata is only cached for a limited period of time, so if you need to access this extra diagnostic information for an executed request, you should use this method to retrieve it as soon as possible after executing a request.
getCachedResponseMetadata
in interface AWSWAF
request
- The originally executed request.Copyright © 2013 Amazon Web Services, Inc. All Rights Reserved.