wafregional

package module
v1.25.8 Latest Latest
Warning

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

Go to latest
Published: Dec 19, 2024 License: Apache-2.0 Imports: 44 Imported by: 50

Documentation

Overview

Package wafregional provides the API client, operations, and parameter types for AWS WAF Regional.

This is AWS WAF Classic Regional documentation. For more information, see AWS WAF Classic in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints for regional and global use.

This is the AWS WAF Regional Classic API Reference for using AWS WAF Classic with the AWS resources, Elastic Load Balancing (ELB) Application Load Balancers and API Gateway APIs. The AWS WAF Classic actions and data types listed in the reference are available for protecting Elastic Load Balancing (ELB) Application Load Balancers and API Gateway APIs. You can use these actions and data types by means of the endpoints listed in AWS Regions and Endpoints. 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 Classicin the developer guide.

Index

Constants

View Source
const ServiceAPIVersion = "2016-11-28"
View Source
const ServiceID = "WAF Regional"

Variables

This section is empty.

Functions

func NewDefaultEndpointResolver

func NewDefaultEndpointResolver() *internalendpoints.Resolver

NewDefaultEndpointResolver constructs a new service endpoint resolver

func WithAPIOptions added in v1.0.0

func WithAPIOptions(optFns ...func(*middleware.Stack) error) func(*Options)

WithAPIOptions returns a functional option for setting the Client's APIOptions option.

func WithEndpointResolver deprecated

func WithEndpointResolver(v EndpointResolver) func(*Options)

Deprecated: EndpointResolver and WithEndpointResolver. Providing a value for this field will likely prevent you from using any endpoint-related service features released after the introduction of EndpointResolverV2 and BaseEndpoint.

To migrate an EndpointResolver implementation that uses a custom endpoint, set the client option BaseEndpoint instead.

func WithEndpointResolverV2 added in v1.14.0

func WithEndpointResolverV2(v EndpointResolverV2) func(*Options)

WithEndpointResolverV2 returns a functional option for setting the Client's EndpointResolverV2 option.

func WithSigV4SigningName added in v1.18.2

func WithSigV4SigningName(name string) func(*Options)

WithSigV4SigningName applies an override to the authentication workflow to use the given signing name for SigV4-authenticated operations.

This is an advanced setting. The value here is FINAL, taking precedence over the resolved signing name from both auth scheme resolution and endpoint resolution.

func WithSigV4SigningRegion added in v1.18.2

func WithSigV4SigningRegion(region string) func(*Options)

WithSigV4SigningRegion applies an override to the authentication workflow to use the given signing region for SigV4-authenticated operations.

This is an advanced setting. The value here is FINAL, taking precedence over the resolved signing region from both auth scheme resolution and endpoint resolution.

Types

type AssociateWebACLInput

type AssociateWebACLInput struct {

	// The ARN (Amazon Resource Name) of the resource to be protected, either an
	// application load balancer or Amazon API Gateway stage.
	//
	// The ARN should be in one of the following formats:
	//
	//   - For an Application Load Balancer:
	//   arn:aws:elasticloadbalancing:region:account-id:loadbalancer/app/load-balancer-name/load-balancer-id
	//
	//   - For an Amazon API Gateway stage:
	//   arn:aws:apigateway:region::/restapis/api-id/stages/stage-name
	//
	// This member is required.
	ResourceArn *string

	// A unique identifier (ID) for the web ACL.
	//
	// This member is required.
	WebACLId *string
	// contains filtered or unexported fields
}

type AssociateWebACLOutput

type AssociateWebACLOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type AuthResolverParameters added in v1.18.2

type AuthResolverParameters struct {
	// The name of the operation being invoked.
	Operation string

	// The region in which the operation is being invoked.
	Region string
}

AuthResolverParameters contains the set of inputs necessary for auth scheme resolution.

type AuthSchemeResolver added in v1.18.2

type AuthSchemeResolver interface {
	ResolveAuthSchemes(context.Context, *AuthResolverParameters) ([]*smithyauth.Option, error)
}

AuthSchemeResolver returns a set of possible authentication options for an operation.

type Client

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

Client provides the API client to make operations call for AWS WAF Regional.

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) AssociateWebACL

func (c *Client) AssociateWebACL(ctx context.Context, params *AssociateWebACLInput, optFns ...func(*Options)) (*AssociateWebACLOutput, error)

This is AWS WAF Classic Regional documentation. For more information, see AWS WAF Classic in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Associates a web ACL with a resource, either an application load balancer or Amazon API Gateway stage.

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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 GetChangeTokento 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 UpdateByteMatchSetrequest 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.

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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 GetChangeTokento 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 UpdateGeoMatchSetrequest.

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

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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 GetChangeTokento 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 UpdateIPSetrequest.

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

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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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.

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 RateBasedRule :

  • A ByteMatchSet with FieldToMatch of URI

  • A PositionalConstraint of STARTS_WITH

  • A TargetString of login

Further, you specify a RateLimit of 1,000.

By adding this RateBasedRule to a WebACL , you could limit requests to your login page without affecting the rest of your site.

To create and configure a RateBasedRule , 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 GetChangeTokento get the change token that you provide in the ChangeToken parameter of a CreateRule request.

  • Submit a CreateRateBasedRule request.

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

  • Submit an UpdateRateBasedRule request to specify the predicates that you want to include in the rule.

  • Create and update a WebACL that contains the RateBasedRule . 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.

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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 GetChangeTokento 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 UpdateRegexMatchSetrequest 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.

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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 GetChangeTokento 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 UpdateRegexPatternSetrequest 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.

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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 GetChangeTokento 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 UpdateRulerequest.

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

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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 UpdateRuleGroupto 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.

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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 GetChangeTokento 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 UpdateSizeConstraintSetrequest 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.

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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 GetChangeTokento 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 UpdateSqlInjectionMatchSetrequest.

  • Submit an UpdateSqlInjectionMatchSetrequest 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.

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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 CreateRuleand UpdateRule.

  • Use GetChangeTokento 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 UpdateWebACLrequest.

  • Submit an UpdateWebACLrequest 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.

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 in the AWS WAF Developer Guide.

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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 GetChangeTokento 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 UpdateXssMatchSetrequest.

  • Submit an UpdateXssMatchSetrequest 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.

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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 GetChangeTokento 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 GetChangeTokento 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 GetChangeTokento 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 GetChangeTokento 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 GetChangeTokento 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 GetChangeTokento 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 GetChangeTokento 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 GetChangeTokento 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 GetChangeTokento 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 GetChangeTokento 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 GetChangeTokento get the change token that you provide in the ChangeToken parameter of a DeleteXssMatchSet request.

  • Submit a DeleteXssMatchSet request.

func (*Client) DisassociateWebACL

func (c *Client) DisassociateWebACL(ctx context.Context, params *DisassociateWebACLInput, optFns ...func(*Options)) (*DisassociateWebACLOutput, error)

This is AWS WAF Classic Regional documentation. For more information, see AWS WAF Classic in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Removes a web ACL from the specified resource, either an application load balancer or Amazon API Gateway stage.

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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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) GetWebACLForResource

func (c *Client) GetWebACLForResource(ctx context.Context, params *GetWebACLForResourceInput, optFns ...func(*Options)) (*GetWebACLForResourceOutput, error)

This is AWS WAF Classic Regional documentation. For more information, see AWS WAF Classic in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Returns the web ACL for the specified resource, either an application load balancer or Amazon API Gateway stage.

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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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) ListResourcesForWebACL

func (c *Client) ListResourcesForWebACL(ctx context.Context, params *ListResourcesForWebACLInput, optFns ...func(*Options)) (*ListResourcesForWebACLOutput, error)

This is AWS WAF Classic Regional documentation. For more information, see AWS WAF Classic in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Returns an array of resources associated with the specified web ACL.

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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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) Options added in v1.19.0

func (c *Client) Options() Options

Options returns a copy of the client configuration.

Callers SHOULD NOT perform mutations on any inner structures within client config. Config overrides should instead be made on a per-operation basis through functional options.

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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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.

When you successfully enable logging using a PutLoggingConfiguration request, AWS WAF will create a service linked role with the necessary permissions to write logs to the Amazon Kinesis Data Firehose. For more information, see Logging Web ACL Traffic Informationin the AWS WAF Developer Guide.

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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 .

  • Effect must specify Allow .

  • The Action in the policy must be waf:UpdateWebACL , waf-regional:UpdateWebACL , waf:GetRuleGroup and waf-regional:GetRuleGroup . Any extra or wildcard actions in the policy will be rejected.

  • The policy cannot include a Resource parameter.

  • The ARN in the request must be a valid WAF RuleGroup ARN and the RuleGroup must exist in the same region.

  • The user making the request must be the owner of the RuleGroup.

  • Your policy must be composed using IAM Policy version 2012-10-17.

For more information, see IAM Policies.

An example of a valid policy parameter is shown in the Examples section below.

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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 ByteMatchTupledata 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 GetChangeTokento 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.

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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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.

To create and configure an GeoMatchSet , perform the following steps:

  • Submit a CreateGeoMatchSetrequest.

  • Use GetChangeTokento get the change token that you provide in the ChangeToken parameter of an UpdateGeoMatchSetrequest.

  • Submit an UpdateGeoMatchSet request to specify the country that you want AWS WAF to watch for.

When you update an GeoMatchSet , 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.

For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide.

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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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.

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 CreateIPSetrequest.

  • Use GetChangeTokento get the change token that you provide in the ChangeToken parameter of an UpdateIPSetrequest.

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

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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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.

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 RateBasedRule :

  • A ByteMatchSet with FieldToMatch of URI

  • A PositionalConstraint of STARTS_WITH

  • A TargetString of login

Further, you specify a RateLimit of 1,000.

By adding this RateBasedRule to a WebACL , you could limit requests to your login page without affecting the rest of your site.

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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 GetChangeTokento 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.

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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 GetChangeTokento 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.

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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 ByteMatchSetor 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 UpdateRulerequest.

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

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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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.

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

  • Create and update the Rules that you want to include in the RuleGroup . See CreateRule .

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

  • Submit an UpdateRuleGroup request to add Rules to the RuleGroup .

  • Create and update a WebACL that contains the RuleGroup . See CreateWebACL.

If you want to replace one Rule 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.

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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 GetChangeTokento 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.

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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 CreateSqlInjectionMatchSetrequest.

  • Use GetChangeTokento get the change token that you provide in the ChangeToken parameter of an UpdateIPSetrequest.

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

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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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.

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

  • Create and update the 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 CreateRuleand UpdateRule.

  • Create a WebACL . See CreateWebACL.

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

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

The ActivatedRule can be a rule group. If you specify a rule group as your

ActivatedRule , you can exclude specific rules from that rule group.

If you already have a rule group associated with a web ACL and want to submit

an UpdateWebACL 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 ActivatedRule$ExcludedRules.

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 UpdateWebACLrequest will fail because the request tries to add a REGULAR rule (the default rule type) with the specified ID, which does not exist.

For more information about how to use the AWS WAF API to allow or block HTTP requests, see the AWS WAF Developer Guide.

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 in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide. 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 CreateXssMatchSetrequest.

  • Use GetChangeTokento get the change token that you provide in the ChangeToken parameter of an UpdateIPSetrequest.

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

type CreateByteMatchSetInput

type CreateByteMatchSetInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// This member is required.
	ChangeToken *string

	// A friendly name or description of the ByteMatchSet. You can't change Name after you create
	// a ByteMatchSet .
	//
	// This member is required.
	Name *string
	// contains filtered or unexported fields
}

type CreateByteMatchSetOutput

type CreateByteMatchSetOutput struct {

	// A ByteMatchSet that contains no ByteMatchTuple objects.
	ByteMatchSet *types.ByteMatchSet

	// 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

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type CreateGeoMatchSetInput

type CreateGeoMatchSetInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// This member is required.
	ChangeToken *string

	// A friendly name or description of the GeoMatchSet. You can't change Name after you create
	// the GeoMatchSet .
	//
	// This member is required.
	Name *string
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

type CreateIPSetInput

type CreateIPSetInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// This member is required.
	ChangeToken *string

	// A friendly name or description of the IPSet. You can't change Name after you create
	// the IPSet .
	//
	// This member is required.
	Name *string
	// contains filtered or unexported fields
}

type CreateIPSetOutput

type CreateIPSetOutput struct {

	// 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

	// The IPSet returned in the CreateIPSet response.
	IPSet *types.IPSet

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type CreateRateBasedRuleInput

type CreateRateBasedRuleInput struct {

	// 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.
	//
	// This member is required.
	ChangeToken *string

	// 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 .
	//
	// This member is required.
	MetricName *string

	// A friendly name or description of the RateBasedRule. You can't change the name of a
	// RateBasedRule after you create it.
	//
	// This member is required.
	Name *string

	// 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 .
	//
	// This member is required.
	RateKey types.RateKey

	// 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.
	//
	// This member is required.
	RateLimit *int64

	//
	Tags []types.Tag
	// contains filtered or unexported fields
}

type CreateRateBasedRuleOutput

type CreateRateBasedRuleOutput struct {

	// 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

	// The RateBasedRule that is returned in the CreateRateBasedRule response.
	Rule *types.RateBasedRule

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type CreateRegexMatchSetInput

type CreateRegexMatchSetInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// This member is required.
	ChangeToken *string

	// A friendly name or description of the RegexMatchSet. You can't change Name after you create
	// a RegexMatchSet .
	//
	// This member is required.
	Name *string
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

type CreateRegexPatternSetInput

type CreateRegexPatternSetInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// This member is required.
	ChangeToken *string

	// A friendly name or description of the RegexPatternSet. You can't change Name after you create
	// a RegexPatternSet .
	//
	// This member is required.
	Name *string
	// contains filtered or unexported fields
}

type CreateRegexPatternSetOutput

type CreateRegexPatternSetOutput struct {

	// 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

	// A RegexPatternSet that contains no objects.
	RegexPatternSet *types.RegexPatternSet

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type CreateRuleGroupInput

type CreateRuleGroupInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// This member is required.
	ChangeToken *string

	// 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 .
	//
	// This member is required.
	MetricName *string

	// A friendly name or description of the RuleGroup. You can't change Name after you create
	// a RuleGroup .
	//
	// This member is required.
	Name *string

	//
	Tags []types.Tag
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

type CreateRuleInput

type CreateRuleInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// This member is required.
	ChangeToken *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 .
	//
	// This member is required.
	MetricName *string

	// A friendly name or description of the Rule. You can't change the name of a Rule
	// after you create it.
	//
	// This member is required.
	Name *string

	//
	Tags []types.Tag
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

type CreateSizeConstraintSetInput

type CreateSizeConstraintSetInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// This member is required.
	ChangeToken *string

	// A friendly name or description of the SizeConstraintSet. You can't change Name after you create
	// a SizeConstraintSet .
	//
	// This member is required.
	Name *string
	// contains filtered or unexported fields
}

type CreateSizeConstraintSetOutput

type CreateSizeConstraintSetOutput struct {

	// 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

	// A SizeConstraintSet that contains no SizeConstraint objects.
	SizeConstraintSet *types.SizeConstraintSet

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type CreateSqlInjectionMatchSetInput

type CreateSqlInjectionMatchSetInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// This member is required.
	ChangeToken *string

	// A friendly name or description for the SqlInjectionMatchSet that you're creating. You can't change
	// Name after you create the SqlInjectionMatchSet .
	//
	// This member is required.
	Name *string
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

The response to a CreateSqlInjectionMatchSet request.

type CreateWebACLInput

type CreateWebACLInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// This member is required.
	ChangeToken *string

	// 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 .
	//
	// This member is required.
	DefaultAction *types.WafAction

	// 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 .
	//
	// This member is required.
	MetricName *string

	// A friendly name or description of the WebACL. You can't change Name after you create
	// the WebACL .
	//
	// This member is required.
	Name *string

	//
	Tags []types.Tag
	// contains filtered or unexported fields
}

type CreateWebACLMigrationStackInput

type CreateWebACLMigrationStackInput struct {

	// 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.
	//
	// This member is required.
	IgnoreUnsupportedType *bool

	// 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.
	//
	// This member is required.
	S3BucketName *string

	// The UUID of the WAF Classic web ACL that you want to migrate to WAF v2.
	//
	// This member is required.
	WebACLId *string
	// contains filtered or unexported fields
}

type CreateWebACLMigrationStackOutput

type CreateWebACLMigrationStackOutput struct {

	// The URL of the template created in Amazon S3.
	//
	// This member is required.
	S3ObjectUrl *string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type CreateWebACLOutput

type CreateWebACLOutput struct {

	// 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

	// The WebACL returned in the CreateWebACL response.
	WebACL *types.WebACL

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type CreateXssMatchSetInput

type CreateXssMatchSetInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// This member is required.
	ChangeToken *string

	// A friendly name or description for the XssMatchSet that you're creating. You can't change
	// Name after you create the XssMatchSet .
	//
	// This member is required.
	Name *string
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

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 CreateByteMatchSetand by ListByteMatchSets.
	//
	// This member is required.
	ByteMatchSetId *string

	// The value returned by the most recent call to GetChangeToken.
	//
	// This member is required.
	ChangeToken *string
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

type DeleteGeoMatchSetInput

type DeleteGeoMatchSetInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// This member is required.
	ChangeToken *string

	// The GeoMatchSetID of the GeoMatchSet that you want to delete. GeoMatchSetId is returned by CreateGeoMatchSet
	// and by ListGeoMatchSets.
	//
	// This member is required.
	GeoMatchSetId *string
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

type DeleteIPSetInput

type DeleteIPSetInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// This member is required.
	ChangeToken *string

	// The IPSetId of the IPSet that you want to delete. IPSetId is returned by CreateIPSet and by ListIPSets.
	//
	// This member is required.
	IPSetId *string
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

type DeleteLoggingConfigurationInput

type DeleteLoggingConfigurationInput struct {

	// The Amazon Resource Name (ARN) of the web ACL from which you want to delete the LoggingConfiguration
	// .
	//
	// This member is required.
	ResourceArn *string
	// contains filtered or unexported fields
}

type DeleteLoggingConfigurationOutput

type DeleteLoggingConfigurationOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

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.
	//
	// This member is required.
	ResourceArn *string
	// contains filtered or unexported fields
}

type DeletePermissionPolicyOutput

type DeletePermissionPolicyOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type DeleteRateBasedRuleInput

type DeleteRateBasedRuleInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// This member is required.
	ChangeToken *string

	// The RuleId of the RateBasedRule that you want to delete. RuleId is returned by CreateRateBasedRule and by ListRateBasedRules.
	//
	// This member is required.
	RuleId *string
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

type DeleteRegexMatchSetInput

type DeleteRegexMatchSetInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// This member is required.
	ChangeToken *string

	// The RegexMatchSetId of the RegexMatchSet that you want to delete. RegexMatchSetId is
	// returned by CreateRegexMatchSetand by ListRegexMatchSets.
	//
	// This member is required.
	RegexMatchSetId *string
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

type DeleteRegexPatternSetInput

type DeleteRegexPatternSetInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// This member is required.
	ChangeToken *string

	// The RegexPatternSetId of the RegexPatternSet that you want to delete. RegexPatternSetId is
	// returned by CreateRegexPatternSetand by ListRegexPatternSets.
	//
	// This member is required.
	RegexPatternSetId *string
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

type DeleteRuleGroupInput

type DeleteRuleGroupInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// This member is required.
	ChangeToken *string

	// The RuleGroupId of the RuleGroup that you want to delete. RuleGroupId is returned by CreateRuleGroup
	// and by ListRuleGroups.
	//
	// This member is required.
	RuleGroupId *string
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

type DeleteRuleInput

type DeleteRuleInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// This member is required.
	ChangeToken *string

	// The RuleId of the Rule that you want to delete. RuleId is returned by CreateRule and by ListRules.
	//
	// This member is required.
	RuleId *string
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

type DeleteSizeConstraintSetInput

type DeleteSizeConstraintSetInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// This member is required.
	ChangeToken *string

	// The SizeConstraintSetId of the SizeConstraintSet that you want to delete. SizeConstraintSetId is
	// returned by CreateSizeConstraintSetand by ListSizeConstraintSets.
	//
	// This member is required.
	SizeConstraintSetId *string
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

type DeleteSqlInjectionMatchSetInput

type DeleteSqlInjectionMatchSetInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// This member is required.
	ChangeToken *string

	// The SqlInjectionMatchSetId of the SqlInjectionMatchSet that you want to delete.
	// SqlInjectionMatchSetId is returned by CreateSqlInjectionMatchSet and by ListSqlInjectionMatchSets.
	//
	// This member is required.
	SqlInjectionMatchSetId *string
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

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.
	//
	// This member is required.
	ChangeToken *string

	// The WebACLId of the WebACL that you want to delete. WebACLId is returned by CreateWebACL and by ListWebACLs.
	//
	// This member is required.
	WebACLId *string
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

type DeleteXssMatchSetInput

type DeleteXssMatchSetInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// This member is required.
	ChangeToken *string

	// The XssMatchSetId of the XssMatchSet that you want to delete. XssMatchSetId is returned by CreateXssMatchSet
	// and by ListXssMatchSets.
	//
	// This member is required.
	XssMatchSetId *string
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

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

type DisassociateWebACLInput

type DisassociateWebACLInput struct {

	// The ARN (Amazon Resource Name) of the resource from which the web ACL is being
	// removed, either an application load balancer or Amazon API Gateway stage.
	//
	// The ARN should be in one of the following formats:
	//
	//   - For an Application Load Balancer:
	//   arn:aws:elasticloadbalancing:region:account-id:loadbalancer/app/load-balancer-name/load-balancer-id
	//
	//   - For an Amazon API Gateway stage:
	//   arn:aws:apigateway:region::/restapis/api-id/stages/stage-name
	//
	// This member is required.
	ResourceArn *string
	// contains filtered or unexported fields
}

type DisassociateWebACLOutput

type DisassociateWebACLOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type EndpointParameters added in v1.14.0

type EndpointParameters struct {
	// The AWS region used to dispatch the request.
	//
	// Parameter is
	// required.
	//
	// AWS::Region
	Region *string

	// When true, use the dual-stack endpoint. If the configured endpoint does not
	// support dual-stack, dispatching the request MAY return an error.
	//
	// Defaults to
	// false if no value is provided.
	//
	// AWS::UseDualStack
	UseDualStack *bool

	// When true, send this request to the FIPS-compliant regional endpoint. If the
	// configured endpoint does not have a FIPS compliant endpoint, dispatching the
	// request will return an error.
	//
	// Defaults to false if no value is
	// provided.
	//
	// AWS::UseFIPS
	UseFIPS *bool

	// Override the endpoint used to send this request
	//
	// Parameter is
	// required.
	//
	// SDK::Endpoint
	Endpoint *string
}

EndpointParameters provides the parameters that influence how endpoints are resolved.

func (EndpointParameters) ValidateRequired added in v1.14.0

func (p EndpointParameters) ValidateRequired() error

ValidateRequired validates required parameters are set.

func (EndpointParameters) WithDefaults added in v1.14.0

func (p EndpointParameters) WithDefaults() EndpointParameters

WithDefaults returns a shallow copy of EndpointParameterswith default values applied to members where applicable.

type EndpointResolver

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

EndpointResolver interface for resolving service endpoints.

func EndpointResolverFromURL added in v1.1.0

func EndpointResolverFromURL(url string, optFns ...func(*aws.Endpoint)) EndpointResolver

EndpointResolverFromURL returns an EndpointResolver configured using the provided endpoint url. By default, the resolved endpoint resolver uses the client region as signing region, and the endpoint source is set to EndpointSourceCustom.You can provide functional options to configure endpoint values for the resolved endpoint.

type EndpointResolverFunc

type EndpointResolverFunc func(region string, options EndpointResolverOptions) (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 EndpointResolverOptions) (endpoint aws.Endpoint, err error)

type EndpointResolverOptions added in v0.29.0

type EndpointResolverOptions = internalendpoints.Options

EndpointResolverOptions is the service endpoint resolver options

type EndpointResolverV2 added in v1.14.0

type EndpointResolverV2 interface {
	// ResolveEndpoint attempts to resolve the endpoint with the provided options,
	// returning the endpoint if found. Otherwise an error is returned.
	ResolveEndpoint(ctx context.Context, params EndpointParameters) (
		smithyendpoints.Endpoint, error,
	)
}

EndpointResolverV2 provides the interface for resolving service endpoints.

func NewDefaultEndpointResolverV2 added in v1.14.0

func NewDefaultEndpointResolverV2() EndpointResolverV2

type GetByteMatchSetInput

type GetByteMatchSetInput struct {

	// The ByteMatchSetId of the ByteMatchSet that you want to get. ByteMatchSetId is returned by CreateByteMatchSet
	// and by ListByteMatchSets.
	//
	// This member is required.
	ByteMatchSetId *string
	// contains filtered or unexported fields
}

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 ByteMatchTupleobjects. 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
	// contains filtered or unexported fields
}

type GetChangeTokenInput

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

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
	// contains filtered or unexported fields
}

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.
	//
	// This member is required.
	ChangeToken *string
	// contains filtered or unexported fields
}

type GetChangeTokenStatusOutput

type GetChangeTokenStatusOutput struct {

	// The status of the change token.
	ChangeTokenStatus types.ChangeTokenStatus

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type GetGeoMatchSetInput

type GetGeoMatchSetInput struct {

	// The GeoMatchSetId of the GeoMatchSet that you want to get. GeoMatchSetId is returned by CreateGeoMatchSet
	// and by ListGeoMatchSets.
	//
	// This member is required.
	GeoMatchSetId *string
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

type GetIPSetInput

type GetIPSetInput struct {

	// The IPSetId of the IPSet that you want to get. IPSetId is returned by CreateIPSet and by ListIPSets.
	//
	// This member is required.
	IPSetId *string
	// contains filtered or unexported fields
}

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 IPSetDescriptorobjects. Each IPSetDescriptor object
	//   contains Type and Value
	IPSet *types.IPSet

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type GetLoggingConfigurationInput

type GetLoggingConfigurationInput struct {

	// The Amazon Resource Name (ARN) of the web ACL for which you want to get the LoggingConfiguration.
	//
	// This member is required.
	ResourceArn *string
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

type GetPermissionPolicyInput

type GetPermissionPolicyInput struct {

	// The Amazon Resource Name (ARN) of the RuleGroup for which you want to get the
	// policy.
	//
	// This member is required.
	ResourceArn *string
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

type GetRateBasedRuleInput

type GetRateBasedRuleInput struct {

	// The RuleId of the RateBasedRule that you want to get. RuleId is returned by CreateRateBasedRule and by ListRateBasedRules.
	//
	// This member is required.
	RuleId *string
	// contains filtered or unexported fields
}

type GetRateBasedRuleManagedKeysInput

type GetRateBasedRuleManagedKeysInput struct {

	// The RuleId of the RateBasedRule for which you want to get a list of ManagedKeys . RuleId is
	// returned by CreateRateBasedRuleand by ListRateBasedRules.
	//
	// This member is required.
	RuleId *string

	// A null value and not currently used. Do not include this in your request.
	NextMarker *string
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

type GetRegexMatchSetInput

type GetRegexMatchSetInput struct {

	// The RegexMatchSetId of the RegexMatchSet that you want to get. RegexMatchSetId is returned
	// by CreateRegexMatchSetand by ListRegexMatchSets.
	//
	// This member is required.
	RegexMatchSetId *string
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

type GetRegexPatternSetInput

type GetRegexPatternSetInput struct {

	// The RegexPatternSetId of the RegexPatternSet that you want to get. RegexPatternSetId is
	// returned by CreateRegexPatternSetand by ListRegexPatternSets.
	//
	// This member is required.
	RegexPatternSetId *string
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

type GetRuleGroupInput

type GetRuleGroupInput struct {

	// The RuleGroupId of the RuleGroup that you want to get. RuleGroupId is returned by CreateRuleGroup and
	// by ListRuleGroups.
	//
	// This member is required.
	RuleGroupId *string
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

type GetRuleInput

type GetRuleInput struct {

	// The RuleId of the Rule that you want to get. RuleId is returned by CreateRule and by ListRules.
	//
	// This member is required.
	RuleId *string
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

type GetSampledRequestsInput

type GetSampledRequestsInput struct {

	// 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.
	//
	// This member is required.
	MaxItems *int64

	// 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 .
	//
	// This member is required.
	RuleId *string

	// 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.
	//
	// This member is required.
	TimeWindow *types.TimeWindow

	// The WebACLId of the WebACL for which you want GetSampledRequests to return a
	// sample of requests.
	//
	// This member is required.
	WebAclId *string
	// contains filtered or unexported fields
}

type GetSampledRequestsOutput

type GetSampledRequestsOutput struct {

	// 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

	// A complex type that contains detailed information about each of the requests in
	// the sample.
	SampledRequests []types.SampledHTTPRequest

	// 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

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type GetSizeConstraintSetInput

type GetSizeConstraintSetInput struct {

	// The SizeConstraintSetId of the SizeConstraintSet that you want to get. SizeConstraintSetId is
	// returned by CreateSizeConstraintSetand by ListSizeConstraintSets.
	//
	// This member is required.
	SizeConstraintSetId *string
	// contains filtered or unexported fields
}

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 SizeConstraintobjects. 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
	// contains filtered or unexported fields
}

type GetSqlInjectionMatchSetInput

type GetSqlInjectionMatchSetInput struct {

	// The SqlInjectionMatchSetId of the SqlInjectionMatchSet that you want to get. SqlInjectionMatchSetId
	// is returned by CreateSqlInjectionMatchSetand by ListSqlInjectionMatchSets.
	//
	// This member is required.
	SqlInjectionMatchSetId *string
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

The response to a GetSqlInjectionMatchSet request.

type GetWebACLForResourceInput

type GetWebACLForResourceInput struct {

	// The ARN (Amazon Resource Name) of the resource for which to get the web ACL,
	// either an application load balancer or Amazon API Gateway stage.
	//
	// The ARN should be in one of the following formats:
	//
	//   - For an Application Load Balancer:
	//   arn:aws:elasticloadbalancing:region:account-id:loadbalancer/app/load-balancer-name/load-balancer-id
	//
	//   - For an Amazon API Gateway stage:
	//   arn:aws:apigateway:region::/restapis/api-id/stages/stage-name
	//
	// This member is required.
	ResourceArn *string
	// contains filtered or unexported fields
}

type GetWebACLForResourceOutput

type GetWebACLForResourceOutput struct {

	// Information about the web ACL that you specified in the GetWebACLForResource
	// request. If there is no associated resource, a null WebACLSummary is returned.
	WebACLSummary *types.WebACLSummary

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type GetWebACLInput

type GetWebACLInput struct {

	// The WebACLId of the WebACL that you want to get. WebACLId is returned by CreateWebACL and by ListWebACLs.
	//
	// This member is required.
	WebACLId *string
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

type GetXssMatchSetInput

type GetXssMatchSetInput struct {

	// The XssMatchSetId of the XssMatchSet that you want to get. XssMatchSetId is returned by CreateXssMatchSet
	// and by ListXssMatchSets.
	//
	// This member is required.
	XssMatchSetId *string
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

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, optFns ...func(*v4.SignerOptions)) error
}

type ListActivatedRulesInRuleGroupInput

type ListActivatedRulesInRuleGroupInput struct {

	// 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

	// The RuleGroupId of the RuleGroup for which you want to get a list of ActivatedRule objects.
	RuleGroupId *string
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

type ListByteMatchSetsInput

type ListByteMatchSetsInput struct {

	// 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

	// 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
	// contains filtered or unexported fields
}

type ListByteMatchSetsOutput

type ListByteMatchSetsOutput struct {

	// An array of ByteMatchSetSummary objects.
	ByteMatchSets []types.ByteMatchSetSummary

	// 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

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type ListGeoMatchSetsInput

type ListGeoMatchSetsInput struct {

	// 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

	// If you specify a value for Limit and you have more GeoMatchSet s 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
	// contains filtered or unexported fields
}

type ListGeoMatchSetsOutput

type ListGeoMatchSetsOutput struct {

	// An array of GeoMatchSetSummary objects.
	GeoMatchSets []types.GeoMatchSetSummary

	// 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

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type ListIPSetsInput

type ListIPSetsInput struct {

	// 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

	// 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
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

type ListLoggingConfigurationsInput

type ListLoggingConfigurationsInput struct {

	// 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

	// 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
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

type ListRegexMatchSetsInput

type ListRegexMatchSetsInput struct {

	// 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

	// 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
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

type ListRegexPatternSetsInput

type ListRegexPatternSetsInput struct {

	// 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

	// 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
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

type ListResourcesForWebACLInput

type ListResourcesForWebACLInput struct {

	// The unique identifier (ID) of the web ACL for which to list the associated
	// resources.
	//
	// This member is required.
	WebACLId *string

	// The type of resource to list, either an application load balancer or Amazon API
	// Gateway.
	ResourceType types.ResourceType
	// contains filtered or unexported fields
}

type ListResourcesForWebACLOutput

type ListResourcesForWebACLOutput struct {

	// An array of ARNs (Amazon Resource Names) of the resources associated with the
	// specified web ACL. An array with zero elements is returned if there are no
	// resources associated with the web ACL.
	ResourceArns []string

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type ListRuleGroupsInput

type ListRuleGroupsInput struct {

	// 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

	// 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
	// contains filtered or unexported fields
}

type ListRuleGroupsOutput

type ListRuleGroupsOutput struct {

	// 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

	// An array of RuleGroup objects.
	RuleGroups []types.RuleGroupSummary

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type ListRulesInput

type ListRulesInput 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 ListRules requests,
	// specify the value of NextMarker from the previous response to get information
	// about another batch of Rules .
	NextMarker *string
	// contains filtered or unexported fields
}

type ListRulesOutput

type ListRulesOutput 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 ListRules 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
	// contains filtered or unexported fields
}

type ListSizeConstraintSetsInput

type ListSizeConstraintSetsInput struct {

	// 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

	// 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
	// contains filtered or unexported fields
}

type ListSizeConstraintSetsOutput

type ListSizeConstraintSetsOutput struct {

	// 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

	// An array of SizeConstraintSetSummary objects.
	SizeConstraintSets []types.SizeConstraintSetSummary

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type ListSqlInjectionMatchSetsInput

type ListSqlInjectionMatchSetsInput struct {

	// 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

	// 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
	// contains filtered or unexported fields
}

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

type ListSqlInjectionMatchSetsOutput

type ListSqlInjectionMatchSetsOutput struct {

	// 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

	// An array of SqlInjectionMatchSetSummary objects.
	SqlInjectionMatchSets []types.SqlInjectionMatchSetSummary

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

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 ByteMatchSets subscribed 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
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

type ListTagsForResourceInput

type ListTagsForResourceInput struct {

	//
	//
	// This member is required.
	ResourceARN *string

	//
	Limit int32

	//
	NextMarker *string
	// contains filtered or unexported fields
}

type ListTagsForResourceOutput

type ListTagsForResourceOutput struct {

	//
	NextMarker *string

	//
	TagInfoForResource *types.TagInfoForResource

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

type ListWebACLsOutput

type ListWebACLsOutput struct {

	// 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

	// An array of WebACLSummary objects.
	WebACLs []types.WebACLSummary

	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type ListXssMatchSetsInput

type ListXssMatchSetsInput struct {

	// 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

	// 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
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

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 optional application specific identifier appended to the User-Agent header.
	AppID string

	// This endpoint will be given as input to an EndpointResolverV2. It is used for
	// providing a custom base endpoint that is subject to modifications by the
	// processing EndpointResolverV2.
	BaseEndpoint *string

	// Configures the events that will be sent to the configured logger.
	ClientLogMode aws.ClientLogMode

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

	// The configuration DefaultsMode that the SDK should use when constructing the
	// clients initial default settings.
	DefaultsMode aws.DefaultsMode

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

	// The service endpoint resolver.
	//
	// Deprecated: Deprecated: EndpointResolver and WithEndpointResolver. Providing a
	// value for this field will likely prevent you from using any endpoint-related
	// service features released after the introduction of EndpointResolverV2 and
	// BaseEndpoint.
	//
	// To migrate an EndpointResolver implementation that uses a custom endpoint, set
	// the client option BaseEndpoint instead.
	EndpointResolver EndpointResolver

	// Resolves the endpoint used for a particular service operation. This should be
	// used over the deprecated EndpointResolver.
	EndpointResolverV2 EndpointResolverV2

	// Signature Version 4 (SigV4) Signer
	HTTPSignerV4 HTTPSignerV4

	// The logger writer interface to write logging messages to.
	Logger logging.Logger

	// The client meter provider.
	MeterProvider metrics.MeterProvider

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

	// RetryMaxAttempts specifies the maximum number attempts an API client will call
	// an operation that fails with a retryable error. A value of 0 is ignored, and
	// will not be used to configure the API client created default retryer, or modify
	// per operation call's retry max attempts.
	//
	// If specified in an operation call's functional options with a value that is
	// different than the constructed client's Options, the Client's Retryer will be
	// wrapped to use the operation's specific RetryMaxAttempts value.
	RetryMaxAttempts int

	// RetryMode specifies the retry mode the API client will be created with, if
	// Retryer option is not also specified.
	//
	// When creating a new API Clients this member will only be used if the Retryer
	// Options member is nil. This value will be ignored if Retryer is not nil.
	//
	// Currently does not support per operation call overrides, may in the future.
	RetryMode aws.RetryMode

	// Retryer guides how HTTP requests should be retried in case of recoverable
	// failures. When nil the API client will use a default retryer. The kind of
	// default retry created by the API client can be changed with the RetryMode
	// option.
	Retryer aws.Retryer

	// The RuntimeEnvironment configuration, only populated if the DefaultsMode is set
	// to DefaultsModeAuto and is initialized using config.LoadDefaultConfig . You
	// should not populate this structure programmatically, or rely on the values here
	// within your applications.
	RuntimeEnvironment aws.RuntimeEnvironment

	// The client tracer provider.
	TracerProvider tracing.TracerProvider

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

	// The auth scheme resolver which determines how to authenticate for each
	// operation.
	AuthSchemeResolver AuthSchemeResolver

	// The list of auth schemes supported by the client.
	AuthSchemes []smithyhttp.AuthScheme
	// contains filtered or unexported fields
}

func (Options) Copy

func (o Options) Copy() Options

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

func (Options) GetIdentityResolver added in v1.18.2

func (o Options) GetIdentityResolver(schemeID string) smithyauth.IdentityResolver

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 .
	//
	// This member is required.
	LoggingConfiguration *types.LoggingConfiguration
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

type PutPermissionPolicyInput

type PutPermissionPolicyInput struct {

	// The policy to attach to the specified RuleGroup.
	//
	// This member is required.
	Policy *string

	// The Amazon Resource Name (ARN) of the RuleGroup to which you want to attach the
	// policy.
	//
	// This member is required.
	ResourceArn *string
	// contains filtered or unexported fields
}

type PutPermissionPolicyOutput

type PutPermissionPolicyOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type ResolveEndpoint

type ResolveEndpoint struct {
	Resolver EndpointResolver
	Options  EndpointResolverOptions
}

func (*ResolveEndpoint) HandleSerialize

func (*ResolveEndpoint) ID

func (*ResolveEndpoint) ID() string

type TagResourceInput

type TagResourceInput struct {

	//
	//
	// This member is required.
	ResourceARN *string

	//
	//
	// This member is required.
	Tags []types.Tag
	// contains filtered or unexported fields
}

type TagResourceOutput

type TagResourceOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type UntagResourceInput

type UntagResourceInput struct {

	//
	//
	// This member is required.
	ResourceARN *string

	//
	//
	// This member is required.
	TagKeys []string
	// contains filtered or unexported fields
}

type UntagResourceOutput

type UntagResourceOutput struct {
	// Metadata pertaining to the operation's result.
	ResultMetadata middleware.Metadata
	// contains filtered or unexported fields
}

type UpdateByteMatchSetInput

type UpdateByteMatchSetInput struct {

	// The ByteMatchSetId of the ByteMatchSet that you want to update. ByteMatchSetId is returned
	// by CreateByteMatchSetand by ListByteMatchSets.
	//
	// This member is required.
	ByteMatchSetId *string

	// The value returned by the most recent call to GetChangeToken.
	//
	// This member is required.
	ChangeToken *string

	// 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
	//
	// This member is required.
	Updates []types.ByteMatchSetUpdate
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

type UpdateGeoMatchSetInput

type UpdateGeoMatchSetInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// This member is required.
	ChangeToken *string

	// The GeoMatchSetId of the GeoMatchSet that you want to update. GeoMatchSetId is returned by CreateGeoMatchSet
	// and by ListGeoMatchSets.
	//
	// This member is required.
	GeoMatchSetId *string

	// 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.
	//
	// This member is required.
	Updates []types.GeoMatchSetUpdate
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

type UpdateIPSetInput

type UpdateIPSetInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// This member is required.
	ChangeToken *string

	// The IPSetId of the IPSet that you want to update. IPSetId is returned by CreateIPSet and by ListIPSets.
	//
	// This member is required.
	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.
	//
	// This member is required.
	Updates []types.IPSetUpdate
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

type UpdateRateBasedRuleInput

type UpdateRateBasedRuleInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// This member is required.
	ChangeToken *string

	// 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.
	//
	// This member is required.
	RateLimit *int64

	// The RuleId of the RateBasedRule that you want to update. RuleId is returned by
	// CreateRateBasedRule and by ListRateBasedRules.
	//
	// This member is required.
	RuleId *string

	// An array of RuleUpdate objects that you want to insert into or delete from a RateBasedRule.
	//
	// This member is required.
	Updates []types.RuleUpdate
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

type UpdateRegexMatchSetInput

type UpdateRegexMatchSetInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// This member is required.
	ChangeToken *string

	// The RegexMatchSetId of the RegexMatchSet that you want to update. RegexMatchSetId is
	// returned by CreateRegexMatchSetand by ListRegexMatchSets.
	//
	// This member is required.
	RegexMatchSetId *string

	// An array of RegexMatchSetUpdate objects that you want to insert into or delete
	// from a RegexMatchSet. For more information, see RegexMatchTuple.
	//
	// This member is required.
	Updates []types.RegexMatchSetUpdate
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

type UpdateRegexPatternSetInput

type UpdateRegexPatternSetInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// This member is required.
	ChangeToken *string

	// The RegexPatternSetId of the RegexPatternSet that you want to update. RegexPatternSetId is
	// returned by CreateRegexPatternSetand by ListRegexPatternSets.
	//
	// This member is required.
	RegexPatternSetId *string

	// An array of RegexPatternSetUpdate objects that you want to insert into or
	// delete from a RegexPatternSet.
	//
	// This member is required.
	Updates []types.RegexPatternSetUpdate
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

type UpdateRuleGroupInput

type UpdateRuleGroupInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// This member is required.
	ChangeToken *string

	// The RuleGroupId of the RuleGroup that you want to update. RuleGroupId is returned by CreateRuleGroup
	// and by ListRuleGroups.
	//
	// This member is required.
	RuleGroupId *string

	// 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 .
	//
	// This member is required.
	Updates []types.RuleGroupUpdate
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

type UpdateRuleInput

type UpdateRuleInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// This member is required.
	ChangeToken *string

	// The RuleId of the Rule that you want to update. RuleId is returned by CreateRule
	// and by ListRules.
	//
	// This member is required.
	RuleId *string

	// 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
	//
	// This member is required.
	Updates []types.RuleUpdate
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

type UpdateSizeConstraintSetInput

type UpdateSizeConstraintSetInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// This member is required.
	ChangeToken *string

	// The SizeConstraintSetId of the SizeConstraintSet that you want to update. SizeConstraintSetId is
	// returned by CreateSizeConstraintSetand by ListSizeConstraintSets.
	//
	// This member is required.
	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
	//
	// This member is required.
	Updates []types.SizeConstraintSetUpdate
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

type UpdateSqlInjectionMatchSetInput

type UpdateSqlInjectionMatchSetInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// This member is required.
	ChangeToken *string

	// The SqlInjectionMatchSetId of the SqlInjectionMatchSet that you want to update.
	// SqlInjectionMatchSetId is returned by CreateSqlInjectionMatchSet and by ListSqlInjectionMatchSets.
	//
	// This member is required.
	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
	//
	// This member is required.
	Updates []types.SqlInjectionMatchSetUpdate
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

The response to an UpdateSqlInjectionMatchSets request.

type UpdateWebACLInput

type UpdateWebACLInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// This member is required.
	ChangeToken *string

	// The WebACLId of the WebACL that you want to update. WebACLId is returned by CreateWebACL and by ListWebACLs.
	//
	// This member is required.
	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
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

type UpdateXssMatchSetInput

type UpdateXssMatchSetInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// This member is required.
	ChangeToken *string

	// 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
	//
	// This member is required.
	Updates []types.XssMatchSetUpdate

	// The XssMatchSetId of the XssMatchSet that you want to update. XssMatchSetId is
	// returned by CreateXssMatchSetand by ListXssMatchSets.
	//
	// This member is required.
	XssMatchSetId *string
	// contains filtered or unexported fields
}

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
	// contains filtered or unexported fields
}

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