waf

package module
v0.26.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 30, 2020 License: Apache-2.0 Imports: 27 Imported by: 0

Documentation

Index

Constants

View Source
const ServiceAPIVersion = "2015-08-24"
View Source
const ServiceID = "WAF"

Variables

This section is empty.

Functions

func AddResolveEndpointMiddleware

func AddResolveEndpointMiddleware(stack *middleware.Stack, options ResolveEndpointMiddlewareOptions)

func NewDefaultEndpointResolver

func NewDefaultEndpointResolver() *internalendpoints.Resolver

NewDefaultEndpointResolver constructs a new service endpoint resolver

func RemoveResolveEndpointMiddleware

func RemoveResolveEndpointMiddleware(stack *middleware.Stack) error

Types

type Client

type Client struct {
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. This is the AWS WAF Classic API Reference for using AWS WAF Classic with Amazon CloudFront. The AWS WAF Classic actions and data types listed in the reference are available for protecting Amazon CloudFront distributions. You can use these actions and data types via the endpoint waf.amazonaws.com. This guide is for developers who need detailed information about the AWS WAF Classic API actions, data types, and errors. For detailed information about AWS WAF Classic features and an overview of how to use the AWS WAF Classic API, see the AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

func New

func New(options Options, optFns ...func(*Options)) *Client

New returns an initialized Client based on the functional options. Provide additional functional options to further configure the behavior of the client, such as changing the client's endpoint or adding custom middleware behavior.

func NewFromConfig

func NewFromConfig(cfg aws.Config, optFns ...func(*Options)) *Client

NewFromConfig returns a new client from the provided config.

func (*Client) CreateByteMatchSet

func (c *Client) CreateByteMatchSet(ctx context.Context, params *CreateByteMatchSetInput, optFns ...func(*Options)) (*CreateByteMatchSetOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. 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:

  • Use

GetChangeToken () to get the change token that you provide in the ChangeToken parameter of a CreateByteMatchSet request.

  • Submit a CreateByteMatchSet

request.

  • Use GetChangeToken to get the change token that you provide in

the ChangeToken parameter of an UpdateByteMatchSet request.

  • Submit an

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 (https://docs.aws.amazon.com/waf/latest/developerguide/).

func (*Client) CreateGeoMatchSet

func (c *Client) CreateGeoMatchSet(ctx context.Context, params *CreateGeoMatchSetInput, optFns ...func(*Options)) (*CreateGeoMatchSetOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Creates an GeoMatchSet (), which you use to specify which web requests you want to allow or block based on the country that the requests originate from. For example, if you're receiving a lot of requests from one or more countries and you want to block the requests, you can create an GeoMatchSet that contains those countries and then configure AWS WAF to block the requests. To create and configure a GeoMatchSet, perform the following steps:

  • Use

GetChangeToken () to get the change token that you provide in the ChangeToken parameter of a CreateGeoMatchSet request.

  • Submit a CreateGeoMatchSet

request.

  • Use GetChangeToken to get the change token that you provide in

the ChangeToken parameter of an UpdateGeoMatchSet () request.

  • Submit an

UpdateGeoMatchSetSet request to specify the countries 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 (https://docs.aws.amazon.com/waf/latest/developerguide/).

func (*Client) CreateIPSet

func (c *Client) CreateIPSet(ctx context.Context, params *CreateIPSetInput, optFns ...func(*Options)) (*CreateIPSetOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Creates an IPSet (), which you use to specify which web requests that 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:

  • Use GetChangeToken () to get the

change token that you provide in the ChangeToken parameter of a CreateIPSet request.

  • Submit a CreateIPSet request.

  • Use GetChangeToken to get

the change token that you provide in the ChangeToken parameter of an UpdateIPSet () request.

  • Submit an 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 (https://docs.aws.amazon.com/waf/latest/developerguide/).

func (*Client) CreateRateBasedRule

func (c *Client) CreateRateBasedRule(ctx context.Context, params *CreateRateBasedRuleInput, optFns ...func(*Options)) (*CreateRateBasedRuleOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Creates a RateBasedRule (). The RateBasedRule contains a RateLimit, which specifies the maximum number of requests that AWS WAF allows from a specified IP address in a five-minute period. The RateBasedRule also contains the IPSet objects, ByteMatchSet objects, and other predicates that identify the requests that you want to count or block if these requests exceed the RateLimit. If you add more than one predicate to a RateBasedRule, a request not only must exceed the RateLimit, but it also must match all the conditions to be counted or blocked. For example, suppose you add the following to a RateBasedRule:

*

An IPSet that matches the IP address 192.0.2.44/32

  • A ByteMatchSet that

matches BadBot in the User-Agent header

Further, you specify a RateLimit of 1,000. You then add the RateBasedRule to a WebACL and specify that you want to block requests that meet the conditions in 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. Further, requests that match these two conditions must be received at a rate of more than 1,000 requests every five minutes. If both conditions are met and the rate is exceeded, AWS WAF blocks the requests. If the rate drops below 1,000 for a five-minute period, AWS WAF no longer blocks the requests. <p>As a second example, suppose you want to limit requests to a particular page on your site. To do this, you could add the following to a <code>RateBasedRule</code>:</p> <ul> <li> <p>A <code>ByteMatchSet</code> with <code>FieldToMatch</code> of <code>URI</code> </p> </li> <li> <p>A <code>PositionalConstraint</code> of <code>STARTS_WITH</code> </p> </li> <li> <p>A <code>TargetString</code> of <code>login</code> </p> </li> </ul> <p>Further, you specify a <code>RateLimit</code> of 1,000.</p> <p>By adding this <code>RateBasedRule</code> to a <code>WebACL</code>, you could limit requests to your login page without affecting the rest of your site.</p> <p>To create and configure a <code>RateBasedRule</code>, perform the following steps:</p> <ol> <li> <p>Create and update the predicates that you want to include in the rule. For more information, see <a>CreateByteMatchSet</a>, <a>CreateIPSet</a>, and <a>CreateSqlInjectionMatchSet</a>.</p> </li> <li> <p>Use <a>GetChangeToken</a> to get the change token that you provide in the <code>ChangeToken</code> parameter of a <code>CreateRule</code> request.</p> </li> <li> <p>Submit a <code>CreateRateBasedRule</code> request.</p> </li> <li> <p>Use <code>GetChangeToken</code> to get the change token that you provide in the <code>ChangeToken</code> parameter of an <a>UpdateRule</a> request.</p> </li> <li> <p>Submit an <code>UpdateRateBasedRule</code> request to specify the predicates that you want to include in the rule.</p> </li> <li> <p>Create and update a <code>WebACL</code> that contains the <code>RateBasedRule</code>. For more information, see <a>CreateWebACL</a>.</p> </li> </ol> <p>For more information about how to use the AWS WAF API to allow or block HTTP requests, see the <a href="https://docs.aws.amazon.com/waf/latest/developerguide/">AWS WAF Developer Guide</a>.</p>

func (*Client) CreateRegexMatchSet

func (c *Client) CreateRegexMatchSet(ctx context.Context, params *CreateRegexMatchSetInput, optFns ...func(*Options)) (*CreateRegexMatchSetOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Creates a RegexMatchSet (). You then use UpdateRegexMatchSet () 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 RegexMatchSet that contains a RegexMatchTuple that looks for any requests with User-Agent headers that match a RegexPatternSet with pattern B[a@]dB[o0]t. You can then configure AWS WAF to reject those requests. To create and configure a RegexMatchSet, perform the following steps:

  • Use GetChangeToken () to get

the change token that you provide in the ChangeToken parameter of a CreateRegexMatchSet request.

  • Submit a CreateRegexMatchSet request.

    *

Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of an UpdateRegexMatchSet request.

  • Submit an

UpdateRegexMatchSet () 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, using a RegexPatternSet, 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 (https://docs.aws.amazon.com/waf/latest/developerguide/).

func (*Client) CreateRegexPatternSet

func (c *Client) CreateRegexPatternSet(ctx context.Context, params *CreateRegexPatternSetInput, optFns ...func(*Options)) (*CreateRegexPatternSetOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Creates a RegexPatternSet. You then use UpdateRegexPatternSet () to specify the regular expression (regex) pattern that you want AWS WAF to search for, such as B[a@]dB[o0]t. You can then configure AWS WAF to reject those requests. To create and configure a RegexPatternSet, perform the following steps:

  • Use GetChangeToken () to get the change token that you provide in

the ChangeToken parameter of a CreateRegexPatternSet request.

  • Submit a

CreateRegexPatternSet request.

  • Use GetChangeToken to get the change token

that you provide in the ChangeToken parameter of an UpdateRegexPatternSet request.

  • Submit an UpdateRegexPatternSet () request to specify the string

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 (https://docs.aws.amazon.com/waf/latest/developerguide/).

func (*Client) CreateRule

func (c *Client) CreateRule(ctx context.Context, params *CreateRuleInput, optFns ...func(*Options)) (*CreateRuleOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. 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 that you add the following to a Rule:

  • An IPSet that matches the IP address 192.0.2.44/32

* A 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:

  • Create and

update the predicates that you want to include in the Rule. For more information, see CreateByteMatchSet (), CreateIPSet (), and CreateSqlInjectionMatchSet ().

  • Use GetChangeToken () to get the change

token that you provide in the ChangeToken parameter of a CreateRule request.

* Submit a CreateRule request.

  • Use GetChangeToken to get the change token

that you provide in the ChangeToken parameter of an UpdateRule () request.

* Submit an UpdateRule request to specify the predicates that you want to include in the Rule.

  • Create and update a 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 (https://docs.aws.amazon.com/waf/latest/developerguide/).

func (*Client) CreateRuleGroup

func (c *Client) CreateRuleGroup(ctx context.Context, params *CreateRuleGroupInput, optFns ...func(*Options)) (*CreateRuleGroupOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Creates a RuleGroup. A rule group is a collection of predefined rules that you add to a web ACL. You use UpdateRuleGroup () to add rules to the rule group. Rule groups are subject to the following limits:

  • Three rule

groups per account. You can request an increase to this limit by contacting customer support.

  • One rule group per web ACL.

  • Ten rules per rule

group.

For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/).

func (*Client) CreateSizeConstraintSet

func (c *Client) CreateSizeConstraintSet(ctx context.Context, params *CreateSizeConstraintSetInput, optFns ...func(*Options)) (*CreateSizeConstraintSetOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. 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:

  • Use GetChangeToken () to get the change

token that you provide in the ChangeToken parameter of a CreateSizeConstraintSet request.

  • Submit a CreateSizeConstraintSet request.

  • Use

GetChangeToken to get the change token that you provide in the ChangeToken parameter of an UpdateSizeConstraintSet request.

  • Submit an

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 (https://docs.aws.amazon.com/waf/latest/developerguide/).

func (*Client) CreateSqlInjectionMatchSet

func (c *Client) CreateSqlInjectionMatchSet(ctx context.Context, params *CreateSqlInjectionMatchSetInput, optFns ...func(*Options)) (*CreateSqlInjectionMatchSetOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. 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:

  • Use GetChangeToken () to get the change token that you

provide in the ChangeToken parameter of a CreateSqlInjectionMatchSet request.

* Submit a CreateSqlInjectionMatchSet request.

  • Use GetChangeToken to get

the change token that you provide in the ChangeToken parameter of an UpdateSqlInjectionMatchSet () request.

  • Submit an

UpdateSqlInjectionMatchSet () request to specify the parts of web requests in which you want to allow, block, or count malicious 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 (https://docs.aws.amazon.com/waf/latest/developerguide/).

func (*Client) CreateWebACL

func (c *Client) CreateWebACL(ctx context.Context, params *CreateWebACLInput, optFns ...func(*Options)) (*CreateWebACLOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. 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:

*

Create and update the ByteMatchSet objects and other predicates that you want to include in Rules. For more information, see CreateByteMatchSet (), UpdateByteMatchSet (), CreateIPSet (), UpdateIPSet (), CreateSqlInjectionMatchSet (), and UpdateSqlInjectionMatchSet ().

  • Create

and update the Rules that you want to include in the WebACL. For more information, see CreateRule () and UpdateRule ().

  • Use GetChangeToken ()

to get the change token that you provide in the ChangeToken parameter of a CreateWebACL request.

  • Submit a CreateWebACL request.

  • Use

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.

For more information about how to use the AWS WAF API, see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/).

func (*Client) CreateWebACLMigrationStack

func (c *Client) CreateWebACLMigrationStack(ctx context.Context, params *CreateWebACLMigrationStackInput, optFns ...func(*Options)) (*CreateWebACLMigrationStackOutput, error)

Creates an AWS CloudFormation WAFV2 template for the specified web ACL in the specified Amazon S3 bucket. Then, in CloudFormation, you create a stack from the template, to create the web ACL and its resources in AWS WAFV2. Use this to migrate your AWS WAF Classic web ACL to the latest version of AWS WAF. This is part of a larger migration procedure for web ACLs from AWS WAF Classic to the latest version of AWS WAF. For the full procedure, including caveats and manual steps to complete the migration and switch over to the new web ACL, see Migrating your AWS WAF Classic resources to AWS WAF (https://docs.aws.amazon.com/waf/latest/developerguide/waf-migrating-from-classic.html) in the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html).

func (*Client) CreateXssMatchSet

func (c *Client) CreateXssMatchSet(ctx context.Context, params *CreateXssMatchSetInput, optFns ...func(*Options)) (*CreateXssMatchSetOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Creates an XssMatchSet (), which you use to allow, block, or count requests that contain cross-site scripting attacks in the specified part of web requests. AWS WAF searches for character sequences that are likely to be malicious strings. To create and configure an XssMatchSet, perform the following steps:

  • Use GetChangeToken () to get the change token that you provide in

the ChangeToken parameter of a CreateXssMatchSet request.

  • Submit a

CreateXssMatchSet request.

  • Use GetChangeToken to get the change token

that you provide in the ChangeToken parameter of an UpdateXssMatchSet () request.

  • Submit an UpdateXssMatchSet () request to specify the parts of

web requests in which you want to allow, block, or count cross-site scripting attacks.

For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/).

func (*Client) DeleteByteMatchSet

func (c *Client) DeleteByteMatchSet(ctx context.Context, params *DeleteByteMatchSetInput, optFns ...func(*Options)) (*DeleteByteMatchSetOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. 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:

  • Update the ByteMatchSet to

remove filters, if any. For more information, see UpdateByteMatchSet ().

*

Use GetChangeToken () to get the change token that you provide in the ChangeToken parameter of a DeleteByteMatchSet request.

  • Submit a

DeleteByteMatchSet request.

func (*Client) DeleteGeoMatchSet

func (c *Client) DeleteGeoMatchSet(ctx context.Context, params *DeleteGeoMatchSetInput, optFns ...func(*Options)) (*DeleteGeoMatchSetOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Permanently deletes a GeoMatchSet (). You can't delete a GeoMatchSet if it's still used in any Rules or if it still includes any countries. If you just want to remove a GeoMatchSet from a Rule, use UpdateRule (). To permanently delete a GeoMatchSet from AWS WAF, perform the following steps:

  • Update

the GeoMatchSet to remove any countries. For more information, see UpdateGeoMatchSet ().

  • Use GetChangeToken () to get the change token that

you provide in the ChangeToken parameter of a DeleteGeoMatchSet request.

*

Submit a DeleteGeoMatchSet request.

func (*Client) DeleteIPSet

func (c *Client) DeleteIPSet(ctx context.Context, params *DeleteIPSetInput, optFns ...func(*Options)) (*DeleteIPSetOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. 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:

  • Update the IPSet to

remove IP address ranges, if any. For more information, see UpdateIPSet ().

* Use GetChangeToken () to get the change token that you provide in the ChangeToken parameter of a DeleteIPSet request.

  • Submit a DeleteIPSet

request.

func (*Client) DeleteLoggingConfiguration

func (c *Client) DeleteLoggingConfiguration(ctx context.Context, params *DeleteLoggingConfigurationInput, optFns ...func(*Options)) (*DeleteLoggingConfigurationOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Permanently deletes the LoggingConfiguration () from the specified web ACL.

func (*Client) DeletePermissionPolicy

func (c *Client) DeletePermissionPolicy(ctx context.Context, params *DeletePermissionPolicyInput, optFns ...func(*Options)) (*DeletePermissionPolicyOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Permanently deletes an IAM policy from the specified RuleGroup. The user making the request must be the owner of the RuleGroup.

func (*Client) DeleteRateBasedRule

func (c *Client) DeleteRateBasedRule(ctx context.Context, params *DeleteRateBasedRuleInput, optFns ...func(*Options)) (*DeleteRateBasedRuleOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Permanently deletes a RateBasedRule (). 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 RateBasedRule from AWS WAF, perform the following steps:

  • Update the RateBasedRule to remove predicates, if

any. For more information, see UpdateRateBasedRule ().

  • Use GetChangeToken

() to get the change token that you provide in the ChangeToken parameter of a DeleteRateBasedRule request.

  • Submit a DeleteRateBasedRule request.

func (*Client) DeleteRegexMatchSet

func (c *Client) DeleteRegexMatchSet(ctx context.Context, params *DeleteRegexMatchSetInput, optFns ...func(*Options)) (*DeleteRegexMatchSetOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Permanently deletes a RegexMatchSet (). You can't delete a RegexMatchSet if it's still used in any Rules or if it still includes any RegexMatchTuples objects (any filters). If you just want to remove a RegexMatchSet from a Rule, use UpdateRule (). To permanently delete a RegexMatchSet, perform the following steps:

  • Update the RegexMatchSet to

remove filters, if any. For more information, see UpdateRegexMatchSet ().

*

Use GetChangeToken () to get the change token that you provide in the ChangeToken parameter of a DeleteRegexMatchSet request.

  • Submit a

DeleteRegexMatchSet request.

func (*Client) DeleteRegexPatternSet

func (c *Client) DeleteRegexPatternSet(ctx context.Context, params *DeleteRegexPatternSetInput, optFns ...func(*Options)) (*DeleteRegexPatternSetOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Permanently deletes a RegexPatternSet (). You can't delete a RegexPatternSet if it's still used in any RegexMatchSet or if the RegexPatternSet is not empty.

func (*Client) DeleteRule

func (c *Client) DeleteRule(ctx context.Context, params *DeleteRuleInput, optFns ...func(*Options)) (*DeleteRuleOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. 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:

  • Update the Rule to remove predicates, if any. For more

information, see UpdateRule ().

  • Use GetChangeToken () to get the change

token that you provide in the ChangeToken parameter of a DeleteRule request.

* Submit a DeleteRule request.

func (*Client) DeleteRuleGroup

func (c *Client) DeleteRuleGroup(ctx context.Context, params *DeleteRuleGroupInput, optFns ...func(*Options)) (*DeleteRuleGroupOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Permanently deletes a RuleGroup (). You can't delete a RuleGroup if it's still used in any WebACL objects or if it still includes any rules. If you just want to remove a RuleGroup from a WebACL, use UpdateWebACL (). To permanently delete a RuleGroup from AWS WAF, perform the following steps:

*

Update the RuleGroup to remove rules, if any. For more information, see UpdateRuleGroup ().

  • Use GetChangeToken () to get the change token that

you provide in the ChangeToken parameter of a DeleteRuleGroup request.

*

Submit a DeleteRuleGroup request.

func (*Client) DeleteSizeConstraintSet

func (c *Client) DeleteSizeConstraintSet(ctx context.Context, params *DeleteSizeConstraintSetInput, optFns ...func(*Options)) (*DeleteSizeConstraintSetOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. 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:

  • Update the

SizeConstraintSet to remove filters, if any. For more information, see UpdateSizeConstraintSet ().

  • Use GetChangeToken () to get the change token

that you provide in the ChangeToken parameter of a DeleteSizeConstraintSet request.

  • Submit a DeleteSizeConstraintSet request.

func (*Client) DeleteSqlInjectionMatchSet

func (c *Client) DeleteSqlInjectionMatchSet(ctx context.Context, params *DeleteSqlInjectionMatchSetInput, optFns ...func(*Options)) (*DeleteSqlInjectionMatchSetOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. 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:

  • Update

the SqlInjectionMatchSet to remove filters, if any. For more information, see UpdateSqlInjectionMatchSet ().

  • Use GetChangeToken () to get the change

token that you provide in the ChangeToken parameter of a DeleteSqlInjectionMatchSet request.

  • Submit a DeleteSqlInjectionMatchSet

request.

func (*Client) DeleteWebACL

func (c *Client) DeleteWebACL(ctx context.Context, params *DeleteWebACLInput, optFns ...func(*Options)) (*DeleteWebACLOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Permanently deletes a WebACL (). You can't delete a WebACL if it still contains any Rules. To delete a WebACL, perform the following steps:

* Update the WebACL to remove Rules, if any. For more information, see UpdateWebACL ().

  • Use GetChangeToken () to get the change token that you

provide in the ChangeToken parameter of a DeleteWebACL request.

  • Submit a

DeleteWebACL request.

func (*Client) DeleteXssMatchSet

func (c *Client) DeleteXssMatchSet(ctx context.Context, params *DeleteXssMatchSetInput, optFns ...func(*Options)) (*DeleteXssMatchSetOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Permanently deletes an XssMatchSet (). You can't delete an XssMatchSet if it's still used in any Rules or if it still contains any XssMatchTuple () objects. If you just want to remove an XssMatchSet from a Rule, use UpdateRule (). To permanently delete an XssMatchSet from AWS WAF, perform the following steps:

  • Update the XssMatchSet to remove filters, if any.

For more information, see UpdateXssMatchSet ().

  • Use GetChangeToken () to

get the change token that you provide in the ChangeToken parameter of a DeleteXssMatchSet request.

  • Submit a DeleteXssMatchSet request.

func (*Client) GetByteMatchSet

func (c *Client) GetByteMatchSet(ctx context.Context, params *GetByteMatchSetInput, optFns ...func(*Options)) (*GetByteMatchSetOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Returns the ByteMatchSet () specified by ByteMatchSetId.

func (*Client) GetChangeToken

func (c *Client) GetChangeToken(ctx context.Context, params *GetChangeTokenInput, optFns ...func(*Options)) (*GetChangeTokenOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. 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.

func (*Client) GetChangeTokenStatus

func (c *Client) GetChangeTokenStatus(ctx context.Context, params *GetChangeTokenStatusInput, optFns ...func(*Options)) (*GetChangeTokenStatusOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. 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.

  • INSYNC: Propagation is complete.

func (*Client) GetGeoMatchSet

func (c *Client) GetGeoMatchSet(ctx context.Context, params *GetGeoMatchSetInput, optFns ...func(*Options)) (*GetGeoMatchSetOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Returns the GeoMatchSet () that is specified by GeoMatchSetId.

func (*Client) GetIPSet

func (c *Client) GetIPSet(ctx context.Context, params *GetIPSetInput, optFns ...func(*Options)) (*GetIPSetOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Returns the IPSet () that is specified by IPSetId.

func (*Client) GetLoggingConfiguration

func (c *Client) GetLoggingConfiguration(ctx context.Context, params *GetLoggingConfigurationInput, optFns ...func(*Options)) (*GetLoggingConfigurationOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Returns the LoggingConfiguration () for the specified web ACL.

func (*Client) GetPermissionPolicy

func (c *Client) GetPermissionPolicy(ctx context.Context, params *GetPermissionPolicyInput, optFns ...func(*Options)) (*GetPermissionPolicyOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Returns the IAM policy attached to the RuleGroup.

func (*Client) GetRateBasedRule

func (c *Client) GetRateBasedRule(ctx context.Context, params *GetRateBasedRuleInput, optFns ...func(*Options)) (*GetRateBasedRuleOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Returns the RateBasedRule () that is specified by the RuleId that you included in the GetRateBasedRule request.

func (*Client) GetRateBasedRuleManagedKeys

func (c *Client) GetRateBasedRuleManagedKeys(ctx context.Context, params *GetRateBasedRuleManagedKeysInput, optFns ...func(*Options)) (*GetRateBasedRuleManagedKeysOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Returns an array of IP addresses currently being blocked by the RateBasedRule () that is specified by the RuleId. The maximum number of managed keys that will be blocked is 10,000. If more than 10,000 addresses exceed the rate limit, the 10,000 addresses with the highest rates will be blocked.

func (*Client) GetRegexMatchSet

func (c *Client) GetRegexMatchSet(ctx context.Context, params *GetRegexMatchSetInput, optFns ...func(*Options)) (*GetRegexMatchSetOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Returns the RegexMatchSet () specified by RegexMatchSetId.

func (*Client) GetRegexPatternSet

func (c *Client) GetRegexPatternSet(ctx context.Context, params *GetRegexPatternSetInput, optFns ...func(*Options)) (*GetRegexPatternSetOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Returns the RegexPatternSet () specified by RegexPatternSetId.

func (*Client) GetRule

func (c *Client) GetRule(ctx context.Context, params *GetRuleInput, optFns ...func(*Options)) (*GetRuleOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Returns the Rule () that is specified by the RuleId that you included in the GetRule request.

func (*Client) GetRuleGroup

func (c *Client) GetRuleGroup(ctx context.Context, params *GetRuleGroupInput, optFns ...func(*Options)) (*GetRuleGroupOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Returns the RuleGroup () that is specified by the RuleGroupId that you included in the GetRuleGroup request. To view the rules in a rule group, use ListActivatedRulesInRuleGroup ().

func (*Client) GetSampledRequests

func (c *Client) GetSampledRequests(ctx context.Context, params *GetSampledRequestsInput, optFns ...func(*Options)) (*GetSampledRequestsOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. 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.

func (*Client) GetSizeConstraintSet

func (c *Client) GetSizeConstraintSet(ctx context.Context, params *GetSizeConstraintSetInput, optFns ...func(*Options)) (*GetSizeConstraintSetOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Returns the SizeConstraintSet () specified by SizeConstraintSetId.

func (*Client) GetSqlInjectionMatchSet

func (c *Client) GetSqlInjectionMatchSet(ctx context.Context, params *GetSqlInjectionMatchSetInput, optFns ...func(*Options)) (*GetSqlInjectionMatchSetOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Returns the SqlInjectionMatchSet () that is specified by SqlInjectionMatchSetId.

func (*Client) GetWebACL

func (c *Client) GetWebACL(ctx context.Context, params *GetWebACLInput, optFns ...func(*Options)) (*GetWebACLOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Returns the WebACL () that is specified by WebACLId.

func (*Client) GetXssMatchSet

func (c *Client) GetXssMatchSet(ctx context.Context, params *GetXssMatchSetInput, optFns ...func(*Options)) (*GetXssMatchSetOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Returns the XssMatchSet () that is specified by XssMatchSetId.

func (*Client) ListActivatedRulesInRuleGroup

func (c *Client) ListActivatedRulesInRuleGroup(ctx context.Context, params *ListActivatedRulesInRuleGroupInput, optFns ...func(*Options)) (*ListActivatedRulesInRuleGroupOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Returns an array of ActivatedRule () objects.

func (*Client) ListByteMatchSets

func (c *Client) ListByteMatchSets(ctx context.Context, params *ListByteMatchSetsInput, optFns ...func(*Options)) (*ListByteMatchSetsOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Returns an array of ByteMatchSetSummary () objects.

func (*Client) ListGeoMatchSets

func (c *Client) ListGeoMatchSets(ctx context.Context, params *ListGeoMatchSetsInput, optFns ...func(*Options)) (*ListGeoMatchSetsOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Returns an array of GeoMatchSetSummary () objects in the response.

func (*Client) ListIPSets

func (c *Client) ListIPSets(ctx context.Context, params *ListIPSetsInput, optFns ...func(*Options)) (*ListIPSetsOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Returns an array of IPSetSummary () objects in the response.

func (*Client) ListLoggingConfigurations

func (c *Client) ListLoggingConfigurations(ctx context.Context, params *ListLoggingConfigurationsInput, optFns ...func(*Options)) (*ListLoggingConfigurationsOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Returns an array of LoggingConfiguration () objects.

func (*Client) ListRateBasedRules

func (c *Client) ListRateBasedRules(ctx context.Context, params *ListRateBasedRulesInput, optFns ...func(*Options)) (*ListRateBasedRulesOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Returns an array of RuleSummary () objects.

func (*Client) ListRegexMatchSets

func (c *Client) ListRegexMatchSets(ctx context.Context, params *ListRegexMatchSetsInput, optFns ...func(*Options)) (*ListRegexMatchSetsOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Returns an array of RegexMatchSetSummary () objects.

func (*Client) ListRegexPatternSets

func (c *Client) ListRegexPatternSets(ctx context.Context, params *ListRegexPatternSetsInput, optFns ...func(*Options)) (*ListRegexPatternSetsOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Returns an array of RegexPatternSetSummary () objects.

func (*Client) ListRuleGroups

func (c *Client) ListRuleGroups(ctx context.Context, params *ListRuleGroupsInput, optFns ...func(*Options)) (*ListRuleGroupsOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Returns an array of RuleGroup () objects.

func (*Client) ListRules

func (c *Client) ListRules(ctx context.Context, params *ListRulesInput, optFns ...func(*Options)) (*ListRulesOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Returns an array of RuleSummary () objects.

func (*Client) ListSizeConstraintSets

func (c *Client) ListSizeConstraintSets(ctx context.Context, params *ListSizeConstraintSetsInput, optFns ...func(*Options)) (*ListSizeConstraintSetsOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Returns an array of SizeConstraintSetSummary () objects.

func (*Client) ListSqlInjectionMatchSets

func (c *Client) ListSqlInjectionMatchSets(ctx context.Context, params *ListSqlInjectionMatchSetsInput, optFns ...func(*Options)) (*ListSqlInjectionMatchSetsOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Returns an array of SqlInjectionMatchSet () objects.

func (*Client) ListSubscribedRuleGroups

func (c *Client) ListSubscribedRuleGroups(ctx context.Context, params *ListSubscribedRuleGroupsInput, optFns ...func(*Options)) (*ListSubscribedRuleGroupsOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Returns an array of RuleGroup () objects that you are subscribed to.

func (*Client) ListTagsForResource

func (c *Client) ListTagsForResource(ctx context.Context, params *ListTagsForResourceInput, optFns ...func(*Options)) (*ListTagsForResourceOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Retrieves the tags associated 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. Tagging is only available through the API, SDKs, and CLI. You can't manage or view tags through the AWS WAF Classic console. You can tag the AWS resources that you manage through AWS WAF Classic: web ACLs, rule groups, and rules.

func (*Client) ListWebACLs

func (c *Client) ListWebACLs(ctx context.Context, params *ListWebACLsInput, optFns ...func(*Options)) (*ListWebACLsOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Returns an array of WebACLSummary () objects in the response.

func (*Client) ListXssMatchSets

func (c *Client) ListXssMatchSets(ctx context.Context, params *ListXssMatchSetsInput, optFns ...func(*Options)) (*ListXssMatchSetsOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Returns an array of XssMatchSet () objects.

func (*Client) PutLoggingConfiguration

func (c *Client) PutLoggingConfiguration(ctx context.Context, params *PutLoggingConfigurationInput, optFns ...func(*Options)) (*PutLoggingConfigurationOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Associates a LoggingConfiguration () with a specified web ACL. 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. However, if you are capturing logs for Amazon CloudFront, always create the firehose in US East (N. Virginia). Do not create the data firehose using a Kinesis stream as your source.

  • Associate that firehose to your web ACL using a

PutLoggingConfiguration request.

<p>When you successfully enable logging

using a <code>PutLoggingConfiguration</code> 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 <a href="https://docs.aws.amazon.com/waf/latest/developerguide/logging.html">Logging Web ACL Traffic Information</a> in the <i>AWS WAF Developer Guide</i>.</p>

func (*Client) PutPermissionPolicy

func (c *Client) PutPermissionPolicy(ctx context.Context, params *PutPermissionPolicyInput, optFns ...func(*Options)) (*PutPermissionPolicyOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Attaches an IAM policy to the specified resource. The only supported use for this action is to share a RuleGroup across accounts. The PutPermissionPolicy is subject to the following restrictions:

  • You can

attach only one policy with each PutPermissionPolicy request.

  • The policy

must include an Effect, Action and Principal.

  • <p> <code>Effect</code>

must specify <code>Allow</code>.</p> </li> <li> <p>The <code>Action</code> in the policy must be <code>waf:UpdateWebACL</code>, <code>waf-regional:UpdateWebACL</code>, <code>waf:GetRuleGroup</code> and <code>waf-regional:GetRuleGroup</code> . Any extra or wildcard actions in the policy will be rejected.</p> </li> <li> <p>The policy cannot include a <code>Resource</code> parameter.</p> </li> <li> <p>The ARN in the request must be a valid WAF RuleGroup ARN and the RuleGroup must exist in the same region.</p> </li> <li> <p>The user making the request must be the owner of the RuleGroup.</p> </li> <li> <p>Your policy must be composed using IAM Policy version 2012-10-17.</p> </li> </ul> <p>For more information, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html">IAM Policies</a>. </p> <p>An example of a valid policy parameter is shown in the Examples section below.</p>

func (*Client) TagResource

func (c *Client) TagResource(ctx context.Context, params *TagResourceInput, optFns ...func(*Options)) (*TagResourceOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. 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. Tagging is only available through the API, SDKs, and CLI. You can't manage or view tags through the AWS WAF Classic console. You can use this action to tag the AWS resources that you manage through AWS WAF Classic: web ACLs, rule groups, and rules.

func (*Client) UntagResource

func (c *Client) UntagResource(ctx context.Context, params *UntagResourceInput, optFns ...func(*Options)) (*UntagResourceOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

func (*Client) UpdateByteMatchSet

func (c *Client) UpdateByteMatchSet(ctx context.Context, params *UpdateByteMatchSetInput, optFns ...func(*Options)) (*UpdateByteMatchSetOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Inserts or deletes ByteMatchTuple () objects (filters) in a ByteMatchSet (). For each ByteMatchTuple object, you specify the following values:

  • Whether to insert or delete the object from the array. If you

want to change a ByteMatchSetUpdate object, you delete the existing object and add a new one.

  • The part of a web request that you want AWS WAF to

inspect, such as a query string or the value of the User-Agent header.

*

The bytes (typically a string that corresponds with ASCII characters) that you want AWS WAF to look for. For more information, including how you specify the values for the AWS WAF API and the AWS CLI or SDKs, see TargetString in the ByteMatchTuple () data type.

  • Where to look, such as at the beginning or

the end of a query string.

  • Whether to perform any conversions on the

request, such as converting it to lowercase, before inspecting it for the specified string.

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:

  • Create a ByteMatchSet. For

more information, see CreateByteMatchSet ().

  • Use GetChangeToken () to get

the change token that you provide in the ChangeToken parameter of an UpdateByteMatchSet request.

  • Submit an 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 (https://docs.aws.amazon.com/waf/latest/developerguide/).

func (*Client) UpdateGeoMatchSet

func (c *Client) UpdateGeoMatchSet(ctx context.Context, params *UpdateGeoMatchSetInput, optFns ...func(*Options)) (*UpdateGeoMatchSetOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Inserts or deletes GeoMatchConstraint () objects in an GeoMatchSet. For each GeoMatchConstraint object, you specify the following values:

*

Whether to insert or delete the object from the array. If you want to change an GeoMatchConstraint object, you delete the existing object and add a new one.

* The Type. The only valid value for Type is Country.

  • The Value, which is

a two character code for the country to add to the GeoMatchConstraint object. Valid codes are listed in GeoMatchConstraint$Value ().

<p>To create and

configure an <code>GeoMatchSet</code>, perform the following steps:</p> <ol> <li> <p>Submit a <a>CreateGeoMatchSet</a> request.</p> </li> <li> <p>Use <a>GetChangeToken</a> to get the change token that you provide in the <code>ChangeToken</code> parameter of an <a>UpdateGeoMatchSet</a> request.</p> </li> <li> <p>Submit an <code>UpdateGeoMatchSet</code> request to specify the country that you want AWS WAF to watch for.</p> </li> </ol> <p>When you update an <code>GeoMatchSet</code>, you specify the country that you want to add and/or the country that you want to delete. If you want to change a country, you delete the existing country and add the new one.</p> <p>For more information about how to use the AWS WAF API to allow or block HTTP requests, see the <a href="https://docs.aws.amazon.com/waf/latest/developerguide/">AWS WAF Developer Guide</a>.</p>

func (*Client) UpdateIPSet

func (c *Client) UpdateIPSet(ctx context.Context, params *UpdateIPSetInput, optFns ...func(*Options)) (*UpdateIPSetOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Inserts or deletes IPSetDescriptor () objects in an IPSet. For each IPSetDescriptor object, you specify the following values:

  • Whether to

insert or delete the object from the array. If you want to change an IPSetDescriptor object, you delete the existing object and add a new one.

*

The IP address version, IPv4 or IPv6.

  • The IP address in CIDR notation,

for example, 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 IPv4 address ranges: /8 and any range between /16 through /32. AWS WAF supports IPv6 address ranges: /24, /32, /48, /56, /64, and /128. For more information about CIDR notation, see the Wikipedia entry Classless Inter-Domain Routing (https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing). IPv6 addresses can be represented using any of the following formats:

*

1111:0000:0000:0000:0000:0000:0000:0111/128

  • 1111:0:0:0:0:0:0:0111/128

* 1111::0111/128

  • 1111::111/128

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:

  • Submit a CreateIPSet () request.

  • Use GetChangeToken () to

get the change token that you provide in the ChangeToken parameter of an UpdateIPSet () request.

  • Submit an 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. You can insert a maximum of 1000 addresses in a single request. For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/).

func (*Client) UpdateRateBasedRule

func (c *Client) UpdateRateBasedRule(ctx context.Context, params *UpdateRateBasedRuleInput, optFns ...func(*Options)) (*UpdateRateBasedRuleOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Inserts or deletes Predicate () objects in a rule and updates the RateLimit in the rule. Each Predicate object identifies a predicate, such as a ByteMatchSet () or an IPSet (), that specifies the web requests that you want to block or count. The RateLimit specifies the number of requests every five minutes that triggers the rule. If you add more than one predicate to a RateBasedRule, a request must match all the predicates and exceed the RateLimit to be counted or blocked. For example, suppose you add the following to a RateBasedRule:

  • An IPSet that matches the IP address 192.0.2.44/32

    *

A ByteMatchSet that matches BadBot in the User-Agent header

Further, you specify a RateLimit of 1,000. You then add the RateBasedRule to a WebACL and specify that you want to block 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. Further, requests that match these two conditions much be received at a rate of more than 1,000 every five minutes. If the rate drops below this limit, AWS WAF no longer blocks the requests. <p>As a second example, suppose you want to limit requests to a particular page on your site. To do this, you could add the following to a <code>RateBasedRule</code>:</p> <ul> <li> <p>A <code>ByteMatchSet</code> with <code>FieldToMatch</code> of <code>URI</code> </p> </li> <li> <p>A <code>PositionalConstraint</code> of <code>STARTS_WITH</code> </p> </li> <li> <p>A <code>TargetString</code> of <code>login</code> </p> </li> </ul> <p>Further, you specify a <code>RateLimit</code> of 1,000.</p> <p>By adding this <code>RateBasedRule</code> to a <code>WebACL</code>, you could limit requests to your login page without affecting the rest of your site.</p>

func (*Client) UpdateRegexMatchSet

func (c *Client) UpdateRegexMatchSet(ctx context.Context, params *UpdateRegexMatchSetInput, optFns ...func(*Options)) (*UpdateRegexMatchSetOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Inserts or deletes RegexMatchTuple () objects (filters) in a RegexMatchSet (). For each RegexMatchSetUpdate object, you specify the following values:

  • Whether to insert or delete the object from the array. If you

want to change a RegexMatchSetUpdate object, you delete the existing object and add a new one.

  • The part of a web request that you want AWS WAF to

inspectupdate, such as a query string or the value of the User-Agent header.

* The identifier of the pattern (a regular expression) that you want AWS WAF to look for. For more information, see RegexPatternSet ().

  • Whether to

perform any conversions on the request, such as converting it to lowercase, before inspecting it for the specified string.

For example, you can create a RegexPatternSet that matches any requests with User-Agent headers that contain the string B[a@]dB[o0]t. You can then configure AWS WAF to reject those requests. To create and configure a RegexMatchSet, perform the following steps:

  • Create a RegexMatchSet. For more information, see

CreateRegexMatchSet ().

  • Use GetChangeToken () to get the change token

that you provide in the ChangeToken parameter of an UpdateRegexMatchSet request.

  • Submit an UpdateRegexMatchSet request to specify the part of the

request that you want AWS WAF to inspect (for example, the header or the URI) and the identifier of the RegexPatternSet that contain the regular expression patters 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 (https://docs.aws.amazon.com/waf/latest/developerguide/).

func (*Client) UpdateRegexPatternSet

func (c *Client) UpdateRegexPatternSet(ctx context.Context, params *UpdateRegexPatternSetInput, optFns ...func(*Options)) (*UpdateRegexPatternSetOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Inserts or deletes RegexPatternString objects in a RegexPatternSet (). For each RegexPatternString object, you specify the following values:

*

Whether to insert or delete the RegexPatternString.

  • The regular

expression pattern that you want to insert or delete. For more information, see RegexPatternSet ().

For example, you can create a RegexPatternString such as B[a@]dB[o0]t. AWS WAF will match this RegexPatternString to:

  • BadBot

* BadB0t

  • B@dBot

  • B@dB0t

To create and configure a RegexPatternSet, perform the following steps:

  • Create a RegexPatternSet. For more

information, see CreateRegexPatternSet ().

  • Use GetChangeToken () to get

the change token that you provide in the ChangeToken parameter of an UpdateRegexPatternSet request.

  • Submit an UpdateRegexPatternSet request to

specify the regular expression pattern 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 (https://docs.aws.amazon.com/waf/latest/developerguide/).

func (*Client) UpdateRule

func (c *Client) UpdateRule(ctx context.Context, params *UpdateRuleInput, optFns ...func(*Options)) (*UpdateRuleOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. 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 that you add the following to a Rule:

  • A ByteMatchSet that matches the value BadBot

in the User-Agent header

  • An IPSet 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:

  • Create and update the predicates that you

want to include in the Rule.

  • Create the Rule. See CreateRule ().

    *

Use GetChangeToken to get the change token that you provide in the ChangeToken parameter of an UpdateRule () request.

  • Submit an UpdateRule request to

add predicates to the Rule.

  • Create and update a 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 (https://docs.aws.amazon.com/waf/latest/developerguide/).

func (*Client) UpdateRuleGroup

func (c *Client) UpdateRuleGroup(ctx context.Context, params *UpdateRuleGroupInput, optFns ...func(*Options)) (*UpdateRuleGroupOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Inserts or deletes ActivatedRule () objects in a RuleGroup. You can only insert REGULAR rules into a rule group. You can have a maximum of ten rules per rule group. <p>To create and configure a <code>RuleGroup</code>, perform the following steps:</p> <ol> <li> <p>Create and update the <code>Rules</code> that you want to include in the <code>RuleGroup</code>. See <a>CreateRule</a>.</p> </li> <li> <p>Use <code>GetChangeToken</code> to get the change token that you provide in the <code>ChangeToken</code> parameter of an <a>UpdateRuleGroup</a> request.</p> </li> <li> <p>Submit an <code>UpdateRuleGroup</code> request to add <code>Rules</code> to the <code>RuleGroup</code>.</p> </li> <li> <p>Create and update a <code>WebACL</code> that contains the <code>RuleGroup</code>. See <a>CreateWebACL</a>.</p> </li> </ol> <p>If you want to replace one <code>Rule</code> with another, you delete the existing one and add the new one.</p> <p>For more information about how to use the AWS WAF API to allow or block HTTP requests, see the <a href="https://docs.aws.amazon.com/waf/latest/developerguide/">AWS WAF Developer Guide</a>.</p>

func (*Client) UpdateSizeConstraintSet

func (c *Client) UpdateSizeConstraintSet(ctx context.Context, params *UpdateSizeConstraintSetInput, optFns ...func(*Options)) (*UpdateSizeConstraintSetOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Inserts or deletes SizeConstraint () objects (filters) in a SizeConstraintSet (). For each SizeConstraint object, you specify the following values:

  • Whether to insert or delete the object from the array. If you

want to change a SizeConstraintSetUpdate object, you delete the existing object and add a new one.

  • The part of a web request that you want AWS WAF to

evaluate, such as the length of a query string or the length of the User-Agent header.

  • Whether to perform any transformations on the request, such as

converting it to lowercase, before checking its length. Note that transformations of the request body are not supported because the AWS resource forwards only the first 8192 bytes of your request to AWS WAF. You can only specify a single type of TextTransformation.

  • A ComparisonOperator used

for evaluating the selected part of the request against the specified Size, such as equals, greater than, less than, and so on.

  • The length, in bytes, that

you want AWS WAF to watch for in selected part of the request. The length is computed after applying the transformation.

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:

  • Create a SizeConstraintSet. For more information,

see CreateSizeConstraintSet ().

  • Use GetChangeToken () to get the change

token that you provide in the ChangeToken parameter of an UpdateSizeConstraintSet request.

  • Submit an 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 (https://docs.aws.amazon.com/waf/latest/developerguide/).

func (*Client) UpdateSqlInjectionMatchSet

func (c *Client) UpdateSqlInjectionMatchSet(ctx context.Context, params *UpdateSqlInjectionMatchSetInput, optFns ...func(*Options)) (*UpdateSqlInjectionMatchSetOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. 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 or custom query parameter, the name of the header or parameter.

*

TextTransformation: Which text transformation, if any, to perform on the web request before inspecting the request for snippets of malicious SQL code. You can only specify a single type of TextTransformation.

You use SqlInjectionMatchSet objects to specify which CloudFront requests that 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:

  • Submit a

CreateSqlInjectionMatchSet () request.

  • Use GetChangeToken () to get the

change token that you provide in the ChangeToken parameter of an UpdateIPSet () request.

  • Submit an 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 (https://docs.aws.amazon.com/waf/latest/developerguide/).

func (*Client) UpdateWebACL

func (c *Client) UpdateWebACL(ctx context.Context, params *UpdateWebACLInput, optFns ...func(*Options)) (*UpdateWebACLOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). 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:

  • A default action for the

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.

  • The 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.

  • For each Rule, whether

you want AWS WAF to allow requests, block requests, or count requests that match the conditions in the Rule.

  • The order in which you want AWS WAF to

evaluate the 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.

<p>To create and configure a <code>WebACL</code>, perform the

following steps:</p> <ol> <li> <p>Create and update the predicates that you want to include in <code>Rules</code>. For more information, see <a>CreateByteMatchSet</a>, <a>UpdateByteMatchSet</a>, <a>CreateIPSet</a>, <a>UpdateIPSet</a>, <a>CreateSqlInjectionMatchSet</a>, and <a>UpdateSqlInjectionMatchSet</a>.</p> </li> <li> <p>Create and update the <code>Rules</code> that you want to include in the <code>WebACL</code>. For more information, see <a>CreateRule</a> and <a>UpdateRule</a>.</p> </li> <li> <p>Create a <code>WebACL</code>. See <a>CreateWebACL</a>.</p> </li> <li> <p>Use <code>GetChangeToken</code> to get the change token that you provide in the <code>ChangeToken</code> parameter of an <a>UpdateWebACL</a> request.</p> </li> <li> <p>Submit an <code>UpdateWebACL</code> request to specify the <code>Rules</code> that you want to include in the <code>WebACL</code>, to specify the default action, and to associate the <code>WebACL</code> with a CloudFront distribution. </p> <p>The <code>ActivatedRule</code> can be a rule group. If you specify a rule group as your <code>ActivatedRule</code> , you can exclude specific rules from that rule group.</p> <p>If you already have a rule group associated with a web ACL and want to submit an <code>UpdateWebACL</code> 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 <a>ActivatedRule$ExcludedRules</a> . </p> </li> </ol> <p>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 <a>UpdateWebACL</a> request will fail because the request tries to add a REGULAR rule (the default rule type) with the specified ID, which does not exist. </p> <p>For more information about how to use the AWS WAF API to allow or block HTTP requests, see the <a href="https://docs.aws.amazon.com/waf/latest/developerguide/">AWS WAF Developer Guide</a>.</p>

func (*Client) UpdateXssMatchSet

func (c *Client) UpdateXssMatchSet(ctx context.Context, params *UpdateXssMatchSetInput, optFns ...func(*Options)) (*UpdateXssMatchSetOutput, error)

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide. For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use. Inserts or deletes XssMatchTuple () objects (filters) in an XssMatchSet (). For each XssMatchTuple object, you specify the following values:

  • Action: Whether to insert the object into or delete the object

from the array. To change an XssMatchTuple, 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 or custom query parameter, the name of the header or parameter.

  • TextTransformation: Which

text transformation, if any, to perform on the web request before inspecting the request for cross-site scripting attacks. You can only specify a single type of TextTransformation.

You use XssMatchSet objects to specify which CloudFront requests that you want to allow, block, or count. For example, if you're receiving requests that contain cross-site scripting attacks in the request body and you want to block the requests, you can create an XssMatchSet with the applicable settings, and then configure AWS WAF to block the requests. To create and configure an XssMatchSet, perform the following steps:

  • Submit a

CreateXssMatchSet () request.

  • Use GetChangeToken () to get the change

token that you provide in the ChangeToken parameter of an UpdateIPSet () request.

  • Submit an UpdateXssMatchSet request to specify the parts of web

requests that you want AWS WAF to inspect for cross-site scripting attacks.

For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/).

type CreateByteMatchSetInput

type CreateByteMatchSetInput struct {
	// The value returned by the most recent call to GetChangeToken ().
	ChangeToken *string
	// A friendly name or description of the ByteMatchSet (). You can't change Name
	// after you create a ByteMatchSet.
	Name *string
}

type CreateByteMatchSetOutput

type CreateByteMatchSetOutput struct {
	// The ChangeToken that you used to submit the CreateByteMatchSet request. You can
	// also use this value to query the status of the request. For more information,
	// see GetChangeTokenStatus ().
	ChangeToken *string
	// A ByteMatchSet () that contains no ByteMatchTuple objects.
	ByteMatchSet *types.ByteMatchSet

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type CreateGeoMatchSetInput

type CreateGeoMatchSetInput struct {
	// The value returned by the most recent call to GetChangeToken ().
	ChangeToken *string
	// A friendly name or description of the GeoMatchSet (). You can't change Name
	// after you create the GeoMatchSet.
	Name *string
}

type CreateGeoMatchSetOutput

type CreateGeoMatchSetOutput struct {
	// The ChangeToken that you used to submit the CreateGeoMatchSet request. You can
	// also use this value to query the status of the request. For more information,
	// see GetChangeTokenStatus ().
	ChangeToken *string
	// The GeoMatchSet () returned in the CreateGeoMatchSet response. The GeoMatchSet
	// contains no GeoMatchConstraints.
	GeoMatchSet *types.GeoMatchSet

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type CreateIPSetInput

type CreateIPSetInput struct {
	// A friendly name or description of the IPSet (). You can't change Name after you
	// create the IPSet.
	Name *string
	// The value returned by the most recent call to GetChangeToken ().
	ChangeToken *string
}

type CreateIPSetOutput

type CreateIPSetOutput struct {
	// The IPSet () returned in the CreateIPSet response.
	IPSet *types.IPSet
	// The ChangeToken that you used to submit the CreateIPSet request. You can also
	// use this value to query the status of the request. For more information, see
	// GetChangeTokenStatus ().
	ChangeToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type CreateRateBasedRuleInput

type CreateRateBasedRuleInput struct {
	// A friendly name or description of the RateBasedRule (). You can't change the
	// name of a RateBasedRule after you create it.
	Name *string
	//
	Tags []*types.Tag
	// A friendly name or description for the metrics for this RateBasedRule. The name
	// can contain only alphanumeric characters (A-Z, a-z, 0-9), with maximum length
	// 128 and minimum length one. It can't contain whitespace or metric names reserved
	// for AWS WAF, including "All" and "Default_Action." You can't change the name of
	// the metric after you create the RateBasedRule.
	MetricName *string
	// The maximum number of requests, which have an identical value in the field that
	// is specified by RateKey, allowed in a five-minute period. If the number of
	// requests exceeds the RateLimit and the other predicates specified in the rule
	// are also met, AWS WAF triggers the action that is specified for this rule.
	RateLimit *int64
	// The field that AWS WAF uses to determine if requests are likely arriving from a
	// single source and thus subject to rate monitoring. The only valid value for
	// RateKey is IP. IP indicates that requests that arrive from the same IP address
	// are subject to the RateLimit that is specified in the RateBasedRule.
	RateKey types.RateKey
	// The ChangeToken that you used to submit the CreateRateBasedRule request. You can
	// also use this value to query the status of the request. For more information,
	// see GetChangeTokenStatus ().
	ChangeToken *string
}

type CreateRateBasedRuleOutput

type CreateRateBasedRuleOutput struct {
	// The RateBasedRule () that is returned in the CreateRateBasedRule response.
	Rule *types.RateBasedRule
	// The ChangeToken that you used to submit the CreateRateBasedRule request. You can
	// also use this value to query the status of the request. For more information,
	// see GetChangeTokenStatus ().
	ChangeToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type CreateRegexMatchSetInput

type CreateRegexMatchSetInput struct {
	// The value returned by the most recent call to GetChangeToken ().
	ChangeToken *string
	// A friendly name or description of the RegexMatchSet (). You can't change Name
	// after you create a RegexMatchSet.
	Name *string
}

type CreateRegexMatchSetOutput

type CreateRegexMatchSetOutput struct {
	// The ChangeToken that you used to submit the CreateRegexMatchSet request. You can
	// also use this value to query the status of the request. For more information,
	// see GetChangeTokenStatus ().
	ChangeToken *string
	// A RegexMatchSet () that contains no RegexMatchTuple objects.
	RegexMatchSet *types.RegexMatchSet

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type CreateRegexPatternSetInput

type CreateRegexPatternSetInput struct {
	// A friendly name or description of the RegexPatternSet (). You can't change Name
	// after you create a RegexPatternSet.
	Name *string
	// The value returned by the most recent call to GetChangeToken ().
	ChangeToken *string
}

type CreateRegexPatternSetOutput

type CreateRegexPatternSetOutput struct {
	// A RegexPatternSet () that contains no objects.
	RegexPatternSet *types.RegexPatternSet
	// The ChangeToken that you used to submit the CreateRegexPatternSet request. You
	// can also use this value to query the status of the request. For more
	// information, see GetChangeTokenStatus ().
	ChangeToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type CreateRuleGroupInput

type CreateRuleGroupInput struct {
	//
	Tags []*types.Tag
	// A friendly name or description for the metrics for this RuleGroup. The name can
	// contain only alphanumeric characters (A-Z, a-z, 0-9), with maximum length 128
	// and minimum length one. It can't contain whitespace or metric names reserved for
	// AWS WAF, including "All" and "Default_Action." You can't change the name of the
	// metric after you create the RuleGroup.
	MetricName *string
	// A friendly name or description of the RuleGroup (). You can't change Name after
	// you create a RuleGroup.
	Name *string
	// The value returned by the most recent call to GetChangeToken ().
	ChangeToken *string
}

type CreateRuleGroupOutput

type CreateRuleGroupOutput struct {
	// The ChangeToken that you used to submit the CreateRuleGroup request. You can
	// also use this value to query the status of the request. For more information,
	// see GetChangeTokenStatus ().
	ChangeToken *string
	// An empty RuleGroup ().
	RuleGroup *types.RuleGroup

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type CreateRuleInput

type CreateRuleInput struct {
	// The value returned by the most recent call to GetChangeToken ().
	ChangeToken *string
	//
	Tags []*types.Tag
	// A friendly name or description of the Rule (). You can't change the name of a
	// Rule after you create it.
	Name *string
	// A friendly name or description for the metrics for this Rule. The name can
	// contain only alphanumeric characters (A-Z, a-z, 0-9), with maximum length 128
	// and minimum length one. It can't contain whitespace or metric names reserved for
	// AWS WAF, including "All" and "Default_Action." You can't change the name of the
	// metric after you create the Rule.
	MetricName *string
}

type CreateRuleOutput

type CreateRuleOutput struct {
	// The ChangeToken that you used to submit the CreateRule request. You can also use
	// this value to query the status of the request. For more information, see
	// GetChangeTokenStatus ().
	ChangeToken *string
	// The Rule () returned in the CreateRule response.
	Rule *types.Rule

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type CreateSizeConstraintSetInput

type CreateSizeConstraintSetInput struct {
	// A friendly name or description of the SizeConstraintSet (). You can't change
	// Name after you create a SizeConstraintSet.
	Name *string
	// The value returned by the most recent call to GetChangeToken ().
	ChangeToken *string
}

type CreateSizeConstraintSetOutput

type CreateSizeConstraintSetOutput struct {
	// A SizeConstraintSet () that contains no SizeConstraint objects.
	SizeConstraintSet *types.SizeConstraintSet
	// The ChangeToken that you used to submit the CreateSizeConstraintSet request. You
	// can also use this value to query the status of the request. For more
	// information, see GetChangeTokenStatus ().
	ChangeToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type CreateSqlInjectionMatchSetInput

type CreateSqlInjectionMatchSetInput struct {
	// The value returned by the most recent call to GetChangeToken ().
	ChangeToken *string
	// A friendly name or description for the SqlInjectionMatchSet () that you're
	// creating. You can't change Name after you create the SqlInjectionMatchSet.
	Name *string
}

A request to create a SqlInjectionMatchSet ().

type CreateSqlInjectionMatchSetOutput

type CreateSqlInjectionMatchSetOutput struct {
	// The ChangeToken that you used to submit the CreateSqlInjectionMatchSet request.
	// You can also use this value to query the status of the request. For more
	// information, see GetChangeTokenStatus ().
	ChangeToken *string
	// A SqlInjectionMatchSet ().
	SqlInjectionMatchSet *types.SqlInjectionMatchSet

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

The response to a CreateSqlInjectionMatchSet request.

type CreateWebACLInput

type CreateWebACLInput struct {
	// A friendly name or description of the WebACL (). You can't change Name after you
	// create the WebACL.
	Name *string
	// The value returned by the most recent call to GetChangeToken ().
	ChangeToken *string
	// A friendly name or description for the metrics for this WebACL.The name can
	// contain only alphanumeric characters (A-Z, a-z, 0-9), with maximum length 128
	// and minimum length one. It can't contain whitespace or metric names reserved for
	// AWS WAF, including "All" and "Default_Action." You can't change MetricName after
	// you create the WebACL.
	MetricName *string
	//
	Tags []*types.Tag
	// The action that you want AWS WAF to take when a request doesn't match the
	// criteria specified in any of the Rule objects that are associated with the
	// WebACL.
	DefaultAction *types.WafAction
}

type CreateWebACLMigrationStackInput

type CreateWebACLMigrationStackInput struct {
	// The UUID of the WAF Classic web ACL that you want to migrate to WAF v2.
	WebACLId *string
	// The name of the Amazon S3 bucket to store the CloudFormation template in. The S3
	// bucket must be configured as follows for the migration:
	//
	//     * The bucket name
	// must start with aws-waf-migration-. For example, aws-waf-migration-my-web-acl.
	//
	//
	// * The bucket must be in the Region where you are deploying the template. For
	// example, for a web ACL in us-west-2, you must use an Amazon S3 bucket in
	// us-west-2 and you must deploy the template stack to us-west-2.
	//
	//     * The bucket
	// policies must permit the migration process to write data. For listings of the
	// bucket policies, see the Examples section.
	S3BucketName *string
	// Indicates whether to exclude entities that can't be migrated or to stop the
	// migration. Set this to true to ignore unsupported entities in the web ACL during
	// the migration. Otherwise, if AWS WAF encounters unsupported entities, it stops
	// the process and throws an exception.
	IgnoreUnsupportedType *bool
}

type CreateWebACLMigrationStackOutput

type CreateWebACLMigrationStackOutput struct {
	// The URL of the template created in Amazon S3.
	S3ObjectUrl *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type CreateWebACLOutput

type CreateWebACLOutput struct {
	// The WebACL () returned in the CreateWebACL response.
	WebACL *types.WebACL
	// The ChangeToken that you used to submit the CreateWebACL request. You can also
	// use this value to query the status of the request. For more information, see
	// GetChangeTokenStatus ().
	ChangeToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type CreateXssMatchSetInput

type CreateXssMatchSetInput struct {
	// A friendly name or description for the XssMatchSet () that you're creating. You
	// can't change Name after you create the XssMatchSet.
	Name *string
	// The value returned by the most recent call to GetChangeToken ().
	ChangeToken *string
}

A request to create an XssMatchSet ().

type CreateXssMatchSetOutput

type CreateXssMatchSetOutput struct {
	// The ChangeToken that you used to submit the CreateXssMatchSet request. You can
	// also use this value to query the status of the request. For more information,
	// see GetChangeTokenStatus ().
	ChangeToken *string
	// An XssMatchSet ().
	XssMatchSet *types.XssMatchSet

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

The response to a CreateXssMatchSet request.

type DeleteByteMatchSetInput

type DeleteByteMatchSetInput struct {
	// The ByteMatchSetId of the ByteMatchSet () that you want to delete.
	// ByteMatchSetId is returned by CreateByteMatchSet () and by ListByteMatchSets ().
	ByteMatchSetId *string
	// The value returned by the most recent call to GetChangeToken ().
	ChangeToken *string
}

type DeleteByteMatchSetOutput

type DeleteByteMatchSetOutput struct {
	// The ChangeToken that you used to submit the DeleteByteMatchSet request. You can
	// also use this value to query the status of the request. For more information,
	// see GetChangeTokenStatus ().
	ChangeToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type DeleteGeoMatchSetInput

type DeleteGeoMatchSetInput struct {
	// The value returned by the most recent call to GetChangeToken ().
	ChangeToken *string
	// The GeoMatchSetID of the GeoMatchSet () that you want to delete. GeoMatchSetId
	// is returned by CreateGeoMatchSet () and by ListGeoMatchSets ().
	GeoMatchSetId *string
}

type DeleteGeoMatchSetOutput

type DeleteGeoMatchSetOutput struct {
	// The ChangeToken that you used to submit the DeleteGeoMatchSet request. You can
	// also use this value to query the status of the request. For more information,
	// see GetChangeTokenStatus ().
	ChangeToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type DeleteIPSetInput

type DeleteIPSetInput struct {
	// The IPSetId of the IPSet () that you want to delete. IPSetId is returned by
	// CreateIPSet () and by ListIPSets ().
	IPSetId *string
	// The value returned by the most recent call to GetChangeToken ().
	ChangeToken *string
}

type DeleteIPSetOutput

type DeleteIPSetOutput struct {
	// The ChangeToken that you used to submit the DeleteIPSet request. You can also
	// use this value to query the status of the request. For more information, see
	// GetChangeTokenStatus ().
	ChangeToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type DeleteLoggingConfigurationInput

type DeleteLoggingConfigurationInput struct {
	// The Amazon Resource Name (ARN) of the web ACL from which you want to delete the
	// LoggingConfiguration ().
	ResourceArn *string
}

type DeleteLoggingConfigurationOutput

type DeleteLoggingConfigurationOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type DeletePermissionPolicyInput

type DeletePermissionPolicyInput struct {
	// The Amazon Resource Name (ARN) of the RuleGroup from which you want to delete
	// the policy. The user making the request must be the owner of the RuleGroup.
	ResourceArn *string
}

type DeletePermissionPolicyOutput

type DeletePermissionPolicyOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type DeleteRateBasedRuleInput

type DeleteRateBasedRuleInput struct {
	// The RuleId of the RateBasedRule () that you want to delete. RuleId is returned
	// by CreateRateBasedRule () and by ListRateBasedRules ().
	RuleId *string
	// The value returned by the most recent call to GetChangeToken ().
	ChangeToken *string
}

type DeleteRateBasedRuleOutput

type DeleteRateBasedRuleOutput struct {
	// The ChangeToken that you used to submit the DeleteRateBasedRule request. You can
	// also use this value to query the status of the request. For more information,
	// see GetChangeTokenStatus ().
	ChangeToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type DeleteRegexMatchSetInput

type DeleteRegexMatchSetInput struct {
	// The RegexMatchSetId of the RegexMatchSet () that you want to delete.
	// RegexMatchSetId is returned by CreateRegexMatchSet () and by ListRegexMatchSets
	// ().
	RegexMatchSetId *string
	// The value returned by the most recent call to GetChangeToken ().
	ChangeToken *string
}

type DeleteRegexMatchSetOutput

type DeleteRegexMatchSetOutput struct {
	// The ChangeToken that you used to submit the DeleteRegexMatchSet request. You can
	// also use this value to query the status of the request. For more information,
	// see GetChangeTokenStatus ().
	ChangeToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type DeleteRegexPatternSetInput

type DeleteRegexPatternSetInput struct {
	// The value returned by the most recent call to GetChangeToken ().
	ChangeToken *string
	// The RegexPatternSetId of the RegexPatternSet () that you want to delete.
	// RegexPatternSetId is returned by CreateRegexPatternSet () and by
	// ListRegexPatternSets ().
	RegexPatternSetId *string
}

type DeleteRegexPatternSetOutput

type DeleteRegexPatternSetOutput struct {
	// The ChangeToken that you used to submit the DeleteRegexPatternSet request. You
	// can also use this value to query the status of the request. For more
	// information, see GetChangeTokenStatus ().
	ChangeToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type DeleteRuleGroupInput

type DeleteRuleGroupInput struct {
	// The RuleGroupId of the RuleGroup () that you want to delete. RuleGroupId is
	// returned by CreateRuleGroup () and by ListRuleGroups ().
	RuleGroupId *string
	// The value returned by the most recent call to GetChangeToken ().
	ChangeToken *string
}

type DeleteRuleGroupOutput

type DeleteRuleGroupOutput struct {
	// The ChangeToken that you used to submit the DeleteRuleGroup request. You can
	// also use this value to query the status of the request. For more information,
	// see GetChangeTokenStatus ().
	ChangeToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type DeleteRuleInput

type DeleteRuleInput struct {
	// The value returned by the most recent call to GetChangeToken ().
	ChangeToken *string
	// The RuleId of the Rule () that you want to delete. RuleId is returned by
	// CreateRule () and by ListRules ().
	RuleId *string
}

type DeleteRuleOutput

type DeleteRuleOutput struct {
	// The ChangeToken that you used to submit the DeleteRule request. You can also use
	// this value to query the status of the request. For more information, see
	// GetChangeTokenStatus ().
	ChangeToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type DeleteSizeConstraintSetInput

type DeleteSizeConstraintSetInput struct {
	// The SizeConstraintSetId of the SizeConstraintSet () that you want to delete.
	// SizeConstraintSetId is returned by CreateSizeConstraintSet () and by
	// ListSizeConstraintSets ().
	SizeConstraintSetId *string
	// The value returned by the most recent call to GetChangeToken ().
	ChangeToken *string
}

type DeleteSizeConstraintSetOutput

type DeleteSizeConstraintSetOutput struct {
	// The ChangeToken that you used to submit the DeleteSizeConstraintSet request. You
	// can also use this value to query the status of the request. For more
	// information, see GetChangeTokenStatus ().
	ChangeToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type DeleteSqlInjectionMatchSetInput

type DeleteSqlInjectionMatchSetInput struct {
	// The SqlInjectionMatchSetId of the SqlInjectionMatchSet () that you want to
	// delete. SqlInjectionMatchSetId is returned by CreateSqlInjectionMatchSet () and
	// by ListSqlInjectionMatchSets ().
	SqlInjectionMatchSetId *string
	// The value returned by the most recent call to GetChangeToken ().
	ChangeToken *string
}

A request to delete a SqlInjectionMatchSet () from AWS WAF.

type DeleteSqlInjectionMatchSetOutput

type DeleteSqlInjectionMatchSetOutput struct {
	// The ChangeToken that you used to submit the DeleteSqlInjectionMatchSet request.
	// You can also use this value to query the status of the request. For more
	// information, see GetChangeTokenStatus ().
	ChangeToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

The response to a request to delete a SqlInjectionMatchSet () from AWS WAF.

type DeleteWebACLInput

type DeleteWebACLInput struct {
	// The value returned by the most recent call to GetChangeToken ().
	ChangeToken *string
	// The WebACLId of the WebACL () that you want to delete. WebACLId is returned by
	// CreateWebACL () and by ListWebACLs ().
	WebACLId *string
}

type DeleteWebACLOutput

type DeleteWebACLOutput struct {
	// The ChangeToken that you used to submit the DeleteWebACL request. You can also
	// use this value to query the status of the request. For more information, see
	// GetChangeTokenStatus ().
	ChangeToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type DeleteXssMatchSetInput

type DeleteXssMatchSetInput struct {
	// The value returned by the most recent call to GetChangeToken ().
	ChangeToken *string
	// The XssMatchSetId of the XssMatchSet () that you want to delete. XssMatchSetId
	// is returned by CreateXssMatchSet () and by ListXssMatchSets ().
	XssMatchSetId *string
}

A request to delete an XssMatchSet () from AWS WAF.

type DeleteXssMatchSetOutput

type DeleteXssMatchSetOutput struct {
	// The ChangeToken that you used to submit the DeleteXssMatchSet request. You can
	// also use this value to query the status of the request. For more information,
	// see GetChangeTokenStatus ().
	ChangeToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

The response to a request to delete an XssMatchSet () from AWS WAF.

type EndpointResolver

type EndpointResolver interface {
	ResolveEndpoint(region string, options ResolverOptions) (aws.Endpoint, error)
}

EndpointResolver interface for resolving service endpoints.

func WithEndpointResolver

func WithEndpointResolver(awsResolver aws.EndpointResolver, fallbackResolver EndpointResolver) EndpointResolver

WithEndpointResolver returns an EndpointResolver that first delegates endpoint resolution to the awsResolver. If awsResolver returns aws.EndpointNotFoundError error, the resolver will use the the provided fallbackResolver for resolution. awsResolver and fallbackResolver must not be nil

type EndpointResolverFunc

type EndpointResolverFunc func(region string, options ResolverOptions) (aws.Endpoint, error)

EndpointResolverFunc is a helper utility that wraps a function so it satisfies the EndpointResolver interface. This is useful when you want to add additional endpoint resolving logic, or stub out specific endpoints with custom values.

func (EndpointResolverFunc) ResolveEndpoint

func (fn EndpointResolverFunc) ResolveEndpoint(region string, options ResolverOptions) (endpoint aws.Endpoint, err error)

type GetByteMatchSetInput

type GetByteMatchSetInput struct {
	// The ByteMatchSetId of the ByteMatchSet () that you want to get. ByteMatchSetId
	// is returned by CreateByteMatchSet () and by ListByteMatchSets ().
	ByteMatchSetId *string
}

type GetByteMatchSetOutput

type GetByteMatchSetOutput struct {
	// Information about the ByteMatchSet () that you specified in the GetByteMatchSet
	// request. For more information, see the following topics:
	//
	//     * ByteMatchSet ():
	// Contains ByteMatchSetId, ByteMatchTuples, and Name
	//
	//     * ByteMatchTuples:
	// Contains an array of ByteMatchTuple () objects. Each ByteMatchTuple object
	// contains FieldToMatch (), PositionalConstraint, TargetString, and
	// TextTransformation
	//
	//     * FieldToMatch (): Contains Data and Type
	ByteMatchSet *types.ByteMatchSet

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type GetChangeTokenInput

type GetChangeTokenInput struct {
}

type GetChangeTokenOutput

type GetChangeTokenOutput struct {
	// The ChangeToken that you used in the request. Use this value in a
	// GetChangeTokenStatus request to get the current status of the request.
	ChangeToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type GetChangeTokenStatusInput

type GetChangeTokenStatusInput struct {
	// The change token for which you want to get the status. This change token was
	// previously returned in the GetChangeToken response.
	ChangeToken *string
}

type GetChangeTokenStatusOutput

type GetChangeTokenStatusOutput struct {
	// The status of the change token.
	ChangeTokenStatus types.ChangeTokenStatus

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type GetGeoMatchSetInput

type GetGeoMatchSetInput struct {
	// The GeoMatchSetId of the GeoMatchSet () that you want to get. GeoMatchSetId is
	// returned by CreateGeoMatchSet () and by ListGeoMatchSets ().
	GeoMatchSetId *string
}

type GetGeoMatchSetOutput

type GetGeoMatchSetOutput struct {
	// Information about the GeoMatchSet () that you specified in the GetGeoMatchSet
	// request. This includes the Type, which for a GeoMatchContraint is always
	// Country, as well as the Value, which is the identifier for a specific country.
	GeoMatchSet *types.GeoMatchSet

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type GetIPSetInput

type GetIPSetInput struct {
	// The IPSetId of the IPSet () that you want to get. IPSetId is returned by
	// CreateIPSet () and by ListIPSets ().
	IPSetId *string
}

type GetIPSetOutput

type GetIPSetOutput struct {
	// Information about the IPSet () that you specified in the GetIPSet request. For
	// more information, see the following topics:
	//
	//     * IPSet (): Contains
	// IPSetDescriptors, IPSetId, and Name
	//
	//     * IPSetDescriptors: Contains an array
	// of IPSetDescriptor () objects. Each IPSetDescriptor object contains Type and
	// Value
	IPSet *types.IPSet

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type GetLoggingConfigurationInput

type GetLoggingConfigurationInput struct {
	// The Amazon Resource Name (ARN) of the web ACL for which you want to get the
	// LoggingConfiguration ().
	ResourceArn *string
}

type GetLoggingConfigurationOutput

type GetLoggingConfigurationOutput struct {
	// The LoggingConfiguration () for the specified web ACL.
	LoggingConfiguration *types.LoggingConfiguration

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type GetPermissionPolicyInput

type GetPermissionPolicyInput struct {
	// The Amazon Resource Name (ARN) of the RuleGroup for which you want to get the
	// policy.
	ResourceArn *string
}

type GetPermissionPolicyOutput

type GetPermissionPolicyOutput struct {
	// The IAM policy attached to the specified RuleGroup.
	Policy *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type GetRateBasedRuleInput

type GetRateBasedRuleInput struct {
	// The RuleId of the RateBasedRule () that you want to get. RuleId is returned by
	// CreateRateBasedRule () and by ListRateBasedRules ().
	RuleId *string
}

type GetRateBasedRuleManagedKeysInput

type GetRateBasedRuleManagedKeysInput struct {
	// A null value and not currently used. Do not include this in your request.
	NextMarker *string
	// The RuleId of the RateBasedRule () for which you want to get a list of
	// ManagedKeys. RuleId is returned by CreateRateBasedRule () and by
	// ListRateBasedRules ().
	RuleId *string
}

type GetRateBasedRuleManagedKeysOutput

type GetRateBasedRuleManagedKeysOutput struct {
	// An array of IP addresses that currently are blocked by the specified
	// RateBasedRule ().
	ManagedKeys []*string
	// A null value and not currently used.
	NextMarker *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type GetRateBasedRuleOutput

type GetRateBasedRuleOutput struct {
	// Information about the RateBasedRule () that you specified in the
	// GetRateBasedRule request.
	Rule *types.RateBasedRule

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type GetRegexMatchSetInput

type GetRegexMatchSetInput struct {
	// The RegexMatchSetId of the RegexMatchSet () that you want to get.
	// RegexMatchSetId is returned by CreateRegexMatchSet () and by ListRegexMatchSets
	// ().
	RegexMatchSetId *string
}

type GetRegexMatchSetOutput

type GetRegexMatchSetOutput struct {
	// Information about the RegexMatchSet () that you specified in the
	// GetRegexMatchSet request. For more information, see RegexMatchTuple ().
	RegexMatchSet *types.RegexMatchSet

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type GetRegexPatternSetInput

type GetRegexPatternSetInput struct {
	// The RegexPatternSetId of the RegexPatternSet () that you want to get.
	// RegexPatternSetId is returned by CreateRegexPatternSet () and by
	// ListRegexPatternSets ().
	RegexPatternSetId *string
}

type GetRegexPatternSetOutput

type GetRegexPatternSetOutput struct {
	// Information about the RegexPatternSet () that you specified in the
	// GetRegexPatternSet request, including the identifier of the pattern set and the
	// regular expression patterns you want AWS WAF to search for.
	RegexPatternSet *types.RegexPatternSet

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type GetRuleGroupInput

type GetRuleGroupInput struct {
	// The RuleGroupId of the RuleGroup () that you want to get. RuleGroupId is
	// returned by CreateRuleGroup () and by ListRuleGroups ().
	RuleGroupId *string
}

type GetRuleGroupOutput

type GetRuleGroupOutput struct {
	// Information about the RuleGroup () that you specified in the GetRuleGroup
	// request.
	RuleGroup *types.RuleGroup

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type GetRuleInput

type GetRuleInput struct {
	// The RuleId of the Rule () that you want to get. RuleId is returned by CreateRule
	// () and by ListRules ().
	RuleId *string
}

type GetRuleOutput

type GetRuleOutput struct {
	// Information about the Rule () that you specified in the GetRule request. For
	// more information, see the following topics:
	//
	//     * Rule (): Contains MetricName,
	// Name, an array of Predicate objects, and RuleId
	//
	//     * Predicate (): Each
	// Predicate object contains DataId, Negated, and Type
	Rule *types.Rule

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type GetSampledRequestsInput

type GetSampledRequestsInput struct {
	// The start date and time and the end date and time of the range for which you
	// want GetSampledRequests to return a sample of requests. You must specify the
	// times in Coordinated Universal Time (UTC) format. UTC format includes the
	// special designator, Z. For example, "2016-09-27T14:50Z". You can specify any
	// time range in the previous three hours.
	TimeWindow *types.TimeWindow
	// The WebACLId of the WebACL for which you want GetSampledRequests to return a
	// sample of requests.
	WebAclId *string
	// RuleId is one of three values:
	//
	//     * The RuleId of the Rule or the RuleGroupId
	// of the RuleGroup for which you want GetSampledRequests to return a sample of
	// requests.
	//
	//     * Default_Action, which causes GetSampledRequests to return a
	// sample of the requests that didn't match any of the rules in the specified
	// WebACL.
	RuleId *string
	// The number of requests that you want AWS WAF to return from among the first
	// 5,000 requests that your AWS resource received during the time range. If your
	// resource received fewer requests than the value of MaxItems, GetSampledRequests
	// returns information about all of them.
	MaxItems *int64
}

type GetSampledRequestsOutput

type GetSampledRequestsOutput struct {
	// Usually, TimeWindow is the time range that you specified in the
	// GetSampledRequests request. However, if your AWS resource received more than
	// 5,000 requests during the time range that you specified in the request,
	// GetSampledRequests returns the time range for the first 5,000 requests. Times
	// are in Coordinated Universal Time (UTC) format.
	TimeWindow *types.TimeWindow
	// A complex type that contains detailed information about each of the requests in
	// the sample.
	SampledRequests []*types.SampledHTTPRequest
	// The total number of requests from which GetSampledRequests got a sample of
	// MaxItems requests. If PopulationSize is less than MaxItems, the sample includes
	// every request that your AWS resource received during the specified time range.
	PopulationSize *int64

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type GetSizeConstraintSetInput

type GetSizeConstraintSetInput struct {
	// The SizeConstraintSetId of the SizeConstraintSet () that you want to get.
	// SizeConstraintSetId is returned by CreateSizeConstraintSet () and by
	// ListSizeConstraintSets ().
	SizeConstraintSetId *string
}

type GetSizeConstraintSetOutput

type GetSizeConstraintSetOutput struct {
	// Information about the SizeConstraintSet () that you specified in the
	// GetSizeConstraintSet request. For more information, see the following topics:
	//
	//
	// * SizeConstraintSet (): Contains SizeConstraintSetId, SizeConstraints, and
	// Name
	//
	//     * SizeConstraints: Contains an array of SizeConstraint () objects.
	// Each SizeConstraint object contains FieldToMatch (), TextTransformation,
	// ComparisonOperator, and Size
	//
	//     * FieldToMatch (): Contains Data and Type
	SizeConstraintSet *types.SizeConstraintSet

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type GetSqlInjectionMatchSetInput

type GetSqlInjectionMatchSetInput struct {
	// The SqlInjectionMatchSetId of the SqlInjectionMatchSet () that you want to get.
	// SqlInjectionMatchSetId is returned by CreateSqlInjectionMatchSet () and by
	// ListSqlInjectionMatchSets ().
	SqlInjectionMatchSetId *string
}

A request to get a SqlInjectionMatchSet ().

type GetSqlInjectionMatchSetOutput

type GetSqlInjectionMatchSetOutput struct {
	// Information about the SqlInjectionMatchSet () that you specified in the
	// GetSqlInjectionMatchSet request. For more information, see the following
	// topics:
	//
	//     * SqlInjectionMatchSet (): Contains Name, SqlInjectionMatchSetId,
	// and an array of SqlInjectionMatchTuple objects
	//
	//     * SqlInjectionMatchTuple ():
	// Each SqlInjectionMatchTuple object contains FieldToMatch and
	// TextTransformation
	//
	//     * FieldToMatch (): Contains Data and Type
	SqlInjectionMatchSet *types.SqlInjectionMatchSet

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

The response to a GetSqlInjectionMatchSet () request.

type GetWebACLInput

type GetWebACLInput struct {
	// The WebACLId of the WebACL () that you want to get. WebACLId is returned by
	// CreateWebACL () and by ListWebACLs ().
	WebACLId *string
}

type GetWebACLOutput

type GetWebACLOutput struct {
	// Information about the WebACL () that you specified in the GetWebACL request. For
	// more information, see the following topics:
	//
	//     * WebACL (): Contains
	// DefaultAction, MetricName, Name, an array of Rule objects, and WebACLId
	//
	//     *
	// DefaultAction (Data type is WafAction ()): Contains Type
	//
	//     * Rules: Contains
	// an array of ActivatedRule objects, which contain Action, Priority, and RuleId
	//
	//
	// * Action: Contains Type
	WebACL *types.WebACL

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type GetXssMatchSetInput

type GetXssMatchSetInput struct {
	// The XssMatchSetId of the XssMatchSet () that you want to get. XssMatchSetId is
	// returned by CreateXssMatchSet () and by ListXssMatchSets ().
	XssMatchSetId *string
}

A request to get an XssMatchSet ().

type GetXssMatchSetOutput

type GetXssMatchSetOutput struct {
	// Information about the XssMatchSet () that you specified in the GetXssMatchSet
	// request. For more information, see the following topics:
	//
	//     * XssMatchSet ():
	// Contains Name, XssMatchSetId, and an array of XssMatchTuple objects
	//
	//     *
	// XssMatchTuple (): Each XssMatchTuple object contains FieldToMatch and
	// TextTransformation
	//
	//     * FieldToMatch (): Contains Data and Type
	XssMatchSet *types.XssMatchSet

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

The response to a GetXssMatchSet () request.

type HTTPClient

type HTTPClient interface {
	Do(*http.Request) (*http.Response, error)
}

type HTTPSignerV4

type HTTPSignerV4 interface {
	SignHTTP(ctx context.Context, credentials aws.Credentials, r *http.Request, payloadHash string, service string, region string, signingTime time.Time) error
}

type ListActivatedRulesInRuleGroupInput

type ListActivatedRulesInRuleGroupInput struct {
	// The RuleGroupId of the RuleGroup () for which you want to get a list of
	// ActivatedRule () objects.
	RuleGroupId *string
	// Specifies the number of ActivatedRules that you want AWS WAF to return for this
	// request. If you have more ActivatedRules than the number that you specify for
	// Limit, the response includes a NextMarker value that you can use to get another
	// batch of ActivatedRules.
	Limit *int32
	// If you specify a value for Limit and you have more ActivatedRules than the value
	// of Limit, AWS WAF returns a NextMarker value in the response that allows you to
	// list another group of ActivatedRules. For the second and subsequent
	// ListActivatedRulesInRuleGroup requests, specify the value of NextMarker from the
	// previous response to get information about another batch of ActivatedRules.
	NextMarker *string
}

type ListActivatedRulesInRuleGroupOutput

type ListActivatedRulesInRuleGroupOutput struct {
	// An array of ActivatedRules objects.
	ActivatedRules []*types.ActivatedRule
	// If you have more ActivatedRules than the number that you specified for Limit in
	// the request, the response includes a NextMarker value. To list more
	// ActivatedRules, submit another ListActivatedRulesInRuleGroup request, and
	// specify the NextMarker value from the response in the NextMarker value in the
	// next request.
	NextMarker *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type ListByteMatchSetsInput

type ListByteMatchSetsInput struct {
	// If you specify a value for Limit and you have more ByteMatchSets than the value
	// of Limit, AWS WAF returns a NextMarker value in the response that allows you to
	// list another group of ByteMatchSets. For the second and subsequent
	// ListByteMatchSets requests, specify the value of NextMarker from the previous
	// response to get information about another batch of ByteMatchSets.
	NextMarker *string
	// Specifies the number of ByteMatchSet objects that you want AWS WAF to return for
	// this request. If you have more ByteMatchSets objects than the number you specify
	// for Limit, the response includes a NextMarker value that you can use to get
	// another batch of ByteMatchSet objects.
	Limit *int32
}

type ListByteMatchSetsOutput

type ListByteMatchSetsOutput struct {
	// If you have more ByteMatchSet objects than the number that you specified for
	// Limit in the request, the response includes a NextMarker value. To list more
	// ByteMatchSet objects, submit another ListByteMatchSets request, and specify the
	// NextMarker value from the response in the NextMarker value in the next request.
	NextMarker *string
	// An array of ByteMatchSetSummary () objects.
	ByteMatchSets []*types.ByteMatchSetSummary

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type ListGeoMatchSetsInput

type ListGeoMatchSetsInput struct {
	// If you specify a value for Limit and you have more GeoMatchSets than the value
	// of Limit, AWS WAF returns a NextMarker value in the response that allows you to
	// list another group of GeoMatchSet objects. For the second and subsequent
	// ListGeoMatchSets requests, specify the value of NextMarker from the previous
	// response to get information about another batch of GeoMatchSet objects.
	NextMarker *string
	// Specifies the number of GeoMatchSet objects that you want AWS WAF to return for
	// this request. If you have more GeoMatchSet objects than the number you specify
	// for Limit, the response includes a NextMarker value that you can use to get
	// another batch of GeoMatchSet objects.
	Limit *int32
}

type ListGeoMatchSetsOutput

type ListGeoMatchSetsOutput struct {
	// If you have more GeoMatchSet objects than the number that you specified for
	// Limit in the request, the response includes a NextMarker value. To list more
	// GeoMatchSet objects, submit another ListGeoMatchSets request, and specify the
	// NextMarker value from the response in the NextMarker value in the next request.
	NextMarker *string
	// An array of GeoMatchSetSummary () objects.
	GeoMatchSets []*types.GeoMatchSetSummary

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type ListIPSetsInput

type ListIPSetsInput struct {
	// AWS WAF returns a NextMarker value in the response that allows you to list
	// another group of IPSets. For the second and subsequent ListIPSets requests,
	// specify the value of NextMarker from the previous response to get information
	// about another batch of IPSets.
	NextMarker *string
	// Specifies the number of IPSet objects that you want AWS WAF to return for this
	// request. If you have more IPSet objects than the number you specify for Limit,
	// the response includes a NextMarker value that you can use to get another batch
	// of IPSet objects.
	Limit *int32
}

type ListIPSetsOutput

type ListIPSetsOutput struct {
	// An array of IPSetSummary () objects.
	IPSets []*types.IPSetSummary
	// To list more IPSet objects, submit another ListIPSets request, and in the next
	// request use the NextMarker response value as the NextMarker value.
	NextMarker *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type ListLoggingConfigurationsInput

type ListLoggingConfigurationsInput struct {
	// If you specify a value for Limit and you have more LoggingConfigurations than
	// the value of Limit, AWS WAF returns a NextMarker value in the response that
	// allows you to list another group of LoggingConfigurations. For the second and
	// subsequent ListLoggingConfigurations requests, specify the value of NextMarker
	// from the previous response to get information about another batch of
	// ListLoggingConfigurations.
	NextMarker *string
	// Specifies the number of LoggingConfigurations that you want AWS WAF to return
	// for this request. If you have more LoggingConfigurations than the number that
	// you specify for Limit, the response includes a NextMarker value that you can use
	// to get another batch of LoggingConfigurations.
	Limit *int32
}

type ListLoggingConfigurationsOutput

type ListLoggingConfigurationsOutput struct {
	// An array of LoggingConfiguration () objects.
	LoggingConfigurations []*types.LoggingConfiguration
	// If you have more LoggingConfigurations than the number that you specified for
	// Limit in the request, the response includes a NextMarker value. To list more
	// LoggingConfigurations, submit another ListLoggingConfigurations request, and
	// specify the NextMarker value from the response in the NextMarker value in the
	// next request.
	NextMarker *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type ListRateBasedRulesInput

type ListRateBasedRulesInput struct {
	// Specifies the number of Rules that you want AWS WAF to return for this request.
	// If you have more Rules than the number that you specify for Limit, the response
	// includes a NextMarker value that you can use to get another batch of Rules.
	Limit *int32
	// If you specify a value for Limit and you have more Rules than the value of
	// Limit, AWS WAF returns a NextMarker value in the response that allows you to
	// list another group of Rules. For the second and subsequent ListRateBasedRules
	// requests, specify the value of NextMarker from the previous response to get
	// information about another batch of Rules.
	NextMarker *string
}

type ListRateBasedRulesOutput

type ListRateBasedRulesOutput struct {
	// If you have more Rules than the number that you specified for Limit in the
	// request, the response includes a NextMarker value. To list more Rules, submit
	// another ListRateBasedRules request, and specify the NextMarker value from the
	// response in the NextMarker value in the next request.
	NextMarker *string
	// An array of RuleSummary () objects.
	Rules []*types.RuleSummary

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type ListRegexMatchSetsInput

type ListRegexMatchSetsInput struct {
	// If you specify a value for Limit and you have more RegexMatchSet objects than
	// the value of Limit, AWS WAF returns a NextMarker value in the response that
	// allows you to list another group of ByteMatchSets. For the second and subsequent
	// ListRegexMatchSets requests, specify the value of NextMarker from the previous
	// response to get information about another batch of RegexMatchSet objects.
	NextMarker *string
	// Specifies the number of RegexMatchSet objects that you want AWS WAF to return
	// for this request. If you have more RegexMatchSet objects than the number you
	// specify for Limit, the response includes a NextMarker value that you can use to
	// get another batch of RegexMatchSet objects.
	Limit *int32
}

type ListRegexMatchSetsOutput

type ListRegexMatchSetsOutput struct {
	// If you have more RegexMatchSet objects than the number that you specified for
	// Limit in the request, the response includes a NextMarker value. To list more
	// RegexMatchSet objects, submit another ListRegexMatchSets request, and specify
	// the NextMarker value from the response in the NextMarker value in the next
	// request.
	NextMarker *string
	// An array of RegexMatchSetSummary () objects.
	RegexMatchSets []*types.RegexMatchSetSummary

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type ListRegexPatternSetsInput

type ListRegexPatternSetsInput struct {
	// If you specify a value for Limit and you have more RegexPatternSet objects than
	// the value of Limit, AWS WAF returns a NextMarker value in the response that
	// allows you to list another group of RegexPatternSet objects. For the second and
	// subsequent ListRegexPatternSets requests, specify the value of NextMarker from
	// the previous response to get information about another batch of RegexPatternSet
	// objects.
	NextMarker *string
	// Specifies the number of RegexPatternSet objects that you want AWS WAF to return
	// for this request. If you have more RegexPatternSet objects than the number you
	// specify for Limit, the response includes a NextMarker value that you can use to
	// get another batch of RegexPatternSet objects.
	Limit *int32
}

type ListRegexPatternSetsOutput

type ListRegexPatternSetsOutput struct {
	// If you have more RegexPatternSet objects than the number that you specified for
	// Limit in the request, the response includes a NextMarker value. To list more
	// RegexPatternSet objects, submit another ListRegexPatternSets request, and
	// specify the NextMarker value from the response in the NextMarker value in the
	// next request.
	NextMarker *string
	// An array of RegexPatternSetSummary () objects.
	RegexPatternSets []*types.RegexPatternSetSummary

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type ListRuleGroupsInput

type ListRuleGroupsInput struct {
	// If you specify a value for Limit and you have more RuleGroups than the value of
	// Limit, AWS WAF returns a NextMarker value in the response that allows you to
	// list another group of RuleGroups. For the second and subsequent ListRuleGroups
	// requests, specify the value of NextMarker from the previous response to get
	// information about another batch of RuleGroups.
	NextMarker *string
	// Specifies the number of RuleGroups that you want AWS WAF to return for this
	// request. If you have more RuleGroups than the number that you specify for Limit,
	// the response includes a NextMarker value that you can use to get another batch
	// of RuleGroups.
	Limit *int32
}

type ListRuleGroupsOutput

type ListRuleGroupsOutput struct {
	// An array of RuleGroup () objects.
	RuleGroups []*types.RuleGroupSummary
	// If you have more RuleGroups than the number that you specified for Limit in the
	// request, the response includes a NextMarker value. To list more RuleGroups,
	// submit another ListRuleGroups request, and specify the NextMarker value from the
	// response in the NextMarker value in the next request.
	NextMarker *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type ListRulesInput

type ListRulesInput struct {
	// If you specify a value for Limit and you have more Rules than the value of
	// Limit, AWS WAF returns a NextMarker value in the response that allows you to
	// list another group of Rules. For the second and subsequent ListRules requests,
	// specify the value of NextMarker from the previous response to get information
	// about another batch of Rules.
	NextMarker *string
	// Specifies the number of Rules that you want AWS WAF to return for this request.
	// If you have more Rules than the number that you specify for Limit, the response
	// includes a NextMarker value that you can use to get another batch of Rules.
	Limit *int32
}

type ListRulesOutput

type ListRulesOutput struct {
	// An array of RuleSummary () objects.
	Rules []*types.RuleSummary
	// If you have more Rules than the number that you specified for Limit in the
	// request, the response includes a NextMarker value. To list more Rules, submit
	// another ListRules request, and specify the NextMarker value from the response in
	// the NextMarker value in the next request.
	NextMarker *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type ListSizeConstraintSetsInput

type ListSizeConstraintSetsInput struct {
	// If you specify a value for Limit and you have more SizeConstraintSets than the
	// value of Limit, AWS WAF returns a NextMarker value in the response that allows
	// you to list another group of SizeConstraintSets. For the second and subsequent
	// ListSizeConstraintSets requests, specify the value of NextMarker from the
	// previous response to get information about another batch of SizeConstraintSets.
	NextMarker *string
	// Specifies the number of SizeConstraintSet objects that you want AWS WAF to
	// return for this request. If you have more SizeConstraintSets objects than the
	// number you specify for Limit, the response includes a NextMarker value that you
	// can use to get another batch of SizeConstraintSet objects.
	Limit *int32
}

type ListSizeConstraintSetsOutput

type ListSizeConstraintSetsOutput struct {
	// An array of SizeConstraintSetSummary () objects.
	SizeConstraintSets []*types.SizeConstraintSetSummary
	// If you have more SizeConstraintSet objects than the number that you specified
	// for Limit in the request, the response includes a NextMarker value. To list more
	// SizeConstraintSet objects, submit another ListSizeConstraintSets request, and
	// specify the NextMarker value from the response in the NextMarker value in the
	// next request.
	NextMarker *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type ListSqlInjectionMatchSetsInput

type ListSqlInjectionMatchSetsInput struct {
	// If you specify a value for Limit and you have more SqlInjectionMatchSet ()
	// objects than the value of Limit, AWS WAF returns a NextMarker value in the
	// response that allows you to list another group of SqlInjectionMatchSets. For the
	// second and subsequent ListSqlInjectionMatchSets requests, specify the value of
	// NextMarker from the previous response to get information about another batch of
	// SqlInjectionMatchSets.
	NextMarker *string
	// Specifies the number of SqlInjectionMatchSet () objects that you want AWS WAF to
	// return for this request. If you have more SqlInjectionMatchSet objects than the
	// number you specify for Limit, the response includes a NextMarker value that you
	// can use to get another batch of Rules.
	Limit *int32
}

A request to list the SqlInjectionMatchSet () objects created by the current AWS account.

type ListSqlInjectionMatchSetsOutput

type ListSqlInjectionMatchSetsOutput struct {
	// An array of SqlInjectionMatchSetSummary () objects.
	SqlInjectionMatchSets []*types.SqlInjectionMatchSetSummary
	// If you have more SqlInjectionMatchSet () objects than the number that you
	// specified for Limit in the request, the response includes a NextMarker value. To
	// list more SqlInjectionMatchSet objects, submit another ListSqlInjectionMatchSets
	// request, and specify the NextMarker value from the response in the NextMarker
	// value in the next request.
	NextMarker *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

The response to a ListSqlInjectionMatchSets () request.

type ListSubscribedRuleGroupsInput

type ListSubscribedRuleGroupsInput struct {
	// Specifies the number of subscribed rule groups that you want AWS WAF to return
	// for this request. If you have more objects than the number you specify for
	// Limit, the response includes a NextMarker value that you can use to get another
	// batch of objects.
	Limit *int32
	// If you specify a value for Limit and you have more ByteMatchSetssubscribed rule
	// groups than the value of Limit, AWS WAF returns a NextMarker value in the
	// response that allows you to list another group of subscribed rule groups. For
	// the second and subsequent ListSubscribedRuleGroupsRequest requests, specify the
	// value of NextMarker from the previous response to get information about another
	// batch of subscribed rule groups.
	NextMarker *string
}

type ListSubscribedRuleGroupsOutput

type ListSubscribedRuleGroupsOutput struct {
	// If you have more objects than the number that you specified for Limit in the
	// request, the response includes a NextMarker value. To list more objects, submit
	// another ListSubscribedRuleGroups request, and specify the NextMarker value from
	// the response in the NextMarker value in the next request.
	NextMarker *string
	// An array of RuleGroup () objects.
	RuleGroups []*types.SubscribedRuleGroupSummary

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type ListTagsForResourceInput

type ListTagsForResourceInput struct {
	//
	NextMarker *string
	//
	ResourceARN *string
	//
	Limit *int32
}

type ListTagsForResourceOutput

type ListTagsForResourceOutput struct {
	//
	TagInfoForResource *types.TagInfoForResource
	//
	NextMarker *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type ListWebACLsInput

type ListWebACLsInput struct {
	// Specifies the number of WebACL objects that you want AWS WAF to return for this
	// request. If you have more WebACL objects than the number that you specify for
	// Limit, the response includes a NextMarker value that you can use to get another
	// batch of WebACL objects.
	Limit *int32
	// If you specify a value for Limit and you have more WebACL objects than the
	// number that you specify for Limit, AWS WAF returns a NextMarker value in the
	// response that allows you to list another group of WebACL objects. For the second
	// and subsequent ListWebACLs requests, specify the value of NextMarker from the
	// previous response to get information about another batch of WebACL objects.
	NextMarker *string
}

type ListWebACLsOutput

type ListWebACLsOutput struct {
	// An array of WebACLSummary () objects.
	WebACLs []*types.WebACLSummary
	// If you have more WebACL objects than the number that you specified for Limit in
	// the request, the response includes a NextMarker value. To list more WebACL
	// objects, submit another ListWebACLs request, and specify the NextMarker value
	// from the response in the NextMarker value in the next request.
	NextMarker *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type ListXssMatchSetsInput

type ListXssMatchSetsInput struct {
	// If you specify a value for Limit and you have more XssMatchSet () objects than
	// the value of Limit, AWS WAF returns a NextMarker value in the response that
	// allows you to list another group of XssMatchSets. For the second and subsequent
	// ListXssMatchSets requests, specify the value of NextMarker from the previous
	// response to get information about another batch of XssMatchSets.
	NextMarker *string
	// Specifies the number of XssMatchSet () objects that you want AWS WAF to return
	// for this request. If you have more XssMatchSet objects than the number you
	// specify for Limit, the response includes a NextMarker value that you can use to
	// get another batch of Rules.
	Limit *int32
}

A request to list the XssMatchSet () objects created by the current AWS account.

type ListXssMatchSetsOutput

type ListXssMatchSetsOutput struct {
	// If you have more XssMatchSet () objects than the number that you specified for
	// Limit in the request, the response includes a NextMarker value. To list more
	// XssMatchSet objects, submit another ListXssMatchSets request, and specify the
	// NextMarker value from the response in the NextMarker value in the next request.
	NextMarker *string
	// An array of XssMatchSetSummary () objects.
	XssMatchSets []*types.XssMatchSetSummary

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

The response to a ListXssMatchSets () request.

type Options

type Options struct {
	// Set of options to modify how an operation is invoked. These apply to all
	// operations invoked for this client. Use functional options on operation call to
	// modify this list for per operation behavior.
	APIOptions []func(*middleware.Stack) error

	// The credentials object to use when signing requests.
	Credentials aws.CredentialsProvider

	// The endpoint options to be used when attempting to resolve an endpoint.
	EndpointOptions ResolverOptions

	// The service endpoint resolver.
	EndpointResolver EndpointResolver

	// Signature Version 4 (SigV4) Signer
	HTTPSignerV4 HTTPSignerV4

	// The region to send requests to. (Required)
	Region string

	// Retryer guides how HTTP requests should be retried in case of recoverable
	// failures. When nil the API client will use a default retryer.
	Retryer retry.Retryer

	// The HTTP client to invoke API calls with. Defaults to client's default HTTP
	// implementation if nil.
	HTTPClient HTTPClient
}

func (Options) Copy

func (o Options) Copy() Options

Copy creates a clone where the APIOptions list is deep copied.

func (Options) GetCredentials

func (o Options) GetCredentials() aws.CredentialsProvider

func (Options) GetEndpointOptions

func (o Options) GetEndpointOptions() ResolverOptions

func (Options) GetEndpointResolver

func (o Options) GetEndpointResolver() EndpointResolver

func (Options) GetHTTPSignerV4

func (o Options) GetHTTPSignerV4() HTTPSignerV4

func (Options) GetRegion

func (o Options) GetRegion() string

func (Options) GetRetryer

func (o Options) GetRetryer() retry.Retryer

type PutLoggingConfigurationInput

type PutLoggingConfigurationInput struct {
	// The Amazon Kinesis Data Firehose that contains the inspected traffic
	// information, the redacted fields details, and the Amazon Resource Name (ARN) of
	// the web ACL to monitor. When specifying Type in RedactedFields, you must use one
	// of the following values: URI, QUERY_STRING, HEADER, or METHOD.
	LoggingConfiguration *types.LoggingConfiguration
}

type PutLoggingConfigurationOutput

type PutLoggingConfigurationOutput struct {
	// The LoggingConfiguration () that you submitted in the request.
	LoggingConfiguration *types.LoggingConfiguration

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type PutPermissionPolicyInput

type PutPermissionPolicyInput struct {
	// The policy to attach to the specified RuleGroup.
	Policy *string
	// The Amazon Resource Name (ARN) of the RuleGroup to which you want to attach the
	// policy.
	ResourceArn *string
}

type PutPermissionPolicyOutput

type PutPermissionPolicyOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type ResolveEndpoint

type ResolveEndpoint struct {
	Resolver EndpointResolver
	Options  ResolverOptions
}

func (*ResolveEndpoint) HandleSerialize

func (*ResolveEndpoint) ID

func (*ResolveEndpoint) ID() string

type ResolveEndpointMiddlewareOptions

type ResolveEndpointMiddlewareOptions interface {
	GetEndpointResolver() EndpointResolver
	GetEndpointOptions() ResolverOptions
}

type ResolverOptions

type ResolverOptions = internalendpoints.Options

ResolverOptions is the service endpoint resolver options

type TagResourceInput

type TagResourceInput struct {
	//
	Tags []*types.Tag
	//
	ResourceARN *string
}

type TagResourceOutput

type TagResourceOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type UntagResourceInput

type UntagResourceInput struct {
	//
	TagKeys []*string
	//
	ResourceARN *string
}

type UntagResourceOutput

type UntagResourceOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type UpdateByteMatchSetInput

type UpdateByteMatchSetInput struct {
	// An array of ByteMatchSetUpdate objects that you want to insert into or delete
	// from a ByteMatchSet (). For more information, see the applicable data types:
	//
	//
	// * ByteMatchSetUpdate (): Contains Action and ByteMatchTuple
	//
	//     *
	// ByteMatchTuple (): Contains FieldToMatch, PositionalConstraint, TargetString,
	// and TextTransformation
	//
	//     * FieldToMatch (): Contains Data and Type
	Updates []*types.ByteMatchSetUpdate
	// The value returned by the most recent call to GetChangeToken ().
	ChangeToken *string
	// The ByteMatchSetId of the ByteMatchSet () that you want to update.
	// ByteMatchSetId is returned by CreateByteMatchSet () and by ListByteMatchSets ().
	ByteMatchSetId *string
}

type UpdateByteMatchSetOutput

type UpdateByteMatchSetOutput struct {
	// The ChangeToken that you used to submit the UpdateByteMatchSet request. You can
	// also use this value to query the status of the request. For more information,
	// see GetChangeTokenStatus ().
	ChangeToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type UpdateGeoMatchSetInput

type UpdateGeoMatchSetInput struct {
	// An array of GeoMatchSetUpdate objects that you want to insert into or delete
	// from an GeoMatchSet (). For more information, see the applicable data types:
	//
	//
	// * GeoMatchSetUpdate (): Contains Action and GeoMatchConstraint
	//
	//     *
	// GeoMatchConstraint (): Contains Type and Value You can have only one Type and
	// Value per GeoMatchConstraint. To add multiple countries, include multiple
	// GeoMatchSetUpdate objects in your request.
	Updates []*types.GeoMatchSetUpdate
	// The value returned by the most recent call to GetChangeToken ().
	ChangeToken *string
	// The GeoMatchSetId of the GeoMatchSet () that you want to update. GeoMatchSetId
	// is returned by CreateGeoMatchSet () and by ListGeoMatchSets ().
	GeoMatchSetId *string
}

type UpdateGeoMatchSetOutput

type UpdateGeoMatchSetOutput struct {
	// The ChangeToken that you used to submit the UpdateGeoMatchSet request. You can
	// also use this value to query the status of the request. For more information,
	// see GetChangeTokenStatus ().
	ChangeToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type UpdateIPSetInput

type UpdateIPSetInput struct {
	// The IPSetId of the IPSet () that you want to update. IPSetId is returned by
	// CreateIPSet () and by ListIPSets ().
	IPSetId *string
	// An array of IPSetUpdate objects that you want to insert into or delete from an
	// IPSet (). For more information, see the applicable data types:
	//
	//     *
	// IPSetUpdate (): Contains Action and IPSetDescriptor
	//
	//     * IPSetDescriptor ():
	// Contains Type and Value
	//
	// You can insert a maximum of 1000 addresses in a single
	// request.
	Updates []*types.IPSetUpdate
	// The value returned by the most recent call to GetChangeToken ().
	ChangeToken *string
}

type UpdateIPSetOutput

type UpdateIPSetOutput struct {
	// The ChangeToken that you used to submit the UpdateIPSet request. You can also
	// use this value to query the status of the request. For more information, see
	// GetChangeTokenStatus ().
	ChangeToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type UpdateRateBasedRuleInput

type UpdateRateBasedRuleInput struct {
	// The maximum number of requests, which have an identical value in the field
	// specified by the RateKey, allowed in a five-minute period. If the number of
	// requests exceeds the RateLimit and the other predicates specified in the rule
	// are also met, AWS WAF triggers the action that is specified for this rule.
	RateLimit *int64
	// The value returned by the most recent call to GetChangeToken ().
	ChangeToken *string
	// The RuleId of the RateBasedRule that you want to update. RuleId is returned by
	// CreateRateBasedRule and by ListRateBasedRules ().
	RuleId *string
	// An array of RuleUpdate objects that you want to insert into or delete from a
	// RateBasedRule ().
	Updates []*types.RuleUpdate
}

type UpdateRateBasedRuleOutput

type UpdateRateBasedRuleOutput struct {
	// The ChangeToken that you used to submit the UpdateRateBasedRule request. You can
	// also use this value to query the status of the request. For more information,
	// see GetChangeTokenStatus ().
	ChangeToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type UpdateRegexMatchSetInput

type UpdateRegexMatchSetInput struct {
	// The RegexMatchSetId of the RegexMatchSet () that you want to update.
	// RegexMatchSetId is returned by CreateRegexMatchSet () and by ListRegexMatchSets
	// ().
	RegexMatchSetId *string
	// An array of RegexMatchSetUpdate objects that you want to insert into or delete
	// from a RegexMatchSet (). For more information, see RegexMatchTuple ().
	Updates []*types.RegexMatchSetUpdate
	// The value returned by the most recent call to GetChangeToken ().
	ChangeToken *string
}

type UpdateRegexMatchSetOutput

type UpdateRegexMatchSetOutput struct {
	// The ChangeToken that you used to submit the UpdateRegexMatchSet request. You can
	// also use this value to query the status of the request. For more information,
	// see GetChangeTokenStatus ().
	ChangeToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type UpdateRegexPatternSetInput

type UpdateRegexPatternSetInput struct {
	// An array of RegexPatternSetUpdate objects that you want to insert into or delete
	// from a RegexPatternSet ().
	Updates []*types.RegexPatternSetUpdate
	// The RegexPatternSetId of the RegexPatternSet () that you want to update.
	// RegexPatternSetId is returned by CreateRegexPatternSet () and by
	// ListRegexPatternSets ().
	RegexPatternSetId *string
	// The value returned by the most recent call to GetChangeToken ().
	ChangeToken *string
}

type UpdateRegexPatternSetOutput

type UpdateRegexPatternSetOutput struct {
	// The ChangeToken that you used to submit the UpdateRegexPatternSet request. You
	// can also use this value to query the status of the request. For more
	// information, see GetChangeTokenStatus ().
	ChangeToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type UpdateRuleGroupInput

type UpdateRuleGroupInput struct {
	// An array of RuleGroupUpdate objects that you want to insert into or delete from
	// a RuleGroup (). You can only insert REGULAR rules into a rule group.
	// ActivatedRule|OverrideAction applies only when updating or adding a RuleGroup to
	// a WebACL. In this case you do not use ActivatedRule|Action. For all other update
	// requests, ActivatedRule|Action is used instead of ActivatedRule|OverrideAction.
	Updates []*types.RuleGroupUpdate
	// The RuleGroupId of the RuleGroup () that you want to update. RuleGroupId is
	// returned by CreateRuleGroup () and by ListRuleGroups ().
	RuleGroupId *string
	// The value returned by the most recent call to GetChangeToken ().
	ChangeToken *string
}

type UpdateRuleGroupOutput

type UpdateRuleGroupOutput struct {
	// The ChangeToken that you used to submit the UpdateRuleGroup request. You can
	// also use this value to query the status of the request. For more information,
	// see GetChangeTokenStatus ().
	ChangeToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type UpdateRuleInput

type UpdateRuleInput struct {
	// An array of RuleUpdate objects that you want to insert into or delete from a
	// Rule (). For more information, see the applicable data types:
	//
	//     * RuleUpdate
	// (): Contains Action and Predicate
	//
	//     * Predicate (): Contains DataId, Negated,
	// and Type
	//
	//     * FieldToMatch (): Contains Data and Type
	Updates []*types.RuleUpdate
	// The value returned by the most recent call to GetChangeToken ().
	ChangeToken *string
	// The RuleId of the Rule that you want to update. RuleId is returned by CreateRule
	// and by ListRules ().
	RuleId *string
}

type UpdateRuleOutput

type UpdateRuleOutput struct {
	// The ChangeToken that you used to submit the UpdateRule request. You can also use
	// this value to query the status of the request. For more information, see
	// GetChangeTokenStatus ().
	ChangeToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type UpdateSizeConstraintSetInput

type UpdateSizeConstraintSetInput struct {
	// The SizeConstraintSetId of the SizeConstraintSet () that you want to update.
	// SizeConstraintSetId is returned by CreateSizeConstraintSet () and by
	// ListSizeConstraintSets ().
	SizeConstraintSetId *string
	// An array of SizeConstraintSetUpdate objects that you want to insert into or
	// delete from a SizeConstraintSet (). For more information, see the applicable
	// data types:
	//
	//     * SizeConstraintSetUpdate (): Contains Action and
	// SizeConstraint
	//
	//     * SizeConstraint (): Contains FieldToMatch,
	// TextTransformation, ComparisonOperator, and Size
	//
	//     * FieldToMatch ():
	// Contains Data and Type
	Updates []*types.SizeConstraintSetUpdate
	// The value returned by the most recent call to GetChangeToken ().
	ChangeToken *string
}

type UpdateSizeConstraintSetOutput

type UpdateSizeConstraintSetOutput struct {
	// The ChangeToken that you used to submit the UpdateSizeConstraintSet request. You
	// can also use this value to query the status of the request. For more
	// information, see GetChangeTokenStatus ().
	ChangeToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type UpdateSqlInjectionMatchSetInput

type UpdateSqlInjectionMatchSetInput struct {
	// The SqlInjectionMatchSetId of the SqlInjectionMatchSet that you want to update.
	// SqlInjectionMatchSetId is returned by CreateSqlInjectionMatchSet () and by
	// ListSqlInjectionMatchSets ().
	SqlInjectionMatchSetId *string
	// An array of SqlInjectionMatchSetUpdate objects that you want to insert into or
	// delete from a SqlInjectionMatchSet (). For more information, see the applicable
	// data types:
	//
	//     * SqlInjectionMatchSetUpdate (): Contains Action and
	// SqlInjectionMatchTuple
	//
	//     * SqlInjectionMatchTuple (): Contains FieldToMatch
	// and TextTransformation
	//
	//     * FieldToMatch (): Contains Data and Type
	Updates []*types.SqlInjectionMatchSetUpdate
	// The value returned by the most recent call to GetChangeToken ().
	ChangeToken *string
}

A request to update a SqlInjectionMatchSet ().

type UpdateSqlInjectionMatchSetOutput

type UpdateSqlInjectionMatchSetOutput struct {
	// The ChangeToken that you used to submit the UpdateSqlInjectionMatchSet request.
	// You can also use this value to query the status of the request. For more
	// information, see GetChangeTokenStatus ().
	ChangeToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

The response to an UpdateSqlInjectionMatchSets () request.

type UpdateWebACLInput

type UpdateWebACLInput struct {
	// The WebACLId of the WebACL () that you want to update. WebACLId is returned by
	// CreateWebACL () and by ListWebACLs ().
	WebACLId *string
	// A default action for the web ACL, 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
	// web ACL.
	DefaultAction *types.WafAction
	// An array of updates to make to the WebACL (). An array of WebACLUpdate objects
	// that you want to insert into or delete from a WebACL (). For more information,
	// see the applicable data types:
	//
	//     * WebACLUpdate (): Contains Action and
	// ActivatedRule
	//
	//     * ActivatedRule (): Contains Action, OverrideAction,
	// Priority, RuleId, and Type. ActivatedRule|OverrideAction applies only when
	// updating or adding a RuleGroup to a WebACL. In this case, you do not use
	// ActivatedRule|Action. For all other update requests, ActivatedRule|Action is
	// used instead of ActivatedRule|OverrideAction.
	//
	//     * WafAction (): Contains Type
	Updates []*types.WebACLUpdate
	// The value returned by the most recent call to GetChangeToken ().
	ChangeToken *string
}

type UpdateWebACLOutput

type UpdateWebACLOutput struct {
	// The ChangeToken that you used to submit the UpdateWebACL request. You can also
	// use this value to query the status of the request. For more information, see
	// GetChangeTokenStatus ().
	ChangeToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

type UpdateXssMatchSetInput

type UpdateXssMatchSetInput struct {
	// An array of XssMatchSetUpdate objects that you want to insert into or delete
	// from an XssMatchSet (). For more information, see the applicable data types:
	//
	//
	// * XssMatchSetUpdate (): Contains Action and XssMatchTuple
	//
	//     * XssMatchTuple
	// (): Contains FieldToMatch and TextTransformation
	//
	//     * FieldToMatch ():
	// Contains Data and Type
	Updates []*types.XssMatchSetUpdate
	// The value returned by the most recent call to GetChangeToken ().
	ChangeToken *string
	// The XssMatchSetId of the XssMatchSet that you want to update. XssMatchSetId is
	// returned by CreateXssMatchSet () and by ListXssMatchSets ().
	XssMatchSetId *string
}

A request to update an XssMatchSet ().

type UpdateXssMatchSetOutput

type UpdateXssMatchSetOutput struct {
	// The ChangeToken that you used to submit the UpdateXssMatchSet request. You can
	// also use this value to query the status of the request. For more information,
	// see GetChangeTokenStatus ().
	ChangeToken *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
}

The response to an UpdateXssMatchSets () request.

Source Files

Directories

Path Synopsis
internal

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL