@Generated(value="com.amazonaws:aws-java-sdk-code-generator") public class AbstractAWSWAFV2 extends Object implements AWSWAFV2
AWSWAFV2
. Convenient method forms pass through to the corresponding overload that
takes a request object, which throws an UnsupportedOperationException
.ENDPOINT_PREFIX
Modifier and Type | Method and Description |
---|---|
AssociateWebACLResult |
associateWebACL(AssociateWebACLRequest request)
Associates a Web ACL with a regional application resource, to protect the resource.
|
CheckCapacityResult |
checkCapacity(CheckCapacityRequest request)
Returns the web ACL capacity unit (WCU) requirements for a specified scope and set of rules.
|
CreateIPSetResult |
createIPSet(CreateIPSetRequest request)
Creates an IPSet, which you use to identify web requests that originate from specific IP addresses or
ranges of IP addresses.
|
CreateRegexPatternSetResult |
createRegexPatternSet(CreateRegexPatternSetRequest request)
Creates a RegexPatternSet, which you reference in a RegexPatternSetReferenceStatement, to have AWS
WAF inspect a web request component for the specified patterns.
|
CreateRuleGroupResult |
createRuleGroup(CreateRuleGroupRequest request)
Creates a RuleGroup per the specifications provided.
|
CreateWebACLResult |
createWebACL(CreateWebACLRequest request)
Creates a WebACL per the specifications provided.
|
DeleteFirewallManagerRuleGroupsResult |
deleteFirewallManagerRuleGroups(DeleteFirewallManagerRuleGroupsRequest request)
Deletes all rule groups that are managed by AWS Firewall Manager for the specified web ACL.
|
DeleteIPSetResult |
deleteIPSet(DeleteIPSetRequest request)
Deletes the specified IPSet.
|
DeleteLoggingConfigurationResult |
deleteLoggingConfiguration(DeleteLoggingConfigurationRequest request)
Deletes the LoggingConfiguration from the specified web ACL.
|
DeletePermissionPolicyResult |
deletePermissionPolicy(DeletePermissionPolicyRequest request)
Permanently deletes an IAM policy from the specified rule group.
|
DeleteRegexPatternSetResult |
deleteRegexPatternSet(DeleteRegexPatternSetRequest request)
Deletes the specified RegexPatternSet.
|
DeleteRuleGroupResult |
deleteRuleGroup(DeleteRuleGroupRequest request)
Deletes the specified RuleGroup.
|
DeleteWebACLResult |
deleteWebACL(DeleteWebACLRequest request)
Deletes the specified WebACL.
|
DescribeManagedRuleGroupResult |
describeManagedRuleGroup(DescribeManagedRuleGroupRequest request)
Provides high-level information for a managed rule group, including descriptions of the rules.
|
DisassociateWebACLResult |
disassociateWebACL(DisassociateWebACLRequest request)
Disassociates a Web ACL from a regional application resource.
|
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.
|
GetIPSetResult |
getIPSet(GetIPSetRequest request)
Retrieves the specified IPSet.
|
GetLoggingConfigurationResult |
getLoggingConfiguration(GetLoggingConfigurationRequest request)
Returns the LoggingConfiguration for the specified web ACL.
|
GetPermissionPolicyResult |
getPermissionPolicy(GetPermissionPolicyRequest request)
Returns the IAM policy that is attached to the specified rule group.
|
GetRateBasedStatementManagedKeysResult |
getRateBasedStatementManagedKeys(GetRateBasedStatementManagedKeysRequest request)
Retrieves the keys that are currently blocked by a rate-based rule.
|
GetRegexPatternSetResult |
getRegexPatternSet(GetRegexPatternSetRequest request)
Retrieves the specified RegexPatternSet.
|
GetRuleGroupResult |
getRuleGroup(GetRuleGroupRequest request)
Retrieves the specified RuleGroup.
|
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.
|
GetWebACLResult |
getWebACL(GetWebACLRequest request)
Retrieves the specified WebACL.
|
GetWebACLForResourceResult |
getWebACLForResource(GetWebACLForResourceRequest request)
Retrieves the WebACL for the specified resource.
|
ListAvailableManagedRuleGroupsResult |
listAvailableManagedRuleGroups(ListAvailableManagedRuleGroupsRequest request)
Retrieves an array of managed rule groups that are available for you to use.
|
ListIPSetsResult |
listIPSets(ListIPSetsRequest request)
Retrieves an array of IPSetSummary objects for the IP sets that you manage.
|
ListLoggingConfigurationsResult |
listLoggingConfigurations(ListLoggingConfigurationsRequest request)
Retrieves an array of your LoggingConfiguration objects.
|
ListRegexPatternSetsResult |
listRegexPatternSets(ListRegexPatternSetsRequest request)
Retrieves an array of RegexPatternSetSummary objects for the regex pattern sets that you manage.
|
ListResourcesForWebACLResult |
listResourcesForWebACL(ListResourcesForWebACLRequest request)
Retrieves an array of the Amazon Resource Names (ARNs) for the regional resources that are associated with the
specified web ACL.
|
ListRuleGroupsResult |
listRuleGroups(ListRuleGroupsRequest request)
Retrieves an array of RuleGroupSummary objects for the rule groups that you manage.
|
ListTagsForResourceResult |
listTagsForResource(ListTagsForResourceRequest request)
Retrieves the TagInfoForResource for the specified resource.
|
ListWebACLsResult |
listWebACLs(ListWebACLsRequest request)
Retrieves an array of WebACLSummary objects for the web ACLs that you manage.
|
PutLoggingConfigurationResult |
putLoggingConfiguration(PutLoggingConfigurationRequest request)
Enables the specified LoggingConfiguration, to start logging from a web ACL, according to the
configuration provided.
|
PutPermissionPolicyResult |
putPermissionPolicy(PutPermissionPolicyRequest request)
Attaches an IAM policy to the specified resource.
|
void |
shutdown()
Shuts down this client object, releasing any resources that might be held open.
|
TagResourceResult |
tagResource(TagResourceRequest request)
Associates tags with the specified AWS resource.
|
UntagResourceResult |
untagResource(UntagResourceRequest request)
Disassociates tags from an AWS resource.
|
UpdateIPSetResult |
updateIPSet(UpdateIPSetRequest request)
Updates the specified IPSet.
|
UpdateRegexPatternSetResult |
updateRegexPatternSet(UpdateRegexPatternSetRequest request)
Updates the specified RegexPatternSet.
|
UpdateRuleGroupResult |
updateRuleGroup(UpdateRuleGroupRequest request)
Updates the specified RuleGroup.
|
UpdateWebACLResult |
updateWebACL(UpdateWebACLRequest request)
Updates the specified WebACL.
|
public AssociateWebACLResult associateWebACL(AssociateWebACLRequest request)
AWSWAFV2
Associates a Web ACL with a regional application resource, to protect the resource. A regional application can be an Application Load Balancer (ALB), an API Gateway REST API, or an AppSync GraphQL API.
For AWS CloudFront, don't use this call. Instead, use your CloudFront distribution configuration. To associate a
Web ACL, in the CloudFront call UpdateDistribution
, set the web ACL ID to the Amazon Resource Name
(ARN) of the Web ACL. For information, see UpdateDistribution.
associateWebACL
in interface AWSWAFV2
public CheckCapacityResult checkCapacity(CheckCapacityRequest request)
AWSWAFV2
Returns the web ACL capacity unit (WCU) requirements for a specified scope and set of rules. You can use this to check the capacity requirements for the rules you want to use in a RuleGroup or WebACL.
AWS WAF uses WCUs to calculate and control the operating resources that are used to run your rules, rule groups, and web ACLs. AWS WAF calculates capacity differently for each rule type, to reflect the relative cost of each rule. Simple rules that cost little to run use fewer WCUs than more complex rules that use more processing power. Rule group capacity is fixed at creation, which helps users plan their web ACL WCU usage when they use a rule group. The WCU limit for web ACLs is 1,500.
checkCapacity
in interface AWSWAFV2
public CreateIPSetResult createIPSet(CreateIPSetRequest request)
AWSWAFV2
Creates an IPSet, which you use to identify web requests that originate from specific IP addresses or ranges of IP addresses. For example, if you're receiving a lot of requests from a ranges of IP addresses, you can configure AWS WAF to block them using an IPSet that lists those IP addresses.
createIPSet
in interface AWSWAFV2
public CreateRegexPatternSetResult createRegexPatternSet(CreateRegexPatternSetRequest request)
AWSWAFV2
Creates a RegexPatternSet, which you reference in a RegexPatternSetReferenceStatement, to have AWS WAF inspect a web request component for the specified patterns.
createRegexPatternSet
in interface AWSWAFV2
public CreateRuleGroupResult createRuleGroup(CreateRuleGroupRequest request)
AWSWAFV2
Creates a RuleGroup per the specifications provided.
A rule group defines a collection of rules to inspect and control web requests that you can use in a WebACL. When you create a rule group, you define an immutable capacity limit. If you update a rule group, you must stay within the capacity. This allows others to reuse the rule group with confidence in its capacity requirements.
createRuleGroup
in interface AWSWAFV2
public CreateWebACLResult createWebACL(CreateWebACLRequest request)
AWSWAFV2
Creates a WebACL per the specifications provided.
A Web ACL defines a collection of rules to use to inspect and control web requests. Each rule has an action defined (allow, block, or count) for requests that match the statement of the rule. In the Web ACL, you assign a default action to take (allow, block) for any request that does not match any of the rules. The rules in a Web ACL can be a combination of the types Rule, RuleGroup, and managed rule group. You can associate a Web ACL with one or more AWS resources to protect. The resources can be Amazon CloudFront, an Amazon API Gateway REST API, an Application Load Balancer, or an AWS AppSync GraphQL API.
createWebACL
in interface AWSWAFV2
public DeleteFirewallManagerRuleGroupsResult deleteFirewallManagerRuleGroups(DeleteFirewallManagerRuleGroupsRequest request)
AWSWAFV2
Deletes all rule groups that are managed by AWS Firewall Manager for the specified web ACL.
You can only use this if ManagedByFirewallManager
is false in the specified WebACL.
deleteFirewallManagerRuleGroups
in interface AWSWAFV2
public DeleteIPSetResult deleteIPSet(DeleteIPSetRequest request)
AWSWAFV2
Deletes the specified IPSet.
deleteIPSet
in interface AWSWAFV2
public DeleteLoggingConfigurationResult deleteLoggingConfiguration(DeleteLoggingConfigurationRequest request)
AWSWAFV2
Deletes the LoggingConfiguration from the specified web ACL.
deleteLoggingConfiguration
in interface AWSWAFV2
public DeletePermissionPolicyResult deletePermissionPolicy(DeletePermissionPolicyRequest request)
AWSWAFV2
Permanently deletes an IAM policy from the specified rule group.
You must be the owner of the rule group to perform this operation.
deletePermissionPolicy
in interface AWSWAFV2
public DeleteRegexPatternSetResult deleteRegexPatternSet(DeleteRegexPatternSetRequest request)
AWSWAFV2
Deletes the specified RegexPatternSet.
deleteRegexPatternSet
in interface AWSWAFV2
public DeleteRuleGroupResult deleteRuleGroup(DeleteRuleGroupRequest request)
AWSWAFV2
Deletes the specified RuleGroup.
deleteRuleGroup
in interface AWSWAFV2
public DeleteWebACLResult deleteWebACL(DeleteWebACLRequest request)
AWSWAFV2
Deletes the specified WebACL.
You can only use this if ManagedByFirewallManager
is false in the specified WebACL.
deleteWebACL
in interface AWSWAFV2
public DescribeManagedRuleGroupResult describeManagedRuleGroup(DescribeManagedRuleGroupRequest request)
AWSWAFV2
Provides high-level information for a managed rule group, including descriptions of the rules.
describeManagedRuleGroup
in interface AWSWAFV2
public DisassociateWebACLResult disassociateWebACL(DisassociateWebACLRequest request)
AWSWAFV2
Disassociates a Web ACL from a regional application resource. A regional application can be an Application Load Balancer (ALB), an API Gateway REST API, or an AppSync GraphQL API.
For AWS CloudFront, don't use this call. Instead, use your CloudFront distribution configuration. To disassociate
a Web ACL, provide an empty web ACL ID in the CloudFront call UpdateDistribution
. For information,
see
UpdateDistribution.
disassociateWebACL
in interface AWSWAFV2
public GetIPSetResult getIPSet(GetIPSetRequest request)
AWSWAFV2
Retrieves the specified IPSet.
getIPSet
in interface AWSWAFV2
public GetLoggingConfigurationResult getLoggingConfiguration(GetLoggingConfigurationRequest request)
AWSWAFV2
Returns the LoggingConfiguration for the specified web ACL.
getLoggingConfiguration
in interface AWSWAFV2
public GetPermissionPolicyResult getPermissionPolicy(GetPermissionPolicyRequest request)
AWSWAFV2
Returns the IAM policy that is attached to the specified rule group.
You must be the owner of the rule group to perform this operation.
getPermissionPolicy
in interface AWSWAFV2
public GetRateBasedStatementManagedKeysResult getRateBasedStatementManagedKeys(GetRateBasedStatementManagedKeysRequest request)
AWSWAFV2
Retrieves the keys that are currently blocked by a rate-based rule. The maximum number of managed keys that can be blocked for a single rate-based rule is 10,000. If more than 10,000 addresses exceed the rate limit, those with the highest rates are blocked.
getRateBasedStatementManagedKeys
in interface AWSWAFV2
public GetRegexPatternSetResult getRegexPatternSet(GetRegexPatternSetRequest request)
AWSWAFV2
Retrieves the specified RegexPatternSet.
getRegexPatternSet
in interface AWSWAFV2
public GetRuleGroupResult getRuleGroup(GetRuleGroupRequest request)
AWSWAFV2
Retrieves the specified RuleGroup.
getRuleGroup
in interface AWSWAFV2
public GetSampledRequestsResult getSampledRequests(GetSampledRequestsRequest request)
AWSWAFV2
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 500 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 AWSWAFV2
public GetWebACLResult getWebACL(GetWebACLRequest request)
AWSWAFV2
Retrieves the specified WebACL.
getWebACL
in interface AWSWAFV2
public GetWebACLForResourceResult getWebACLForResource(GetWebACLForResourceRequest request)
AWSWAFV2
Retrieves the WebACL for the specified resource.
getWebACLForResource
in interface AWSWAFV2
public ListAvailableManagedRuleGroupsResult listAvailableManagedRuleGroups(ListAvailableManagedRuleGroupsRequest request)
AWSWAFV2
Retrieves an array of managed rule groups that are available for you to use. This list includes all AWS Managed Rules rule groups and the AWS Marketplace managed rule groups that you're subscribed to.
listAvailableManagedRuleGroups
in interface AWSWAFV2
public ListIPSetsResult listIPSets(ListIPSetsRequest request)
AWSWAFV2
Retrieves an array of IPSetSummary objects for the IP sets that you manage.
listIPSets
in interface AWSWAFV2
public ListLoggingConfigurationsResult listLoggingConfigurations(ListLoggingConfigurationsRequest request)
AWSWAFV2
Retrieves an array of your LoggingConfiguration objects.
listLoggingConfigurations
in interface AWSWAFV2
public ListRegexPatternSetsResult listRegexPatternSets(ListRegexPatternSetsRequest request)
AWSWAFV2
Retrieves an array of RegexPatternSetSummary objects for the regex pattern sets that you manage.
listRegexPatternSets
in interface AWSWAFV2
public ListResourcesForWebACLResult listResourcesForWebACL(ListResourcesForWebACLRequest request)
AWSWAFV2
Retrieves an array of the Amazon Resource Names (ARNs) for the regional resources that are associated with the
specified web ACL. If you want the list of AWS CloudFront resources, use the AWS CloudFront call
ListDistributionsByWebACLId
.
listResourcesForWebACL
in interface AWSWAFV2
public ListRuleGroupsResult listRuleGroups(ListRuleGroupsRequest request)
AWSWAFV2
Retrieves an array of RuleGroupSummary objects for the rule groups that you manage.
listRuleGroups
in interface AWSWAFV2
public ListTagsForResourceResult listTagsForResource(ListTagsForResourceRequest request)
AWSWAFV2
Retrieves the TagInfoForResource for the specified resource. Tags are key:value pairs that you can use to categorize and manage your resources, for purposes like billing. For example, you might set the tag key to "customer" and the value to the customer name or ID. You can specify one or more tags to add to each AWS resource, up to 50 tags for a resource.
You can tag the AWS resources that you manage through AWS WAF: web ACLs, rule groups, IP sets, and regex pattern sets. You can't manage or view tags through the AWS WAF console.
listTagsForResource
in interface AWSWAFV2
public ListWebACLsResult listWebACLs(ListWebACLsRequest request)
AWSWAFV2
Retrieves an array of WebACLSummary objects for the web ACLs that you manage.
listWebACLs
in interface AWSWAFV2
public PutLoggingConfigurationResult putLoggingConfiguration(PutLoggingConfigurationRequest request)
AWSWAFV2
Enables the specified LoggingConfiguration, to start logging from a web ACL, according to the configuration provided.
You can access information about all traffic that AWS WAF inspects using the following steps:
Create an Amazon Kinesis Data Firehose.
Create the data firehose with a PUT source and in the Region that you are operating. If you are capturing logs for Amazon CloudFront, always create the firehose in US East (N. Virginia).
Give the data firehose a name that starts with the prefix aws-waf-logs-
. For example,
aws-waf-logs-us-east-2-analytics
.
Do not create the data firehose using a Kinesis stream
as your source.
Associate that firehose to your web ACL using a PutLoggingConfiguration
request.
When you successfully enable logging using a PutLoggingConfiguration
request, AWS WAF will create a
service linked role with the necessary permissions to write logs to the Amazon Kinesis Data Firehose. For more
information, see Logging Web ACL
Traffic Information in the AWS WAF Developer Guide.
putLoggingConfiguration
in interface AWSWAFV2
public PutPermissionPolicyResult putPermissionPolicy(PutPermissionPolicyRequest request)
AWSWAFV2
Attaches an IAM policy to the specified resource. Use this to share a rule group across accounts.
You must be the owner of the rule group to perform this operation.
This action is subject to the following restrictions:
You can attach only one policy with each PutPermissionPolicy
request.
The ARN in the request must be a valid WAF RuleGroup ARN and the rule group must exist in the same region.
The user making the request must be the owner of the rule group.
putPermissionPolicy
in interface AWSWAFV2
public TagResourceResult tagResource(TagResourceRequest request)
AWSWAFV2
Associates tags with the specified AWS resource. Tags are key:value pairs that you can use to categorize and manage your resources, for purposes like billing. For example, you might set the tag key to "customer" and the value to the customer name or ID. You can specify one or more tags to add to each AWS resource, up to 50 tags for a resource.
You can tag the AWS resources that you manage through AWS WAF: web ACLs, rule groups, IP sets, and regex pattern sets. You can't manage or view tags through the AWS WAF console.
tagResource
in interface AWSWAFV2
public UntagResourceResult untagResource(UntagResourceRequest request)
AWSWAFV2
Disassociates tags from an AWS resource. Tags are key:value pairs that you can associate with AWS resources. For example, the tag key might be "customer" and the tag value might be "companyA." You can specify one or more tags to add to each container. You can add up to 50 tags to each AWS resource.
untagResource
in interface AWSWAFV2
public UpdateIPSetResult updateIPSet(UpdateIPSetRequest request)
AWSWAFV2
Updates the specified IPSet.
updateIPSet
in interface AWSWAFV2
public UpdateRegexPatternSetResult updateRegexPatternSet(UpdateRegexPatternSetRequest request)
AWSWAFV2
Updates the specified RegexPatternSet.
updateRegexPatternSet
in interface AWSWAFV2
public UpdateRuleGroupResult updateRuleGroup(UpdateRuleGroupRequest request)
AWSWAFV2
Updates the specified RuleGroup.
A rule group defines a collection of rules to inspect and control web requests that you can use in a WebACL. When you create a rule group, you define an immutable capacity limit. If you update a rule group, you must stay within the capacity. This allows others to reuse the rule group with confidence in its capacity requirements.
updateRuleGroup
in interface AWSWAFV2
public UpdateWebACLResult updateWebACL(UpdateWebACLRequest request)
AWSWAFV2
Updates the specified WebACL.
A Web ACL defines a collection of rules to use to inspect and control web requests. Each rule has an action defined (allow, block, or count) for requests that match the statement of the rule. In the Web ACL, you assign a default action to take (allow, block) for any request that does not match any of the rules. The rules in a Web ACL can be a combination of the types Rule, RuleGroup, and managed rule group. You can associate a Web ACL with one or more AWS resources to protect. The resources can be Amazon CloudFront, an Amazon API Gateway REST API, an Application Load Balancer, or an AWS AppSync GraphQL API.
updateWebACL
in interface AWSWAFV2
public void shutdown()
AWSWAFV2
public ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request)
AWSWAFV2
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 AWSWAFV2
request
- The originally executed request.