waf

package
v0.24.0 Latest Latest
Warning

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

Go to latest
Published: Jul 22, 2020 License: Apache-2.0 Imports: 8 Imported by: 63

Documentation

Overview

Package waf provides the client and types for making API requests to WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

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

See https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24 for more information on this service.

See waf package documentation for more information. https://docs.aws.amazon.com/sdk-for-go/api/service/waf/

Using the Client

To use WAF with the SDK use the New function to create a new service client. With that client you can make API requests to the service. These clients are safe to use concurrently.

See the SDK's documentation for more information on how to use the SDK. https://docs.aws.amazon.com/sdk-for-go/api/

See aws.Config documentation for more information on configuring SDK clients. https://docs.aws.amazon.com/sdk-for-go/api/aws/#Config

See the WAF client for more information on creating client for this service. https://docs.aws.amazon.com/sdk-for-go/api/service/waf/#New

Index

Examples

Constants

View Source
const (
	ServiceName = "WAF" // Service's name
	ServiceID   = "WAF" // Service's identifier
	EndpointsID = "waf" // Service's Endpoint identifier
)
View Source
const (

	// ErrCodeWAFBadRequestException for service response error code
	// "WAFBadRequestException".
	ErrCodeWAFBadRequestException = "WAFBadRequestException"

	// ErrCodeWAFDisallowedNameException for service response error code
	// "WAFDisallowedNameException".
	//
	// The name specified is invalid.
	ErrCodeWAFDisallowedNameException = "WAFDisallowedNameException"

	// ErrCodeWAFEntityMigrationException for service response error code
	// "WAFEntityMigrationException".
	//
	// The operation failed due to a problem with the migration. The failure cause
	// is provided in the exception, in the MigrationErrorType:
	//
	//    * ENTITY_NOT_SUPPORTED - The web ACL has an unsupported entity but the
	//    IgnoreUnsupportedType is not set to true.
	//
	//    * ENTITY_NOT_FOUND - The web ACL doesn't exist.
	//
	//    * S3_BUCKET_NO_PERMISSION - You don't have permission to perform the PutObject
	//    action to the specified Amazon S3 bucket.
	//
	//    * S3_BUCKET_NOT_ACCESSIBLE - The bucket policy doesn't allow AWS WAF to
	//    perform the PutObject action in the bucket.
	//
	//    * S3_BUCKET_NOT_FOUND - The S3 bucket doesn't exist.
	//
	//    * S3_BUCKET_INVALID_REGION - The S3 bucket is not in the same Region as
	//    the web ACL.
	//
	//    * S3_INTERNAL_ERROR - AWS WAF failed to create the template in the S3
	//    bucket for another reason.
	ErrCodeWAFEntityMigrationException = "WAFEntityMigrationException"

	// ErrCodeWAFInternalErrorException for service response error code
	// "WAFInternalErrorException".
	//
	// The operation failed because of a system problem, even though the request
	// was valid. Retry your request.
	ErrCodeWAFInternalErrorException = "WAFInternalErrorException"

	// ErrCodeWAFInvalidAccountException for service response error code
	// "WAFInvalidAccountException".
	//
	// The operation failed because you tried to create, update, or delete an object
	// by using an invalid account identifier.
	ErrCodeWAFInvalidAccountException = "WAFInvalidAccountException"

	// ErrCodeWAFInvalidOperationException for service response error code
	// "WAFInvalidOperationException".
	//
	// The operation failed because there was nothing to do. For example:
	//
	//    * You tried to remove a Rule from a WebACL, but the Rule isn't in the
	//    specified WebACL.
	//
	//    * You tried to remove an IP address from an IPSet, but the IP address
	//    isn't in the specified IPSet.
	//
	//    * You tried to remove a ByteMatchTuple from a ByteMatchSet, but the ByteMatchTuple
	//    isn't in the specified WebACL.
	//
	//    * You tried to add a Rule to a WebACL, but the Rule already exists in
	//    the specified WebACL.
	//
	//    * You tried to add a ByteMatchTuple to a ByteMatchSet, but the ByteMatchTuple
	//    already exists in the specified WebACL.
	ErrCodeWAFInvalidOperationException = "WAFInvalidOperationException"

	// ErrCodeWAFInvalidParameterException for service response error code
	// "WAFInvalidParameterException".
	//
	// The operation failed because AWS WAF didn't recognize a parameter in the
	// request. For example:
	//
	//    * You specified an invalid parameter name.
	//
	//    * You specified an invalid value.
	//
	//    * You tried to update an object (ByteMatchSet, IPSet, Rule, or WebACL)
	//    using an action other than INSERT or DELETE.
	//
	//    * You tried to create a WebACL with a DefaultAction Type other than ALLOW,
	//    BLOCK, or COUNT.
	//
	//    * You tried to create a RateBasedRule with a RateKey value other than
	//    IP.
	//
	//    * You tried to update a WebACL with a WafAction Type other than ALLOW,
	//    BLOCK, or COUNT.
	//
	//    * You tried to update a ByteMatchSet with a FieldToMatch Type other than
	//    HEADER, METHOD, QUERY_STRING, URI, or BODY.
	//
	//    * You tried to update a ByteMatchSet with a Field of HEADER but no value
	//    for Data.
	//
	//    * Your request references an ARN that is malformed, or corresponds to
	//    a resource with which a web ACL cannot be associated.
	ErrCodeWAFInvalidParameterException = "WAFInvalidParameterException"

	// ErrCodeWAFInvalidPermissionPolicyException for service response error code
	// "WAFInvalidPermissionPolicyException".
	//
	// The operation failed because the specified policy is not in the proper format.
	//
	// The policy 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.
	ErrCodeWAFInvalidPermissionPolicyException = "WAFInvalidPermissionPolicyException"

	// ErrCodeWAFInvalidRegexPatternException for service response error code
	// "WAFInvalidRegexPatternException".
	//
	// The regular expression (regex) you specified in RegexPatternString is invalid.
	ErrCodeWAFInvalidRegexPatternException = "WAFInvalidRegexPatternException"

	// ErrCodeWAFLimitsExceededException for service response error code
	// "WAFLimitsExceededException".
	//
	// The operation exceeds a resource limit, for example, the maximum number of
	// WebACL objects that you can create for an AWS account. For more information,
	// see Limits (https://docs.aws.amazon.com/waf/latest/developerguide/limits.html)
	// in the AWS WAF Developer Guide.
	ErrCodeWAFLimitsExceededException = "WAFLimitsExceededException"

	// ErrCodeWAFNonEmptyEntityException for service response error code
	// "WAFNonEmptyEntityException".
	//
	// The operation failed because you tried to delete an object that isn't empty.
	// For example:
	//
	//    * You tried to delete a WebACL that still contains one or more Rule objects.
	//
	//    * You tried to delete a Rule that still contains one or more ByteMatchSet
	//    objects or other predicates.
	//
	//    * You tried to delete a ByteMatchSet that contains one or more ByteMatchTuple
	//    objects.
	//
	//    * You tried to delete an IPSet that references one or more IP addresses.
	ErrCodeWAFNonEmptyEntityException = "WAFNonEmptyEntityException"

	// ErrCodeWAFNonexistentContainerException for service response error code
	// "WAFNonexistentContainerException".
	//
	// The operation failed because you tried to add an object to or delete an object
	// from another object that doesn't exist. For example:
	//
	//    * You tried to add a Rule to or delete a Rule from a WebACL that doesn't
	//    exist.
	//
	//    * You tried to add a ByteMatchSet to or delete a ByteMatchSet from a Rule
	//    that doesn't exist.
	//
	//    * You tried to add an IP address to or delete an IP address from an IPSet
	//    that doesn't exist.
	//
	//    * You tried to add a ByteMatchTuple to or delete a ByteMatchTuple from
	//    a ByteMatchSet that doesn't exist.
	ErrCodeWAFNonexistentContainerException = "WAFNonexistentContainerException"

	// ErrCodeWAFNonexistentItemException for service response error code
	// "WAFNonexistentItemException".
	//
	// The operation failed because the referenced object doesn't exist.
	ErrCodeWAFNonexistentItemException = "WAFNonexistentItemException"

	// ErrCodeWAFReferencedItemException for service response error code
	// "WAFReferencedItemException".
	//
	// The operation failed because you tried to delete an object that is still
	// in use. For example:
	//
	//    * You tried to delete a ByteMatchSet that is still referenced by a Rule.
	//
	//    * You tried to delete a Rule that is still referenced by a WebACL.
	ErrCodeWAFReferencedItemException = "WAFReferencedItemException"

	// ErrCodeWAFServiceLinkedRoleErrorException for service response error code
	// "WAFServiceLinkedRoleErrorException".
	//
	// AWS WAF is not able to access the service linked role. This can be caused
	// by a previous PutLoggingConfiguration request, which can lock the service
	// linked role for about 20 seconds. Please try your request again. The service
	// linked role can also be locked by a previous DeleteServiceLinkedRole request,
	// which can lock the role for 15 minutes or more. If you recently made a DeleteServiceLinkedRole,
	// wait at least 15 minutes and try the request again. If you receive this same
	// exception again, you will have to wait additional time until the role is
	// unlocked.
	ErrCodeWAFServiceLinkedRoleErrorException = "WAFServiceLinkedRoleErrorException"

	// ErrCodeWAFStaleDataException for service response error code
	// "WAFStaleDataException".
	//
	// The operation failed because you tried to create, update, or delete an object
	// by using a change token that has already been used.
	ErrCodeWAFStaleDataException = "WAFStaleDataException"

	// ErrCodeWAFSubscriptionNotFoundException for service response error code
	// "WAFSubscriptionNotFoundException".
	//
	// The specified subscription does not exist.
	ErrCodeWAFSubscriptionNotFoundException = "WAFSubscriptionNotFoundException"

	// ErrCodeWAFTagOperationException for service response error code
	// "WAFTagOperationException".
	ErrCodeWAFTagOperationException = "WAFTagOperationException"

	// ErrCodeWAFTagOperationInternalErrorException for service response error code
	// "WAFTagOperationInternalErrorException".
	ErrCodeWAFTagOperationInternalErrorException = "WAFTagOperationInternalErrorException"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type ActivatedRule

type ActivatedRule struct {

	// Specifies the action that CloudFront or AWS WAF takes when a web request
	// matches the conditions in the Rule. Valid values for Action include the following:
	//
	//    * ALLOW: CloudFront responds with the requested object.
	//
	//    * BLOCK: CloudFront responds with an HTTP 403 (Forbidden) status code.
	//
	//    * COUNT: AWS WAF increments a counter of requests that match the conditions
	//    in the rule and then continues to inspect the web request based on the
	//    remaining rules in the web ACL.
	//
	// 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.
	Action *WafAction `type:"structure"`

	// An array of rules to exclude from a rule group. This is applicable only when
	// the ActivatedRule refers to a RuleGroup.
	//
	// Sometimes it is necessary to troubleshoot rule groups that are blocking traffic
	// unexpectedly (false positives). One troubleshooting technique is to identify
	// the specific rule within the rule group that is blocking the legitimate traffic
	// and then disable (exclude) that particular rule. You can exclude rules from
	// both your own rule groups and AWS Marketplace rule groups that have been
	// associated with a web ACL.
	//
	// Specifying ExcludedRules does not remove those rules from the rule group.
	// Rather, it changes the action for the rules to COUNT. Therefore, requests
	// that match an ExcludedRule are counted but not blocked. The RuleGroup owner
	// will receive COUNT metrics for each ExcludedRule.
	//
	// If you want to exclude rules from a rule group that is already associated
	// with a web ACL, perform the following steps:
	//
	// Use the AWS WAF logs to identify the IDs of the rules that you want to exclude.
	// For more information about the logs, see Logging Web ACL Traffic Information
	// (https://docs.aws.amazon.com/waf/latest/developerguide/logging.html).
	//
	// Submit an UpdateWebACL request that has two actions:
	//
	//    * The first action deletes the existing rule group from the web ACL. That
	//    is, in the UpdateWebACL request, the first Updates:Action should be DELETE
	//    and Updates:ActivatedRule:RuleId should be the rule group that contains
	//    the rules that you want to exclude.
	//
	//    * The second action inserts the same rule group back in, but specifying
	//    the rules to exclude. That is, the second Updates:Action should be INSERT,
	//    Updates:ActivatedRule:RuleId should be the rule group that you just removed,
	//    and ExcludedRules should contain the rules that you want to exclude.
	ExcludedRules []ExcludedRule `type:"list"`

	// Use the OverrideAction to test your RuleGroup.
	//
	// Any rule in a RuleGroup can potentially block a request. If you set the OverrideAction
	// to None, the RuleGroup will block a request if any individual rule in the
	// RuleGroup matches the request and is configured to block that request. However
	// if you first want to test the RuleGroup, set the OverrideAction to Count.
	// The RuleGroup will then override any block action specified by individual
	// rules contained within the group. Instead of blocking matching requests,
	// those requests will be counted. You can view a record of counted requests
	// using GetSampledRequests.
	//
	// 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.
	OverrideAction *WafOverrideAction `type:"structure"`

	// Specifies the order in which the Rules in a WebACL are evaluated. Rules with
	// a lower value for Priority are evaluated before Rules with a higher value.
	// The value must be a unique integer. If you add multiple Rules to a WebACL,
	// the values don't need to be consecutive.
	//
	// Priority is a required field
	Priority *int64 `type:"integer" required:"true"`

	// The RuleId for a Rule. You use RuleId to get more information about a Rule
	// (see GetRule), update a Rule (see UpdateRule), insert a Rule into a WebACL
	// or delete a one from a WebACL (see UpdateWebACL), or delete a Rule from AWS
	// WAF (see DeleteRule).
	//
	// RuleId is returned by CreateRule and by ListRules.
	//
	// RuleId is a required field
	RuleId *string `min:"1" type:"string" required:"true"`

	// The rule type, either REGULAR, as defined by Rule, RATE_BASED, as defined
	// by RateBasedRule, or GROUP, as defined by RuleGroup. The default is REGULAR.
	// Although this field is optional, be aware that if you try to add a RATE_BASED
	// rule to a web ACL without setting the type, the UpdateWebACL request will
	// fail because the request tries to add a REGULAR rule with the specified ID,
	// which does not exist.
	Type WafRuleType `type:"string" enum:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

The ActivatedRule object in an UpdateWebACL request specifies a Rule that you want to insert or delete, the priority of the Rule in the WebACL, and the action that you want AWS WAF to take when a web request matches the Rule (ALLOW, BLOCK, or COUNT).

To specify whether to insert or delete a Rule, use the Action parameter in the WebACLUpdate data type.

func (ActivatedRule) String

func (s ActivatedRule) String() string

String returns the string representation

func (*ActivatedRule) Validate

func (s *ActivatedRule) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type ByteMatchSet

type ByteMatchSet struct {

	// The ByteMatchSetId for a ByteMatchSet. You use ByteMatchSetId to get information
	// about a ByteMatchSet (see GetByteMatchSet), update a ByteMatchSet (see UpdateByteMatchSet),
	// insert a ByteMatchSet into a Rule or delete one from a Rule (see UpdateRule),
	// and delete a ByteMatchSet from AWS WAF (see DeleteByteMatchSet).
	//
	// ByteMatchSetId is returned by CreateByteMatchSet and by ListByteMatchSets.
	//
	// ByteMatchSetId is a required field
	ByteMatchSetId *string `min:"1" type:"string" required:"true"`

	// Specifies the bytes (typically a string that corresponds with ASCII characters)
	// that you want AWS WAF to search for in web requests, the location in requests
	// that you want AWS WAF to search, and other settings.
	//
	// ByteMatchTuples is a required field
	ByteMatchTuples []ByteMatchTuple `type:"list" required:"true"`

	// A friendly name or description of the ByteMatchSet. You can't change Name
	// after you create a ByteMatchSet.
	Name *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

In a GetByteMatchSet request, ByteMatchSet is a complex type that contains the ByteMatchSetId and Name of a ByteMatchSet, and the values that you specified when you updated the ByteMatchSet.

A complex type that contains ByteMatchTuple objects, which specify the parts of web requests that you want AWS WAF to inspect and the values that you want AWS WAF to search for. If a ByteMatchSet contains more than one ByteMatchTuple object, a request needs to match the settings in only one ByteMatchTuple to be considered a match.

func (ByteMatchSet) String

func (s ByteMatchSet) String() string

String returns the string representation

type ByteMatchSetSummary

type ByteMatchSetSummary struct {

	// The ByteMatchSetId for a ByteMatchSet. You use ByteMatchSetId to get information
	// about a ByteMatchSet, update a ByteMatchSet, remove a ByteMatchSet from a
	// Rule, and delete a ByteMatchSet from AWS WAF.
	//
	// ByteMatchSetId is returned by CreateByteMatchSet and by ListByteMatchSets.
	//
	// ByteMatchSetId is a required field
	ByteMatchSetId *string `min:"1" type:"string" required:"true"`

	// A friendly name or description of the ByteMatchSet. You can't change Name
	// after you create a ByteMatchSet.
	//
	// Name is a required field
	Name *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Returned by ListByteMatchSets. Each ByteMatchSetSummary object includes the Name and ByteMatchSetId for one ByteMatchSet.

func (ByteMatchSetSummary) String

func (s ByteMatchSetSummary) String() string

String returns the string representation

type ByteMatchSetUpdate

type ByteMatchSetUpdate struct {

	// Specifies whether to insert or delete a ByteMatchTuple.
	//
	// Action is a required field
	Action ChangeAction `type:"string" required:"true" enum:"true"`

	// Information about the part of a web request that you want AWS WAF to inspect
	// and the value that you want AWS WAF to search for. If you specify DELETE
	// for the value of Action, the ByteMatchTuple values must exactly match the
	// values in the ByteMatchTuple that you want to delete from the ByteMatchSet.
	//
	// ByteMatchTuple is a required field
	ByteMatchTuple *ByteMatchTuple `type:"structure" required:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

In an UpdateByteMatchSet request, ByteMatchSetUpdate specifies whether to insert or delete a ByteMatchTuple and includes the settings for the ByteMatchTuple.

func (ByteMatchSetUpdate) String

func (s ByteMatchSetUpdate) String() string

String returns the string representation

func (*ByteMatchSetUpdate) Validate

func (s *ByteMatchSetUpdate) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type ByteMatchTuple

type ByteMatchTuple struct {

	// The part of a web request that you want AWS WAF to search, such as a specified
	// header or a query string. For more information, see FieldToMatch.
	//
	// FieldToMatch is a required field
	FieldToMatch *FieldToMatch `type:"structure" required:"true"`

	// Within the portion of a web request that you want to search (for example,
	// in the query string, if any), specify where you want AWS WAF to search. Valid
	// values include the following:
	//
	// CONTAINS
	//
	// The specified part of the web request must include the value of TargetString,
	// but the location doesn't matter.
	//
	// CONTAINS_WORD
	//
	// The specified part of the web request must include the value of TargetString,
	// and TargetString must contain only alphanumeric characters or underscore
	// (A-Z, a-z, 0-9, or _). In addition, TargetString must be a word, which means
	// one of the following:
	//
	//    * TargetString exactly matches the value of the specified part of the
	//    web request, such as the value of a header.
	//
	//    * TargetString is at the beginning of the specified part of the web request
	//    and is followed by a character other than an alphanumeric character or
	//    underscore (_), for example, BadBot;.
	//
	//    * TargetString is at the end of the specified part of the web request
	//    and is preceded by a character other than an alphanumeric character or
	//    underscore (_), for example, ;BadBot.
	//
	//    * TargetString is in the middle of the specified part of the web request
	//    and is preceded and followed by characters other than alphanumeric characters
	//    or underscore (_), for example, -BadBot;.
	//
	// EXACTLY
	//
	// The value of the specified part of the web request must exactly match the
	// value of TargetString.
	//
	// STARTS_WITH
	//
	// The value of TargetString must appear at the beginning of the specified part
	// of the web request.
	//
	// ENDS_WITH
	//
	// The value of TargetString must appear at the end of the specified part of
	// the web request.
	//
	// PositionalConstraint is a required field
	PositionalConstraint PositionalConstraint `type:"string" required:"true" enum:"true"`

	// The value that you want AWS WAF to search for. AWS WAF searches for the specified
	// string in the part of web requests that you specified in FieldToMatch. The
	// maximum length of the value is 50 bytes.
	//
	// Valid values depend on the values that you specified for FieldToMatch:
	//
	//    * HEADER: The value that you want AWS WAF to search for in the request
	//    header that you specified in FieldToMatch, for example, the value of the
	//    User-Agent or Referer header.
	//
	//    * METHOD: The HTTP method, which indicates the type of operation specified
	//    in the request. CloudFront supports the following methods: DELETE, GET,
	//    HEAD, OPTIONS, PATCH, POST, and PUT.
	//
	//    * QUERY_STRING: The value that you want AWS WAF to search for in the query
	//    string, which is the part of a URL that appears after a ? character.
	//
	//    * URI: The value that you want AWS WAF to search for in the part of a
	//    URL that identifies a resource, for example, /images/daily-ad.jpg.
	//
	//    * BODY: The part of a request that contains any additional data that you
	//    want to send to your web server as the HTTP request body, such as data
	//    from a form. The request body immediately follows the request headers.
	//    Note that only the first 8192 bytes of the request body are forwarded
	//    to AWS WAF for inspection. To allow or block requests based on the length
	//    of the body, you can create a size constraint set. For more information,
	//    see CreateSizeConstraintSet.
	//
	//    * SINGLE_QUERY_ARG: The parameter in the query string that you will inspect,
	//    such as UserName or SalesRegion. The maximum length for SINGLE_QUERY_ARG
	//    is 30 characters.
	//
	//    * ALL_QUERY_ARGS: Similar to SINGLE_QUERY_ARG, but instead of inspecting
	//    a single parameter, AWS WAF inspects all parameters within the query string
	//    for the value or regex pattern that you specify in TargetString.
	//
	// If TargetString includes alphabetic characters A-Z and a-z, note that the
	// value is case sensitive.
	//
	// If you're using the AWS WAF API
	//
	// Specify a base64-encoded version of the value. The maximum length of the
	// value before you base64-encode it is 50 bytes.
	//
	// For example, suppose the value of Type is HEADER and the value of Data is
	// User-Agent. If you want to search the User-Agent header for the value BadBot,
	// you base64-encode BadBot using MIME base64-encoding and include the resulting
	// value, QmFkQm90, in the value of TargetString.
	//
	// If you're using the AWS CLI or one of the AWS SDKs
	//
	// The value that you want AWS WAF to search for. The SDK automatically base64
	// encodes the value.
	//
	// TargetString is automatically base64 encoded/decoded by the SDK.
	//
	// TargetString is a required field
	TargetString []byte `type:"blob" required:"true"`

	// Text transformations eliminate some of the unusual formatting that attackers
	// use in web requests in an effort to bypass AWS WAF. If you specify a transformation,
	// AWS WAF performs the transformation on FieldToMatch before inspecting it
	// for a match.
	//
	// You can only specify a single type of TextTransformation.
	//
	// CMD_LINE
	//
	// When you're concerned that attackers are injecting an operating system command
	// line command and using unusual formatting to disguise some or all of the
	// command, use this option to perform the following transformations:
	//
	//    * Delete the following characters: \ " ' ^
	//
	//    * Delete spaces before the following characters: / (
	//
	//    * Replace the following characters with a space: , ;
	//
	//    * Replace multiple spaces with one space
	//
	//    * Convert uppercase letters (A-Z) to lowercase (a-z)
	//
	// COMPRESS_WHITE_SPACE
	//
	// Use this option to replace the following characters with a space character
	// (decimal 32):
	//
	//    * \f, formfeed, decimal 12
	//
	//    * \t, tab, decimal 9
	//
	//    * \n, newline, decimal 10
	//
	//    * \r, carriage return, decimal 13
	//
	//    * \v, vertical tab, decimal 11
	//
	//    * non-breaking space, decimal 160
	//
	// COMPRESS_WHITE_SPACE also replaces multiple spaces with one space.
	//
	// HTML_ENTITY_DECODE
	//
	// Use this option to replace HTML-encoded characters with unencoded characters.
	// HTML_ENTITY_DECODE performs the following operations:
	//
	//    * Replaces (ampersand)quot; with "
	//
	//    * Replaces (ampersand)nbsp; with a non-breaking space, decimal 160
	//
	//    * Replaces (ampersand)lt; with a "less than" symbol
	//
	//    * Replaces (ampersand)gt; with >
	//
	//    * Replaces characters that are represented in hexadecimal format, (ampersand)#xhhhh;,
	//    with the corresponding characters
	//
	//    * Replaces characters that are represented in decimal format, (ampersand)#nnnn;,
	//    with the corresponding characters
	//
	// LOWERCASE
	//
	// Use this option to convert uppercase letters (A-Z) to lowercase (a-z).
	//
	// URL_DECODE
	//
	// Use this option to decode a URL-encoded value.
	//
	// NONE
	//
	// Specify NONE if you don't want to perform any text transformations.
	//
	// TextTransformation is a required field
	TextTransformation TextTransformation `type:"string" required:"true" enum:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

The bytes (typically a string that corresponds with ASCII characters) that you want AWS WAF to search for in web requests, the location in requests that you want AWS WAF to search, and other settings.

func (ByteMatchTuple) String

func (s ByteMatchTuple) String() string

String returns the string representation

func (*ByteMatchTuple) Validate

func (s *ByteMatchTuple) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type ChangeAction

type ChangeAction string
const (
	ChangeActionInsert ChangeAction = "INSERT"
	ChangeActionDelete ChangeAction = "DELETE"
)

Enum values for ChangeAction

func (ChangeAction) MarshalValue added in v0.3.0

func (enum ChangeAction) MarshalValue() (string, error)

func (ChangeAction) MarshalValueBuf added in v0.3.0

func (enum ChangeAction) MarshalValueBuf(b []byte) ([]byte, error)

type ChangeTokenStatus

type ChangeTokenStatus string
const (
	ChangeTokenStatusProvisioned ChangeTokenStatus = "PROVISIONED"
	ChangeTokenStatusPending     ChangeTokenStatus = "PENDING"
	ChangeTokenStatusInsync      ChangeTokenStatus = "INSYNC"
)

Enum values for ChangeTokenStatus

func (ChangeTokenStatus) MarshalValue added in v0.3.0

func (enum ChangeTokenStatus) MarshalValue() (string, error)

func (ChangeTokenStatus) MarshalValueBuf added in v0.3.0

func (enum ChangeTokenStatus) MarshalValueBuf(b []byte) ([]byte, error)

type Client added in v0.9.0

type Client struct {
	*aws.Client
}

Client provides the API operation methods for making requests to WAF. See this package's package overview docs for details on the service.

The client's methods are safe to use concurrently. It is not safe to modify mutate any of the struct's properties though.

func New

func New(config aws.Config) *Client

New creates a new instance of the client from the provided Config.

Example:

// Create a client from just a config.
svc := waf.New(myConfig)

func (*Client) CreateByteMatchSetRequest added in v0.9.0

func (c *Client) CreateByteMatchSetRequest(input *CreateByteMatchSetInput) CreateByteMatchSetRequest

CreateByteMatchSetRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Creates a ByteMatchSet. You then use UpdateByteMatchSet to identify the part of a web request that you want AWS WAF to inspect, such as the values of the User-Agent header or the query string. For example, you can create a ByteMatchSet that matches any requests with User-Agent headers that contain the string BadBot. You can then configure AWS WAF to reject those requests.

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

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

Submit a CreateByteMatchSet request.

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

Submit an UpdateByteMatchSet request to specify the part of the request that you want AWS WAF to inspect (for example, the header or the URI) and the value that you want AWS WAF to watch for.

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

// Example sending a request using CreateByteMatchSetRequest.
req := client.CreateByteMatchSetRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/CreateByteMatchSet

func (*Client) CreateGeoMatchSetRequest added in v0.9.0

func (c *Client) CreateGeoMatchSetRequest(input *CreateGeoMatchSetInput) CreateGeoMatchSetRequest

CreateGeoMatchSetRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Creates an GeoMatchSet, which you use to specify which web requests you want to allow or block based on the country that the requests originate from. For example, if you're receiving a lot of requests from one or more countries and you want to block the requests, you can create an GeoMatchSet that contains those countries and then configure AWS WAF to block the requests.

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

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

Submit a CreateGeoMatchSet request.

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

Submit an UpdateGeoMatchSetSet request to specify the countries that you want AWS WAF to watch for.

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

// Example sending a request using CreateGeoMatchSetRequest.
req := client.CreateGeoMatchSetRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/CreateGeoMatchSet

func (*Client) CreateIPSetRequest added in v0.9.0

func (c *Client) CreateIPSetRequest(input *CreateIPSetInput) CreateIPSetRequest

CreateIPSetRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Creates an IPSet, which you use to specify which web requests that you want to allow or block based on the IP addresses that the requests originate from. For example, if you're receiving a lot of requests from one or more individual IP addresses or one or more ranges of IP addresses and you want to block the requests, you can create an IPSet that contains those IP addresses and then configure AWS WAF to block the requests.

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

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

Submit a CreateIPSet request.

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

Submit an UpdateIPSet request to specify the IP addresses that you want AWS WAF to watch for.

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

// Example sending a request using CreateIPSetRequest.
req := client.CreateIPSetRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/CreateIPSet

Example (Shared00)

To create an IP set

The following example creates an IP match set named MyIPSetFriendlyName.

package main

import (
	"context"
	"fmt"

	"github.com/aws/aws-sdk-go-v2/aws"
	"github.com/aws/aws-sdk-go-v2/aws/awserr"
	"github.com/aws/aws-sdk-go-v2/aws/external"
	"github.com/aws/aws-sdk-go-v2/service/waf"
)

func main() {
	cfg, err := external.LoadDefaultAWSConfig()
	if err != nil {
		panic("failed to load config, " + err.Error())
	}

	svc := waf.New(cfg)
	input := &waf.CreateIPSetInput{
		ChangeToken: aws.String("abcd12f2-46da-4fdb-b8d5-fbd4c466928f"),
		Name:        aws.String("MyIPSetFriendlyName"),
	}

	req := svc.CreateIPSetRequest(input)
	result, err := req.Send(context.Background())
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case waf.ErrCodeWAFStaleDataException:
				fmt.Println(waf.ErrCodeWAFStaleDataException, aerr.Error())
			case waf.ErrCodeWAFInternalErrorException:
				fmt.Println(waf.ErrCodeWAFInternalErrorException, aerr.Error())
			case waf.ErrCodeWAFInvalidAccountException:
				fmt.Println(waf.ErrCodeWAFInvalidAccountException, aerr.Error())
			case waf.ErrCodeWAFDisallowedNameException:
				fmt.Println(waf.ErrCodeWAFDisallowedNameException, aerr.Error())
			case waf.ErrCodeWAFInvalidParameterException:
				fmt.Println(waf.ErrCodeWAFInvalidParameterException, aerr.Error())
			case waf.ErrCodeWAFLimitsExceededException:
				fmt.Println(waf.ErrCodeWAFLimitsExceededException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Client) CreateRateBasedRuleRequest added in v0.9.0

func (c *Client) CreateRateBasedRuleRequest(input *CreateRateBasedRuleInput) CreateRateBasedRuleRequest

CreateRateBasedRuleRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Creates a RateBasedRule. The RateBasedRule contains a RateLimit, which specifies the maximum number of requests that AWS WAF allows from a specified IP address in a five-minute period. The RateBasedRule also contains the IPSet objects, ByteMatchSet objects, and other predicates that identify the requests that you want to count or block if these requests exceed the RateLimit.

If you add more than one predicate to a RateBasedRule, a request not only must exceed the RateLimit, but it also must match all the conditions to be counted or blocked. For example, suppose you add the following to a RateBasedRule:

  • An IPSet that matches the IP address 192.0.2.44/32

  • A ByteMatchSet that matches BadBot in the User-Agent header

Further, you specify a RateLimit of 1,000.

You then add the RateBasedRule to a WebACL and specify that you want to block requests that meet the conditions in the rule. For a request to be blocked, it must come from the IP address 192.0.2.44 and the User-Agent header in the request must contain the value BadBot. Further, requests that match these two conditions must be received at a rate of more than 1,000 requests every five minutes. If both conditions are met and the rate is exceeded, AWS WAF blocks the requests. If the rate drops below 1,000 for a five-minute period, AWS WAF no longer blocks the requests.

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 GetChangeToken to 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 UpdateRule request.

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

// Example sending a request using CreateRateBasedRuleRequest.
req := client.CreateRateBasedRuleRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/CreateRateBasedRule

func (*Client) CreateRegexMatchSetRequest added in v0.9.0

func (c *Client) CreateRegexMatchSetRequest(input *CreateRegexMatchSetInput) CreateRegexMatchSetRequest

CreateRegexMatchSetRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Creates a RegexMatchSet. You then use UpdateRegexMatchSet to identify the part of a web request that you want AWS WAF to inspect, such as the values of the User-Agent header or the query string. For example, you can create a RegexMatchSet that contains a RegexMatchTuple that looks for any requests with User-Agent headers that match a RegexPatternSet with pattern B[a@]dB[o0]t. You can then configure AWS WAF to reject those requests.

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

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

Submit a CreateRegexMatchSet request.

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

Submit an UpdateRegexMatchSet request to specify the part of the request that you want AWS WAF to inspect (for example, the header or the URI) and the value, using a RegexPatternSet, that you want AWS WAF to watch for.

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

// Example sending a request using CreateRegexMatchSetRequest.
req := client.CreateRegexMatchSetRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/CreateRegexMatchSet

func (*Client) CreateRegexPatternSetRequest added in v0.9.0

func (c *Client) CreateRegexPatternSetRequest(input *CreateRegexPatternSetInput) CreateRegexPatternSetRequest

CreateRegexPatternSetRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Creates a RegexPatternSet. You then use UpdateRegexPatternSet to specify the regular expression (regex) pattern that you want AWS WAF to search for, such as B[a@]dB[o0]t. You can then configure AWS WAF to reject those requests.

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

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

Submit a CreateRegexPatternSet request.

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

Submit an UpdateRegexPatternSet request to specify the string that you want AWS WAF to watch for.

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

// Example sending a request using CreateRegexPatternSetRequest.
req := client.CreateRegexPatternSetRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/CreateRegexPatternSet

func (*Client) CreateRuleGroupRequest added in v0.9.0

func (c *Client) CreateRuleGroupRequest(input *CreateRuleGroupInput) CreateRuleGroupRequest

CreateRuleGroupRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Creates a RuleGroup. A rule group is a collection of predefined rules that you add to a web ACL. You use UpdateRuleGroup to add rules to the rule group.

Rule groups are subject to the following limits:

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

  • One rule group per web ACL.

  • Ten rules per rule group.

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

// Example sending a request using CreateRuleGroupRequest.
req := client.CreateRuleGroupRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/CreateRuleGroup

func (*Client) CreateRuleRequest added in v0.9.0

func (c *Client) CreateRuleRequest(input *CreateRuleInput) CreateRuleRequest

CreateRuleRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Creates a Rule, which contains the IPSet objects, ByteMatchSet objects, and other predicates that identify the requests that you want to block. If you add more than one predicate to a Rule, a request must match all of the specifications to be allowed or blocked. For example, suppose that you add the following to a Rule:

  • An IPSet that matches the IP address 192.0.2.44/32

  • A ByteMatchSet that matches BadBot in the User-Agent header

You then add the Rule to a WebACL and specify that you want to blocks requests that satisfy the Rule. For a request to be blocked, it must come from the IP address 192.0.2.44 and the User-Agent header in the request must contain the value BadBot.

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

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

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

Submit a CreateRule request.

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

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

Create and update a WebACL that contains the Rule. For more information, see CreateWebACL.

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

// Example sending a request using CreateRuleRequest.
req := client.CreateRuleRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/CreateRule

Example (Shared00)

To create a rule

The following example creates a rule named WAFByteHeaderRule.

package main

import (
	"context"
	"fmt"

	"github.com/aws/aws-sdk-go-v2/aws"
	"github.com/aws/aws-sdk-go-v2/aws/awserr"
	"github.com/aws/aws-sdk-go-v2/aws/external"
	"github.com/aws/aws-sdk-go-v2/service/waf"
)

func main() {
	cfg, err := external.LoadDefaultAWSConfig()
	if err != nil {
		panic("failed to load config, " + err.Error())
	}

	svc := waf.New(cfg)
	input := &waf.CreateRuleInput{
		ChangeToken: aws.String("abcd12f2-46da-4fdb-b8d5-fbd4c466928f"),
		MetricName:  aws.String("WAFByteHeaderRule"),
		Name:        aws.String("WAFByteHeaderRule"),
	}

	req := svc.CreateRuleRequest(input)
	result, err := req.Send(context.Background())
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case waf.ErrCodeWAFStaleDataException:
				fmt.Println(waf.ErrCodeWAFStaleDataException, aerr.Error())
			case waf.ErrCodeWAFInternalErrorException:
				fmt.Println(waf.ErrCodeWAFInternalErrorException, aerr.Error())
			case waf.ErrCodeWAFDisallowedNameException:
				fmt.Println(waf.ErrCodeWAFDisallowedNameException, aerr.Error())
			case waf.ErrCodeWAFInvalidParameterException:
				fmt.Println(waf.ErrCodeWAFInvalidParameterException, aerr.Error())
			case waf.ErrCodeWAFLimitsExceededException:
				fmt.Println(waf.ErrCodeWAFLimitsExceededException, aerr.Error())
			case waf.ErrCodeWAFTagOperationException:
				fmt.Println(waf.ErrCodeWAFTagOperationException, aerr.Error())
			case waf.ErrCodeWAFTagOperationInternalErrorException:
				fmt.Println(waf.ErrCodeWAFTagOperationInternalErrorException, aerr.Error())
			case waf.ErrCodeWAFBadRequestException:
				fmt.Println(waf.ErrCodeWAFBadRequestException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Client) CreateSizeConstraintSetRequest added in v0.9.0

func (c *Client) CreateSizeConstraintSetRequest(input *CreateSizeConstraintSetInput) CreateSizeConstraintSetRequest

CreateSizeConstraintSetRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Creates a SizeConstraintSet. You then use UpdateSizeConstraintSet to identify the part of a web request that you want AWS WAF to check for length, such as the length of the User-Agent header or the length of the query string. For example, you can create a SizeConstraintSet that matches any requests that have a query string that is longer than 100 bytes. You can then configure AWS WAF to reject those requests.

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

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

Submit a CreateSizeConstraintSet request.

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

Submit an UpdateSizeConstraintSet request to specify the part of the request that you want AWS WAF to inspect (for example, the header or the URI) and the value that you want AWS WAF to watch for.

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

// Example sending a request using CreateSizeConstraintSetRequest.
req := client.CreateSizeConstraintSetRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/CreateSizeConstraintSet

Example (Shared00)

To create a size constraint

The following example creates size constraint set named MySampleSizeConstraintSet.

package main

import (
	"context"
	"fmt"

	"github.com/aws/aws-sdk-go-v2/aws"
	"github.com/aws/aws-sdk-go-v2/aws/awserr"
	"github.com/aws/aws-sdk-go-v2/aws/external"
	"github.com/aws/aws-sdk-go-v2/service/waf"
)

func main() {
	cfg, err := external.LoadDefaultAWSConfig()
	if err != nil {
		panic("failed to load config, " + err.Error())
	}

	svc := waf.New(cfg)
	input := &waf.CreateSizeConstraintSetInput{
		ChangeToken: aws.String("abcd12f2-46da-4fdb-b8d5-fbd4c466928f"),
		Name:        aws.String("MySampleSizeConstraintSet"),
	}

	req := svc.CreateSizeConstraintSetRequest(input)
	result, err := req.Send(context.Background())
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case waf.ErrCodeWAFStaleDataException:
				fmt.Println(waf.ErrCodeWAFStaleDataException, aerr.Error())
			case waf.ErrCodeWAFInternalErrorException:
				fmt.Println(waf.ErrCodeWAFInternalErrorException, aerr.Error())
			case waf.ErrCodeWAFInvalidAccountException:
				fmt.Println(waf.ErrCodeWAFInvalidAccountException, aerr.Error())
			case waf.ErrCodeWAFDisallowedNameException:
				fmt.Println(waf.ErrCodeWAFDisallowedNameException, aerr.Error())
			case waf.ErrCodeWAFInvalidParameterException:
				fmt.Println(waf.ErrCodeWAFInvalidParameterException, aerr.Error())
			case waf.ErrCodeWAFLimitsExceededException:
				fmt.Println(waf.ErrCodeWAFLimitsExceededException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Client) CreateSqlInjectionMatchSetRequest added in v0.9.0

func (c *Client) CreateSqlInjectionMatchSetRequest(input *CreateSqlInjectionMatchSetInput) CreateSqlInjectionMatchSetRequest

CreateSqlInjectionMatchSetRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Creates a SqlInjectionMatchSet, which you use to allow, block, or count requests that contain snippets of SQL code in a specified part of web requests. AWS WAF searches for character sequences that are likely to be malicious strings.

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

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

Submit a CreateSqlInjectionMatchSet request.

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

Submit an UpdateSqlInjectionMatchSet request to specify the parts of web requests in which you want to allow, block, or count malicious SQL code.

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

// Example sending a request using CreateSqlInjectionMatchSetRequest.
req := client.CreateSqlInjectionMatchSetRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/CreateSqlInjectionMatchSet

Example (Shared00)

To create a SQL injection match set

The following example creates a SQL injection match set named MySQLInjectionMatchSet.

package main

import (
	"context"
	"fmt"

	"github.com/aws/aws-sdk-go-v2/aws"
	"github.com/aws/aws-sdk-go-v2/aws/awserr"
	"github.com/aws/aws-sdk-go-v2/aws/external"
	"github.com/aws/aws-sdk-go-v2/service/waf"
)

func main() {
	cfg, err := external.LoadDefaultAWSConfig()
	if err != nil {
		panic("failed to load config, " + err.Error())
	}

	svc := waf.New(cfg)
	input := &waf.CreateSqlInjectionMatchSetInput{
		ChangeToken: aws.String("abcd12f2-46da-4fdb-b8d5-fbd4c466928f"),
		Name:        aws.String("MySQLInjectionMatchSet"),
	}

	req := svc.CreateSqlInjectionMatchSetRequest(input)
	result, err := req.Send(context.Background())
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case waf.ErrCodeWAFDisallowedNameException:
				fmt.Println(waf.ErrCodeWAFDisallowedNameException, aerr.Error())
			case waf.ErrCodeWAFInternalErrorException:
				fmt.Println(waf.ErrCodeWAFInternalErrorException, aerr.Error())
			case waf.ErrCodeWAFInvalidAccountException:
				fmt.Println(waf.ErrCodeWAFInvalidAccountException, aerr.Error())
			case waf.ErrCodeWAFInvalidParameterException:
				fmt.Println(waf.ErrCodeWAFInvalidParameterException, aerr.Error())
			case waf.ErrCodeWAFStaleDataException:
				fmt.Println(waf.ErrCodeWAFStaleDataException, aerr.Error())
			case waf.ErrCodeWAFLimitsExceededException:
				fmt.Println(waf.ErrCodeWAFLimitsExceededException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Client) CreateWebACLMigrationStackRequest added in v0.23.0

func (c *Client) CreateWebACLMigrationStackRequest(input *CreateWebACLMigrationStackInput) CreateWebACLMigrationStackRequest

CreateWebACLMigrationStackRequest returns a request value for making API operation for AWS WAF.

Creates an AWS CloudFormation WAFV2 template for the specified web ACL in the specified Amazon S3 bucket. Then, in CloudFormation, you create a stack from the template, to create the web ACL and its resources in AWS WAFV2. Use this to migrate your AWS WAF Classic web ACL to the latest version of AWS WAF.

This is part of a larger migration procedure for web ACLs from AWS WAF Classic to the latest version of AWS WAF. For the full procedure, including caveats and manual steps to complete the migration and switch over to the new web ACL, see Migrating your AWS WAF Classic resources to AWS WAF (https://docs.aws.amazon.com/waf/latest/developerguide/waf-migrating-from-classic.html) in the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html).

// Example sending a request using CreateWebACLMigrationStackRequest.
req := client.CreateWebACLMigrationStackRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/CreateWebACLMigrationStack

func (*Client) CreateWebACLRequest added in v0.9.0

func (c *Client) CreateWebACLRequest(input *CreateWebACLInput) CreateWebACLRequest

CreateWebACLRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Creates a WebACL, which contains the Rules that identify the CloudFront web requests that you want to allow, block, or count. AWS WAF evaluates Rules in order based on the value of Priority for each Rule.

You also specify a default action, either ALLOW or BLOCK. If a web request doesn't match any of the Rules in a WebACL, AWS WAF responds to the request with the default action.

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

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

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

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

Submit a CreateWebACL request.

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

Submit an UpdateWebACL request to specify the Rules that you want to include in the WebACL, to specify the default action, and to associate the WebACL with a CloudFront distribution.

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

// Example sending a request using CreateWebACLRequest.
req := client.CreateWebACLRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/CreateWebACL

Example (Shared00)

To create a web ACL

The following example creates a web ACL named CreateExample.

package main

import (
	"context"
	"fmt"

	"github.com/aws/aws-sdk-go-v2/aws"
	"github.com/aws/aws-sdk-go-v2/aws/awserr"
	"github.com/aws/aws-sdk-go-v2/aws/external"
	"github.com/aws/aws-sdk-go-v2/service/waf"
)

func main() {
	cfg, err := external.LoadDefaultAWSConfig()
	if err != nil {
		panic("failed to load config, " + err.Error())
	}

	svc := waf.New(cfg)
	input := &waf.CreateWebACLInput{
		ChangeToken: aws.String("abcd12f2-46da-4fdb-b8d5-fbd4c466928f"),
		DefaultAction: &waf.WafAction{
			Type: waf.WafActionTypeAllow,
		},
		MetricName: aws.String("CreateExample"),
		Name:       aws.String("CreateExample"),
	}

	req := svc.CreateWebACLRequest(input)
	result, err := req.Send(context.Background())
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case waf.ErrCodeWAFStaleDataException:
				fmt.Println(waf.ErrCodeWAFStaleDataException, aerr.Error())
			case waf.ErrCodeWAFInternalErrorException:
				fmt.Println(waf.ErrCodeWAFInternalErrorException, aerr.Error())
			case waf.ErrCodeWAFInvalidAccountException:
				fmt.Println(waf.ErrCodeWAFInvalidAccountException, aerr.Error())
			case waf.ErrCodeWAFDisallowedNameException:
				fmt.Println(waf.ErrCodeWAFDisallowedNameException, aerr.Error())
			case waf.ErrCodeWAFInvalidParameterException:
				fmt.Println(waf.ErrCodeWAFInvalidParameterException, aerr.Error())
			case waf.ErrCodeWAFLimitsExceededException:
				fmt.Println(waf.ErrCodeWAFLimitsExceededException, aerr.Error())
			case waf.ErrCodeWAFTagOperationException:
				fmt.Println(waf.ErrCodeWAFTagOperationException, aerr.Error())
			case waf.ErrCodeWAFTagOperationInternalErrorException:
				fmt.Println(waf.ErrCodeWAFTagOperationInternalErrorException, aerr.Error())
			case waf.ErrCodeWAFBadRequestException:
				fmt.Println(waf.ErrCodeWAFBadRequestException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Client) CreateXssMatchSetRequest added in v0.9.0

func (c *Client) CreateXssMatchSetRequest(input *CreateXssMatchSetInput) CreateXssMatchSetRequest

CreateXssMatchSetRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Creates an XssMatchSet, which you use to allow, block, or count requests that contain cross-site scripting attacks in the specified part of web requests. AWS WAF searches for character sequences that are likely to be malicious strings.

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

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

Submit a CreateXssMatchSet request.

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

Submit an UpdateXssMatchSet request to specify the parts of web requests in which you want to allow, block, or count cross-site scripting attacks.

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

// Example sending a request using CreateXssMatchSetRequest.
req := client.CreateXssMatchSetRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/CreateXssMatchSet

Example (Shared00)

To create an XSS match set

The following example creates an XSS match set named MySampleXssMatchSet.

package main

import (
	"context"
	"fmt"

	"github.com/aws/aws-sdk-go-v2/aws"
	"github.com/aws/aws-sdk-go-v2/aws/awserr"
	"github.com/aws/aws-sdk-go-v2/aws/external"
	"github.com/aws/aws-sdk-go-v2/service/waf"
)

func main() {
	cfg, err := external.LoadDefaultAWSConfig()
	if err != nil {
		panic("failed to load config, " + err.Error())
	}

	svc := waf.New(cfg)
	input := &waf.CreateXssMatchSetInput{
		ChangeToken: aws.String("abcd12f2-46da-4fdb-b8d5-fbd4c466928f"),
		Name:        aws.String("MySampleXssMatchSet"),
	}

	req := svc.CreateXssMatchSetRequest(input)
	result, err := req.Send(context.Background())
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case waf.ErrCodeWAFDisallowedNameException:
				fmt.Println(waf.ErrCodeWAFDisallowedNameException, aerr.Error())
			case waf.ErrCodeWAFInternalErrorException:
				fmt.Println(waf.ErrCodeWAFInternalErrorException, aerr.Error())
			case waf.ErrCodeWAFInvalidAccountException:
				fmt.Println(waf.ErrCodeWAFInvalidAccountException, aerr.Error())
			case waf.ErrCodeWAFInvalidParameterException:
				fmt.Println(waf.ErrCodeWAFInvalidParameterException, aerr.Error())
			case waf.ErrCodeWAFStaleDataException:
				fmt.Println(waf.ErrCodeWAFStaleDataException, aerr.Error())
			case waf.ErrCodeWAFLimitsExceededException:
				fmt.Println(waf.ErrCodeWAFLimitsExceededException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Client) DeleteByteMatchSetRequest added in v0.9.0

func (c *Client) DeleteByteMatchSetRequest(input *DeleteByteMatchSetInput) DeleteByteMatchSetRequest

DeleteByteMatchSetRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Permanently deletes a ByteMatchSet. You can't delete a ByteMatchSet if it's still used in any Rules or if it still includes any ByteMatchTuple objects (any filters).

If you just want to remove a ByteMatchSet from a Rule, use UpdateRule.

To permanently delete a ByteMatchSet, perform the following steps:

Update the ByteMatchSet to remove filters, if any. For more information, see UpdateByteMatchSet.

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

Submit a DeleteByteMatchSet request.

// Example sending a request using DeleteByteMatchSetRequest.
req := client.DeleteByteMatchSetRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/DeleteByteMatchSet

Example (Shared00)

To delete a byte match set

The following example deletes a byte match set with the ID exampleIDs3t-46da-4fdb-b8d5-abc321j569j5.

package main

import (
	"context"
	"fmt"

	"github.com/aws/aws-sdk-go-v2/aws"
	"github.com/aws/aws-sdk-go-v2/aws/awserr"
	"github.com/aws/aws-sdk-go-v2/aws/external"
	"github.com/aws/aws-sdk-go-v2/service/waf"
)

func main() {
	cfg, err := external.LoadDefaultAWSConfig()
	if err != nil {
		panic("failed to load config, " + err.Error())
	}

	svc := waf.New(cfg)
	input := &waf.DeleteByteMatchSetInput{
		ByteMatchSetId: aws.String("exampleIDs3t-46da-4fdb-b8d5-abc321j569j5"),
		ChangeToken:    aws.String("abcd12f2-46da-4fdb-b8d5-fbd4c466928f"),
	}

	req := svc.DeleteByteMatchSetRequest(input)
	result, err := req.Send(context.Background())
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case waf.ErrCodeWAFInternalErrorException:
				fmt.Println(waf.ErrCodeWAFInternalErrorException, aerr.Error())
			case waf.ErrCodeWAFInvalidAccountException:
				fmt.Println(waf.ErrCodeWAFInvalidAccountException, aerr.Error())
			case waf.ErrCodeWAFNonexistentItemException:
				fmt.Println(waf.ErrCodeWAFNonexistentItemException, aerr.Error())
			case waf.ErrCodeWAFReferencedItemException:
				fmt.Println(waf.ErrCodeWAFReferencedItemException, aerr.Error())
			case waf.ErrCodeWAFStaleDataException:
				fmt.Println(waf.ErrCodeWAFStaleDataException, aerr.Error())
			case waf.ErrCodeWAFNonEmptyEntityException:
				fmt.Println(waf.ErrCodeWAFNonEmptyEntityException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Client) DeleteGeoMatchSetRequest added in v0.9.0

func (c *Client) DeleteGeoMatchSetRequest(input *DeleteGeoMatchSetInput) DeleteGeoMatchSetRequest

DeleteGeoMatchSetRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Permanently deletes a GeoMatchSet. You can't delete a GeoMatchSet if it's still used in any Rules or if it still includes any countries.

If you just want to remove a GeoMatchSet from a Rule, use UpdateRule.

To permanently delete a GeoMatchSet from AWS WAF, perform the following steps:

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

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

Submit a DeleteGeoMatchSet request.

// Example sending a request using DeleteGeoMatchSetRequest.
req := client.DeleteGeoMatchSetRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/DeleteGeoMatchSet

func (*Client) DeleteIPSetRequest added in v0.9.0

func (c *Client) DeleteIPSetRequest(input *DeleteIPSetInput) DeleteIPSetRequest

DeleteIPSetRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Permanently deletes an IPSet. You can't delete an IPSet if it's still used in any Rules or if it still includes any IP addresses.

If you just want to remove an IPSet from a Rule, use UpdateRule.

To permanently delete an IPSet from AWS WAF, perform the following steps:

Update the IPSet to remove IP address ranges, if any. For more information, see UpdateIPSet.

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

Submit a DeleteIPSet request.

// Example sending a request using DeleteIPSetRequest.
req := client.DeleteIPSetRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/DeleteIPSet

Example (Shared00)

To delete an IP set

The following example deletes an IP match set with the ID example1ds3t-46da-4fdb-b8d5-abc321j569j5.

package main

import (
	"context"
	"fmt"

	"github.com/aws/aws-sdk-go-v2/aws"
	"github.com/aws/aws-sdk-go-v2/aws/awserr"
	"github.com/aws/aws-sdk-go-v2/aws/external"
	"github.com/aws/aws-sdk-go-v2/service/waf"
)

func main() {
	cfg, err := external.LoadDefaultAWSConfig()
	if err != nil {
		panic("failed to load config, " + err.Error())
	}

	svc := waf.New(cfg)
	input := &waf.DeleteIPSetInput{
		ChangeToken: aws.String("abcd12f2-46da-4fdb-b8d5-fbd4c466928f"),
		IPSetId:     aws.String("example1ds3t-46da-4fdb-b8d5-abc321j569j5"),
	}

	req := svc.DeleteIPSetRequest(input)
	result, err := req.Send(context.Background())
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case waf.ErrCodeWAFStaleDataException:
				fmt.Println(waf.ErrCodeWAFStaleDataException, aerr.Error())
			case waf.ErrCodeWAFInternalErrorException:
				fmt.Println(waf.ErrCodeWAFInternalErrorException, aerr.Error())
			case waf.ErrCodeWAFInvalidAccountException:
				fmt.Println(waf.ErrCodeWAFInvalidAccountException, aerr.Error())
			case waf.ErrCodeWAFNonexistentItemException:
				fmt.Println(waf.ErrCodeWAFNonexistentItemException, aerr.Error())
			case waf.ErrCodeWAFReferencedItemException:
				fmt.Println(waf.ErrCodeWAFReferencedItemException, aerr.Error())
			case waf.ErrCodeWAFNonEmptyEntityException:
				fmt.Println(waf.ErrCodeWAFNonEmptyEntityException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Client) DeleteLoggingConfigurationRequest added in v0.9.0

func (c *Client) DeleteLoggingConfigurationRequest(input *DeleteLoggingConfigurationInput) DeleteLoggingConfigurationRequest

DeleteLoggingConfigurationRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Permanently deletes the LoggingConfiguration from the specified web ACL.

// Example sending a request using DeleteLoggingConfigurationRequest.
req := client.DeleteLoggingConfigurationRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/DeleteLoggingConfiguration

func (*Client) DeletePermissionPolicyRequest added in v0.9.0

func (c *Client) DeletePermissionPolicyRequest(input *DeletePermissionPolicyInput) DeletePermissionPolicyRequest

DeletePermissionPolicyRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Permanently deletes an IAM policy from the specified RuleGroup.

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

// Example sending a request using DeletePermissionPolicyRequest.
req := client.DeletePermissionPolicyRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/DeletePermissionPolicy

func (*Client) DeleteRateBasedRuleRequest added in v0.9.0

func (c *Client) DeleteRateBasedRuleRequest(input *DeleteRateBasedRuleInput) DeleteRateBasedRuleRequest

DeleteRateBasedRuleRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Permanently deletes a RateBasedRule. You can't delete a rule if it's still used in any WebACL objects or if it still includes any predicates, such as ByteMatchSet objects.

If you just want to remove a rule from a WebACL, use UpdateWebACL.

To permanently delete a RateBasedRule from AWS WAF, perform the following steps:

Update the RateBasedRule to remove predicates, if any. For more information, see UpdateRateBasedRule.

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

Submit a DeleteRateBasedRule request.

// Example sending a request using DeleteRateBasedRuleRequest.
req := client.DeleteRateBasedRuleRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/DeleteRateBasedRule

func (*Client) DeleteRegexMatchSetRequest added in v0.9.0

func (c *Client) DeleteRegexMatchSetRequest(input *DeleteRegexMatchSetInput) DeleteRegexMatchSetRequest

DeleteRegexMatchSetRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Permanently deletes a RegexMatchSet. You can't delete a RegexMatchSet if it's still used in any Rules or if it still includes any RegexMatchTuples objects (any filters).

If you just want to remove a RegexMatchSet from a Rule, use UpdateRule.

To permanently delete a RegexMatchSet, perform the following steps:

Update the RegexMatchSet to remove filters, if any. For more information, see UpdateRegexMatchSet.

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

Submit a DeleteRegexMatchSet request.

// Example sending a request using DeleteRegexMatchSetRequest.
req := client.DeleteRegexMatchSetRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/DeleteRegexMatchSet

func (*Client) DeleteRegexPatternSetRequest added in v0.9.0

func (c *Client) DeleteRegexPatternSetRequest(input *DeleteRegexPatternSetInput) DeleteRegexPatternSetRequest

DeleteRegexPatternSetRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Permanently deletes a RegexPatternSet. You can't delete a RegexPatternSet if it's still used in any RegexMatchSet or if the RegexPatternSet is not empty.

// Example sending a request using DeleteRegexPatternSetRequest.
req := client.DeleteRegexPatternSetRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/DeleteRegexPatternSet

func (*Client) DeleteRuleGroupRequest added in v0.9.0

func (c *Client) DeleteRuleGroupRequest(input *DeleteRuleGroupInput) DeleteRuleGroupRequest

DeleteRuleGroupRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Permanently deletes a RuleGroup. You can't delete a RuleGroup if it's still used in any WebACL objects or if it still includes any rules.

If you just want to remove a RuleGroup from a WebACL, use UpdateWebACL.

To permanently delete a RuleGroup from AWS WAF, perform the following steps:

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

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

Submit a DeleteRuleGroup request.

// Example sending a request using DeleteRuleGroupRequest.
req := client.DeleteRuleGroupRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/DeleteRuleGroup

func (*Client) DeleteRuleRequest added in v0.9.0

func (c *Client) DeleteRuleRequest(input *DeleteRuleInput) DeleteRuleRequest

DeleteRuleRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Permanently deletes a Rule. You can't delete a Rule if it's still used in any WebACL objects or if it still includes any predicates, such as ByteMatchSet objects.

If you just want to remove a Rule from a WebACL, use UpdateWebACL.

To permanently delete a Rule from AWS WAF, perform the following steps:

Update the Rule to remove predicates, if any. For more information, see UpdateRule.

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

Submit a DeleteRule request.

// Example sending a request using DeleteRuleRequest.
req := client.DeleteRuleRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/DeleteRule

Example (Shared00)

To delete a rule

The following example deletes a rule with the ID WAFRule-1-Example.

package main

import (
	"context"
	"fmt"

	"github.com/aws/aws-sdk-go-v2/aws"
	"github.com/aws/aws-sdk-go-v2/aws/awserr"
	"github.com/aws/aws-sdk-go-v2/aws/external"
	"github.com/aws/aws-sdk-go-v2/service/waf"
)

func main() {
	cfg, err := external.LoadDefaultAWSConfig()
	if err != nil {
		panic("failed to load config, " + err.Error())
	}

	svc := waf.New(cfg)
	input := &waf.DeleteRuleInput{
		ChangeToken: aws.String("abcd12f2-46da-4fdb-b8d5-fbd4c466928f"),
		RuleId:      aws.String("WAFRule-1-Example"),
	}

	req := svc.DeleteRuleRequest(input)
	result, err := req.Send(context.Background())
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case waf.ErrCodeWAFStaleDataException:
				fmt.Println(waf.ErrCodeWAFStaleDataException, aerr.Error())
			case waf.ErrCodeWAFInternalErrorException:
				fmt.Println(waf.ErrCodeWAFInternalErrorException, aerr.Error())
			case waf.ErrCodeWAFInvalidAccountException:
				fmt.Println(waf.ErrCodeWAFInvalidAccountException, aerr.Error())
			case waf.ErrCodeWAFNonexistentItemException:
				fmt.Println(waf.ErrCodeWAFNonexistentItemException, aerr.Error())
			case waf.ErrCodeWAFReferencedItemException:
				fmt.Println(waf.ErrCodeWAFReferencedItemException, aerr.Error())
			case waf.ErrCodeWAFNonEmptyEntityException:
				fmt.Println(waf.ErrCodeWAFNonEmptyEntityException, aerr.Error())
			case waf.ErrCodeWAFTagOperationException:
				fmt.Println(waf.ErrCodeWAFTagOperationException, aerr.Error())
			case waf.ErrCodeWAFTagOperationInternalErrorException:
				fmt.Println(waf.ErrCodeWAFTagOperationInternalErrorException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Client) DeleteSizeConstraintSetRequest added in v0.9.0

func (c *Client) DeleteSizeConstraintSetRequest(input *DeleteSizeConstraintSetInput) DeleteSizeConstraintSetRequest

DeleteSizeConstraintSetRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Permanently deletes a SizeConstraintSet. You can't delete a SizeConstraintSet if it's still used in any Rules or if it still includes any SizeConstraint objects (any filters).

If you just want to remove a SizeConstraintSet from a Rule, use UpdateRule.

To permanently delete a SizeConstraintSet, perform the following steps:

Update the SizeConstraintSet to remove filters, if any. For more information, see UpdateSizeConstraintSet.

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

Submit a DeleteSizeConstraintSet request.

// Example sending a request using DeleteSizeConstraintSetRequest.
req := client.DeleteSizeConstraintSetRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/DeleteSizeConstraintSet

Example (Shared00)

To delete a size constraint set

The following example deletes a size constraint set with the ID example1ds3t-46da-4fdb-b8d5-abc321j569j5.

package main

import (
	"context"
	"fmt"

	"github.com/aws/aws-sdk-go-v2/aws"
	"github.com/aws/aws-sdk-go-v2/aws/awserr"
	"github.com/aws/aws-sdk-go-v2/aws/external"
	"github.com/aws/aws-sdk-go-v2/service/waf"
)

func main() {
	cfg, err := external.LoadDefaultAWSConfig()
	if err != nil {
		panic("failed to load config, " + err.Error())
	}

	svc := waf.New(cfg)
	input := &waf.DeleteSizeConstraintSetInput{
		ChangeToken:         aws.String("abcd12f2-46da-4fdb-b8d5-fbd4c466928f"),
		SizeConstraintSetId: aws.String("example1ds3t-46da-4fdb-b8d5-abc321j569j5"),
	}

	req := svc.DeleteSizeConstraintSetRequest(input)
	result, err := req.Send(context.Background())
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case waf.ErrCodeWAFStaleDataException:
				fmt.Println(waf.ErrCodeWAFStaleDataException, aerr.Error())
			case waf.ErrCodeWAFInternalErrorException:
				fmt.Println(waf.ErrCodeWAFInternalErrorException, aerr.Error())
			case waf.ErrCodeWAFInvalidAccountException:
				fmt.Println(waf.ErrCodeWAFInvalidAccountException, aerr.Error())
			case waf.ErrCodeWAFNonexistentItemException:
				fmt.Println(waf.ErrCodeWAFNonexistentItemException, aerr.Error())
			case waf.ErrCodeWAFReferencedItemException:
				fmt.Println(waf.ErrCodeWAFReferencedItemException, aerr.Error())
			case waf.ErrCodeWAFNonEmptyEntityException:
				fmt.Println(waf.ErrCodeWAFNonEmptyEntityException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Client) DeleteSqlInjectionMatchSetRequest added in v0.9.0

func (c *Client) DeleteSqlInjectionMatchSetRequest(input *DeleteSqlInjectionMatchSetInput) DeleteSqlInjectionMatchSetRequest

DeleteSqlInjectionMatchSetRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Permanently deletes a SqlInjectionMatchSet. You can't delete a SqlInjectionMatchSet if it's still used in any Rules or if it still contains any SqlInjectionMatchTuple objects.

If you just want to remove a SqlInjectionMatchSet from a Rule, use UpdateRule.

To permanently delete a SqlInjectionMatchSet from AWS WAF, perform the following steps:

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

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

Submit a DeleteSqlInjectionMatchSet request.

// Example sending a request using DeleteSqlInjectionMatchSetRequest.
req := client.DeleteSqlInjectionMatchSetRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/DeleteSqlInjectionMatchSet

Example (Shared00)

To delete a SQL injection match set

The following example deletes a SQL injection match set with the ID example1ds3t-46da-4fdb-b8d5-abc321j569j5.

package main

import (
	"context"
	"fmt"

	"github.com/aws/aws-sdk-go-v2/aws"
	"github.com/aws/aws-sdk-go-v2/aws/awserr"
	"github.com/aws/aws-sdk-go-v2/aws/external"
	"github.com/aws/aws-sdk-go-v2/service/waf"
)

func main() {
	cfg, err := external.LoadDefaultAWSConfig()
	if err != nil {
		panic("failed to load config, " + err.Error())
	}

	svc := waf.New(cfg)
	input := &waf.DeleteSqlInjectionMatchSetInput{
		ChangeToken:            aws.String("abcd12f2-46da-4fdb-b8d5-fbd4c466928f"),
		SqlInjectionMatchSetId: aws.String("example1ds3t-46da-4fdb-b8d5-abc321j569j5"),
	}

	req := svc.DeleteSqlInjectionMatchSetRequest(input)
	result, err := req.Send(context.Background())
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case waf.ErrCodeWAFInternalErrorException:
				fmt.Println(waf.ErrCodeWAFInternalErrorException, aerr.Error())
			case waf.ErrCodeWAFInvalidAccountException:
				fmt.Println(waf.ErrCodeWAFInvalidAccountException, aerr.Error())
			case waf.ErrCodeWAFNonexistentItemException:
				fmt.Println(waf.ErrCodeWAFNonexistentItemException, aerr.Error())
			case waf.ErrCodeWAFReferencedItemException:
				fmt.Println(waf.ErrCodeWAFReferencedItemException, aerr.Error())
			case waf.ErrCodeWAFStaleDataException:
				fmt.Println(waf.ErrCodeWAFStaleDataException, aerr.Error())
			case waf.ErrCodeWAFNonEmptyEntityException:
				fmt.Println(waf.ErrCodeWAFNonEmptyEntityException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Client) DeleteWebACLRequest added in v0.9.0

func (c *Client) DeleteWebACLRequest(input *DeleteWebACLInput) DeleteWebACLRequest

DeleteWebACLRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Permanently deletes a WebACL. You can't delete a WebACL if it still contains any Rules.

To delete a WebACL, perform the following steps:

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

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

Submit a DeleteWebACL request.

// Example sending a request using DeleteWebACLRequest.
req := client.DeleteWebACLRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/DeleteWebACL

Example (Shared00)

To delete a web ACL

The following example deletes a web ACL with the ID example-46da-4444-5555-example.

package main

import (
	"context"
	"fmt"

	"github.com/aws/aws-sdk-go-v2/aws"
	"github.com/aws/aws-sdk-go-v2/aws/awserr"
	"github.com/aws/aws-sdk-go-v2/aws/external"
	"github.com/aws/aws-sdk-go-v2/service/waf"
)

func main() {
	cfg, err := external.LoadDefaultAWSConfig()
	if err != nil {
		panic("failed to load config, " + err.Error())
	}

	svc := waf.New(cfg)
	input := &waf.DeleteWebACLInput{
		ChangeToken: aws.String("abcd12f2-46da-4fdb-b8d5-fbd4c466928f"),
		WebACLId:    aws.String("example-46da-4444-5555-example"),
	}

	req := svc.DeleteWebACLRequest(input)
	result, err := req.Send(context.Background())
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case waf.ErrCodeWAFStaleDataException:
				fmt.Println(waf.ErrCodeWAFStaleDataException, aerr.Error())
			case waf.ErrCodeWAFInternalErrorException:
				fmt.Println(waf.ErrCodeWAFInternalErrorException, aerr.Error())
			case waf.ErrCodeWAFInvalidAccountException:
				fmt.Println(waf.ErrCodeWAFInvalidAccountException, aerr.Error())
			case waf.ErrCodeWAFNonexistentItemException:
				fmt.Println(waf.ErrCodeWAFNonexistentItemException, aerr.Error())
			case waf.ErrCodeWAFReferencedItemException:
				fmt.Println(waf.ErrCodeWAFReferencedItemException, aerr.Error())
			case waf.ErrCodeWAFNonEmptyEntityException:
				fmt.Println(waf.ErrCodeWAFNonEmptyEntityException, aerr.Error())
			case waf.ErrCodeWAFTagOperationException:
				fmt.Println(waf.ErrCodeWAFTagOperationException, aerr.Error())
			case waf.ErrCodeWAFTagOperationInternalErrorException:
				fmt.Println(waf.ErrCodeWAFTagOperationInternalErrorException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Client) DeleteXssMatchSetRequest added in v0.9.0

func (c *Client) DeleteXssMatchSetRequest(input *DeleteXssMatchSetInput) DeleteXssMatchSetRequest

DeleteXssMatchSetRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Permanently deletes an XssMatchSet. You can't delete an XssMatchSet if it's still used in any Rules or if it still contains any XssMatchTuple objects.

If you just want to remove an XssMatchSet from a Rule, use UpdateRule.

To permanently delete an XssMatchSet from AWS WAF, perform the following steps:

Update the XssMatchSet to remove filters, if any. For more information, see UpdateXssMatchSet.

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

Submit a DeleteXssMatchSet request.

// Example sending a request using DeleteXssMatchSetRequest.
req := client.DeleteXssMatchSetRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/DeleteXssMatchSet

Example (Shared00)

To delete an XSS match set

The following example deletes an XSS match set with the ID example1ds3t-46da-4fdb-b8d5-abc321j569j5.

package main

import (
	"context"
	"fmt"

	"github.com/aws/aws-sdk-go-v2/aws"
	"github.com/aws/aws-sdk-go-v2/aws/awserr"
	"github.com/aws/aws-sdk-go-v2/aws/external"
	"github.com/aws/aws-sdk-go-v2/service/waf"
)

func main() {
	cfg, err := external.LoadDefaultAWSConfig()
	if err != nil {
		panic("failed to load config, " + err.Error())
	}

	svc := waf.New(cfg)
	input := &waf.DeleteXssMatchSetInput{
		ChangeToken:   aws.String("abcd12f2-46da-4fdb-b8d5-fbd4c466928f"),
		XssMatchSetId: aws.String("example1ds3t-46da-4fdb-b8d5-abc321j569j5"),
	}

	req := svc.DeleteXssMatchSetRequest(input)
	result, err := req.Send(context.Background())
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case waf.ErrCodeWAFInternalErrorException:
				fmt.Println(waf.ErrCodeWAFInternalErrorException, aerr.Error())
			case waf.ErrCodeWAFInvalidAccountException:
				fmt.Println(waf.ErrCodeWAFInvalidAccountException, aerr.Error())
			case waf.ErrCodeWAFNonexistentItemException:
				fmt.Println(waf.ErrCodeWAFNonexistentItemException, aerr.Error())
			case waf.ErrCodeWAFReferencedItemException:
				fmt.Println(waf.ErrCodeWAFReferencedItemException, aerr.Error())
			case waf.ErrCodeWAFStaleDataException:
				fmt.Println(waf.ErrCodeWAFStaleDataException, aerr.Error())
			case waf.ErrCodeWAFNonEmptyEntityException:
				fmt.Println(waf.ErrCodeWAFNonEmptyEntityException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Client) GetByteMatchSetRequest added in v0.9.0

func (c *Client) GetByteMatchSetRequest(input *GetByteMatchSetInput) GetByteMatchSetRequest

GetByteMatchSetRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Returns the ByteMatchSet specified by ByteMatchSetId.

// Example sending a request using GetByteMatchSetRequest.
req := client.GetByteMatchSetRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/GetByteMatchSet

Example (Shared00)

To get a byte match set

The following example returns the details of a byte match set with the ID exampleIDs3t-46da-4fdb-b8d5-abc321j569j5.

package main

import (
	"context"
	"fmt"

	"github.com/aws/aws-sdk-go-v2/aws"
	"github.com/aws/aws-sdk-go-v2/aws/awserr"
	"github.com/aws/aws-sdk-go-v2/aws/external"
	"github.com/aws/aws-sdk-go-v2/service/waf"
)

func main() {
	cfg, err := external.LoadDefaultAWSConfig()
	if err != nil {
		panic("failed to load config, " + err.Error())
	}

	svc := waf.New(cfg)
	input := &waf.GetByteMatchSetInput{
		ByteMatchSetId: aws.String("exampleIDs3t-46da-4fdb-b8d5-abc321j569j5"),
	}

	req := svc.GetByteMatchSetRequest(input)
	result, err := req.Send(context.Background())
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case waf.ErrCodeWAFInternalErrorException:
				fmt.Println(waf.ErrCodeWAFInternalErrorException, aerr.Error())
			case waf.ErrCodeWAFInvalidAccountException:
				fmt.Println(waf.ErrCodeWAFInvalidAccountException, aerr.Error())
			case waf.ErrCodeWAFNonexistentItemException:
				fmt.Println(waf.ErrCodeWAFNonexistentItemException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Client) GetChangeTokenRequest added in v0.9.0

func (c *Client) GetChangeTokenRequest(input *GetChangeTokenInput) GetChangeTokenRequest

GetChangeTokenRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

When you want to create, update, or delete AWS WAF objects, get a change token and include the change token in the create, update, or delete request. Change tokens ensure that your application doesn't submit conflicting requests to AWS WAF.

Each create, update, or delete request must use a unique change token. If your application submits a GetChangeToken request and then submits a second GetChangeToken request before submitting a create, update, or delete request, the second GetChangeToken request returns the same value as the first GetChangeToken request.

When you use a change token in a create, update, or delete request, the status of the change token changes to PENDING, which indicates that AWS WAF is propagating the change to all AWS WAF servers. Use GetChangeTokenStatus to determine the status of your change token.

// Example sending a request using GetChangeTokenRequest.
req := client.GetChangeTokenRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/GetChangeToken

Example (Shared00)

To get a change token

The following example returns a change token to use for a create, update or delete operation.

package main

import (
	"context"
	"fmt"

	"github.com/aws/aws-sdk-go-v2/aws/awserr"
	"github.com/aws/aws-sdk-go-v2/aws/external"
	"github.com/aws/aws-sdk-go-v2/service/waf"
)

func main() {
	cfg, err := external.LoadDefaultAWSConfig()
	if err != nil {
		panic("failed to load config, " + err.Error())
	}

	svc := waf.New(cfg)
	input := &waf.GetChangeTokenInput{}

	req := svc.GetChangeTokenRequest(input)
	result, err := req.Send(context.Background())
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case waf.ErrCodeWAFInternalErrorException:
				fmt.Println(waf.ErrCodeWAFInternalErrorException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Client) GetChangeTokenStatusRequest added in v0.9.0

func (c *Client) GetChangeTokenStatusRequest(input *GetChangeTokenStatusInput) GetChangeTokenStatusRequest

GetChangeTokenStatusRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Returns the status of a ChangeToken that you got by calling GetChangeToken. ChangeTokenStatus is one of the following values:

  • PROVISIONED: You requested the change token by calling GetChangeToken, but you haven't used it yet in a call to create, update, or delete an AWS WAF object.

  • PENDING: AWS WAF is propagating the create, update, or delete request to all AWS WAF servers.

  • INSYNC: Propagation is complete.

    // Example sending a request using GetChangeTokenStatusRequest. req := client.GetChangeTokenStatusRequest(params) resp, err := req.Send(context.TODO()) if err == nil { fmt.Println(resp) }

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/GetChangeTokenStatus

Example (Shared00)

To get the change token status

The following example returns the status of a change token with the ID abcd12f2-46da-4fdb-b8d5-fbd4c466928f.

package main

import (
	"context"
	"fmt"

	"github.com/aws/aws-sdk-go-v2/aws"
	"github.com/aws/aws-sdk-go-v2/aws/awserr"
	"github.com/aws/aws-sdk-go-v2/aws/external"
	"github.com/aws/aws-sdk-go-v2/service/waf"
)

func main() {
	cfg, err := external.LoadDefaultAWSConfig()
	if err != nil {
		panic("failed to load config, " + err.Error())
	}

	svc := waf.New(cfg)
	input := &waf.GetChangeTokenStatusInput{
		ChangeToken: aws.String("abcd12f2-46da-4fdb-b8d5-fbd4c466928f"),
	}

	req := svc.GetChangeTokenStatusRequest(input)
	result, err := req.Send(context.Background())
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case waf.ErrCodeWAFNonexistentItemException:
				fmt.Println(waf.ErrCodeWAFNonexistentItemException, aerr.Error())
			case waf.ErrCodeWAFInternalErrorException:
				fmt.Println(waf.ErrCodeWAFInternalErrorException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Client) GetGeoMatchSetRequest added in v0.9.0

func (c *Client) GetGeoMatchSetRequest(input *GetGeoMatchSetInput) GetGeoMatchSetRequest

GetGeoMatchSetRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Returns the GeoMatchSet that is specified by GeoMatchSetId.

// Example sending a request using GetGeoMatchSetRequest.
req := client.GetGeoMatchSetRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/GetGeoMatchSet

func (*Client) GetIPSetRequest added in v0.9.0

func (c *Client) GetIPSetRequest(input *GetIPSetInput) GetIPSetRequest

GetIPSetRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Returns the IPSet that is specified by IPSetId.

// Example sending a request using GetIPSetRequest.
req := client.GetIPSetRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/GetIPSet

Example (Shared00)

To get an IP set

The following example returns the details of an IP match set with the ID example1ds3t-46da-4fdb-b8d5-abc321j569j5.

package main

import (
	"context"
	"fmt"

	"github.com/aws/aws-sdk-go-v2/aws"
	"github.com/aws/aws-sdk-go-v2/aws/awserr"
	"github.com/aws/aws-sdk-go-v2/aws/external"
	"github.com/aws/aws-sdk-go-v2/service/waf"
)

func main() {
	cfg, err := external.LoadDefaultAWSConfig()
	if err != nil {
		panic("failed to load config, " + err.Error())
	}

	svc := waf.New(cfg)
	input := &waf.GetIPSetInput{
		IPSetId: aws.String("example1ds3t-46da-4fdb-b8d5-abc321j569j5"),
	}

	req := svc.GetIPSetRequest(input)
	result, err := req.Send(context.Background())
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case waf.ErrCodeWAFInternalErrorException:
				fmt.Println(waf.ErrCodeWAFInternalErrorException, aerr.Error())
			case waf.ErrCodeWAFInvalidAccountException:
				fmt.Println(waf.ErrCodeWAFInvalidAccountException, aerr.Error())
			case waf.ErrCodeWAFNonexistentItemException:
				fmt.Println(waf.ErrCodeWAFNonexistentItemException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Client) GetLoggingConfigurationRequest added in v0.9.0

func (c *Client) GetLoggingConfigurationRequest(input *GetLoggingConfigurationInput) GetLoggingConfigurationRequest

GetLoggingConfigurationRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Returns the LoggingConfiguration for the specified web ACL.

// Example sending a request using GetLoggingConfigurationRequest.
req := client.GetLoggingConfigurationRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/GetLoggingConfiguration

func (*Client) GetPermissionPolicyRequest added in v0.9.0

func (c *Client) GetPermissionPolicyRequest(input *GetPermissionPolicyInput) GetPermissionPolicyRequest

GetPermissionPolicyRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Returns the IAM policy attached to the RuleGroup.

// Example sending a request using GetPermissionPolicyRequest.
req := client.GetPermissionPolicyRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/GetPermissionPolicy

func (*Client) GetRateBasedRuleManagedKeysRequest added in v0.9.0

func (c *Client) GetRateBasedRuleManagedKeysRequest(input *GetRateBasedRuleManagedKeysInput) GetRateBasedRuleManagedKeysRequest

GetRateBasedRuleManagedKeysRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Returns an array of IP addresses currently being blocked by the RateBasedRule that is specified by the RuleId. The maximum number of managed keys that will be blocked is 10,000. If more than 10,000 addresses exceed the rate limit, the 10,000 addresses with the highest rates will be blocked.

// Example sending a request using GetRateBasedRuleManagedKeysRequest.
req := client.GetRateBasedRuleManagedKeysRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/GetRateBasedRuleManagedKeys

func (*Client) GetRateBasedRuleRequest added in v0.9.0

func (c *Client) GetRateBasedRuleRequest(input *GetRateBasedRuleInput) GetRateBasedRuleRequest

GetRateBasedRuleRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Returns the RateBasedRule that is specified by the RuleId that you included in the GetRateBasedRule request.

// Example sending a request using GetRateBasedRuleRequest.
req := client.GetRateBasedRuleRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/GetRateBasedRule

func (*Client) GetRegexMatchSetRequest added in v0.9.0

func (c *Client) GetRegexMatchSetRequest(input *GetRegexMatchSetInput) GetRegexMatchSetRequest

GetRegexMatchSetRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Returns the RegexMatchSet specified by RegexMatchSetId.

// Example sending a request using GetRegexMatchSetRequest.
req := client.GetRegexMatchSetRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/GetRegexMatchSet

func (*Client) GetRegexPatternSetRequest added in v0.9.0

func (c *Client) GetRegexPatternSetRequest(input *GetRegexPatternSetInput) GetRegexPatternSetRequest

GetRegexPatternSetRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Returns the RegexPatternSet specified by RegexPatternSetId.

// Example sending a request using GetRegexPatternSetRequest.
req := client.GetRegexPatternSetRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/GetRegexPatternSet

func (*Client) GetRuleGroupRequest added in v0.9.0

func (c *Client) GetRuleGroupRequest(input *GetRuleGroupInput) GetRuleGroupRequest

GetRuleGroupRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Returns the RuleGroup that is specified by the RuleGroupId that you included in the GetRuleGroup request.

To view the rules in a rule group, use ListActivatedRulesInRuleGroup.

// Example sending a request using GetRuleGroupRequest.
req := client.GetRuleGroupRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/GetRuleGroup

func (*Client) GetRuleRequest added in v0.9.0

func (c *Client) GetRuleRequest(input *GetRuleInput) GetRuleRequest

GetRuleRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Returns the Rule that is specified by the RuleId that you included in the GetRule request.

// Example sending a request using GetRuleRequest.
req := client.GetRuleRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/GetRule

Example (Shared00)

To get a rule

The following example returns the details of a rule with the ID example1ds3t-46da-4fdb-b8d5-abc321j569j5.

package main

import (
	"context"
	"fmt"

	"github.com/aws/aws-sdk-go-v2/aws"
	"github.com/aws/aws-sdk-go-v2/aws/awserr"
	"github.com/aws/aws-sdk-go-v2/aws/external"
	"github.com/aws/aws-sdk-go-v2/service/waf"
)

func main() {
	cfg, err := external.LoadDefaultAWSConfig()
	if err != nil {
		panic("failed to load config, " + err.Error())
	}

	svc := waf.New(cfg)
	input := &waf.GetRuleInput{
		RuleId: aws.String("example1ds3t-46da-4fdb-b8d5-abc321j569j5"),
	}

	req := svc.GetRuleRequest(input)
	result, err := req.Send(context.Background())
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case waf.ErrCodeWAFInternalErrorException:
				fmt.Println(waf.ErrCodeWAFInternalErrorException, aerr.Error())
			case waf.ErrCodeWAFInvalidAccountException:
				fmt.Println(waf.ErrCodeWAFInvalidAccountException, aerr.Error())
			case waf.ErrCodeWAFNonexistentItemException:
				fmt.Println(waf.ErrCodeWAFNonexistentItemException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Client) GetSampledRequestsRequest added in v0.9.0

func (c *Client) GetSampledRequestsRequest(input *GetSampledRequestsInput) GetSampledRequestsRequest

GetSampledRequestsRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Gets detailed information about a specified number of requests--a sample--that AWS WAF randomly selects from among the first 5,000 requests that your AWS resource received during a time range that you choose. You can specify a sample size of up to 500 requests, and you can specify any time range in the previous three hours.

GetSampledRequests returns a time range, which is usually the time range that you specified. However, if your resource (such as a CloudFront distribution) received 5,000 requests before the specified time range elapsed, GetSampledRequests returns an updated time range. This new time range indicates the actual period during which AWS WAF selected the requests in the sample.

// Example sending a request using GetSampledRequestsRequest.
req := client.GetSampledRequestsRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/GetSampledRequests

Example (Shared00)

To get a sampled requests

The following example returns detailed information about 100 requests --a sample-- that AWS WAF randomly selects from among the first 5,000 requests that your AWS resource received between the time period 2016-09-27T15:50Z to 2016-09-27T15:50Z.

package main

import (
	"context"
	"fmt"
	"time"

	"github.com/aws/aws-sdk-go-v2/aws"
	"github.com/aws/aws-sdk-go-v2/aws/awserr"
	"github.com/aws/aws-sdk-go-v2/aws/external"
	"github.com/aws/aws-sdk-go-v2/service/waf"
)

func parseTime(layout, value string) time.Time {
	t, err := time.Parse(layout, value)
	if err != nil {
		panic(err)
	}
	return t
}

func main() {
	cfg, err := external.LoadDefaultAWSConfig()
	if err != nil {
		panic("failed to load config, " + err.Error())
	}

	svc := waf.New(cfg)
	input := &waf.GetSampledRequestsInput{
		MaxItems: aws.Int64(100),
		RuleId:   aws.String("WAFRule-1-Example"),
		TimeWindow: &waf.TimeWindow{
			EndTime:   aws.Time(parseTime("2006-01-02T15:04:05Z", "2016-09-27T15:50Z")),
			StartTime: aws.Time(parseTime("2006-01-02T15:04:05Z", "2016-09-27T15:50Z")),
		},
		WebAclId: aws.String("createwebacl-1472061481310"),
	}

	req := svc.GetSampledRequestsRequest(input)
	result, err := req.Send(context.Background())
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case waf.ErrCodeWAFNonexistentItemException:
				fmt.Println(waf.ErrCodeWAFNonexistentItemException, aerr.Error())
			case waf.ErrCodeWAFInternalErrorException:
				fmt.Println(waf.ErrCodeWAFInternalErrorException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Client) GetSizeConstraintSetRequest added in v0.9.0

func (c *Client) GetSizeConstraintSetRequest(input *GetSizeConstraintSetInput) GetSizeConstraintSetRequest

GetSizeConstraintSetRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Returns the SizeConstraintSet specified by SizeConstraintSetId.

// Example sending a request using GetSizeConstraintSetRequest.
req := client.GetSizeConstraintSetRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/GetSizeConstraintSet

Example (Shared00)

To get a size constraint set

The following example returns the details of a size constraint match set with the ID example1ds3t-46da-4fdb-b8d5-abc321j569j5.

package main

import (
	"context"
	"fmt"

	"github.com/aws/aws-sdk-go-v2/aws"
	"github.com/aws/aws-sdk-go-v2/aws/awserr"
	"github.com/aws/aws-sdk-go-v2/aws/external"
	"github.com/aws/aws-sdk-go-v2/service/waf"
)

func main() {
	cfg, err := external.LoadDefaultAWSConfig()
	if err != nil {
		panic("failed to load config, " + err.Error())
	}

	svc := waf.New(cfg)
	input := &waf.GetSizeConstraintSetInput{
		SizeConstraintSetId: aws.String("example1ds3t-46da-4fdb-b8d5-abc321j569j5"),
	}

	req := svc.GetSizeConstraintSetRequest(input)
	result, err := req.Send(context.Background())
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case waf.ErrCodeWAFInternalErrorException:
				fmt.Println(waf.ErrCodeWAFInternalErrorException, aerr.Error())
			case waf.ErrCodeWAFInvalidAccountException:
				fmt.Println(waf.ErrCodeWAFInvalidAccountException, aerr.Error())
			case waf.ErrCodeWAFNonexistentItemException:
				fmt.Println(waf.ErrCodeWAFNonexistentItemException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Client) GetSqlInjectionMatchSetRequest added in v0.9.0

func (c *Client) GetSqlInjectionMatchSetRequest(input *GetSqlInjectionMatchSetInput) GetSqlInjectionMatchSetRequest

GetSqlInjectionMatchSetRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Returns the SqlInjectionMatchSet that is specified by SqlInjectionMatchSetId.

// Example sending a request using GetSqlInjectionMatchSetRequest.
req := client.GetSqlInjectionMatchSetRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/GetSqlInjectionMatchSet

Example (Shared00)

To get a SQL injection match set

The following example returns the details of a SQL injection match set with the ID example1ds3t-46da-4fdb-b8d5-abc321j569j5.

package main

import (
	"context"
	"fmt"

	"github.com/aws/aws-sdk-go-v2/aws"
	"github.com/aws/aws-sdk-go-v2/aws/awserr"
	"github.com/aws/aws-sdk-go-v2/aws/external"
	"github.com/aws/aws-sdk-go-v2/service/waf"
)

func main() {
	cfg, err := external.LoadDefaultAWSConfig()
	if err != nil {
		panic("failed to load config, " + err.Error())
	}

	svc := waf.New(cfg)
	input := &waf.GetSqlInjectionMatchSetInput{
		SqlInjectionMatchSetId: aws.String("example1ds3t-46da-4fdb-b8d5-abc321j569j5"),
	}

	req := svc.GetSqlInjectionMatchSetRequest(input)
	result, err := req.Send(context.Background())
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case waf.ErrCodeWAFInternalErrorException:
				fmt.Println(waf.ErrCodeWAFInternalErrorException, aerr.Error())
			case waf.ErrCodeWAFInvalidAccountException:
				fmt.Println(waf.ErrCodeWAFInvalidAccountException, aerr.Error())
			case waf.ErrCodeWAFNonexistentItemException:
				fmt.Println(waf.ErrCodeWAFNonexistentItemException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Client) GetWebACLRequest added in v0.9.0

func (c *Client) GetWebACLRequest(input *GetWebACLInput) GetWebACLRequest

GetWebACLRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Returns the WebACL that is specified by WebACLId.

// Example sending a request using GetWebACLRequest.
req := client.GetWebACLRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/GetWebACL

Example (Shared00)

To get a web ACL

The following example returns the details of a web ACL with the ID createwebacl-1472061481310.

package main

import (
	"context"
	"fmt"

	"github.com/aws/aws-sdk-go-v2/aws"
	"github.com/aws/aws-sdk-go-v2/aws/awserr"
	"github.com/aws/aws-sdk-go-v2/aws/external"
	"github.com/aws/aws-sdk-go-v2/service/waf"
)

func main() {
	cfg, err := external.LoadDefaultAWSConfig()
	if err != nil {
		panic("failed to load config, " + err.Error())
	}

	svc := waf.New(cfg)
	input := &waf.GetWebACLInput{
		WebACLId: aws.String("createwebacl-1472061481310"),
	}

	req := svc.GetWebACLRequest(input)
	result, err := req.Send(context.Background())
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case waf.ErrCodeWAFInternalErrorException:
				fmt.Println(waf.ErrCodeWAFInternalErrorException, aerr.Error())
			case waf.ErrCodeWAFInvalidAccountException:
				fmt.Println(waf.ErrCodeWAFInvalidAccountException, aerr.Error())
			case waf.ErrCodeWAFNonexistentItemException:
				fmt.Println(waf.ErrCodeWAFNonexistentItemException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Client) GetXssMatchSetRequest added in v0.9.0

func (c *Client) GetXssMatchSetRequest(input *GetXssMatchSetInput) GetXssMatchSetRequest

GetXssMatchSetRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Returns the XssMatchSet that is specified by XssMatchSetId.

// Example sending a request using GetXssMatchSetRequest.
req := client.GetXssMatchSetRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/GetXssMatchSet

Example (Shared00)

To get an XSS match set

The following example returns the details of an XSS match set with the ID example1ds3t-46da-4fdb-b8d5-abc321j569j5.

package main

import (
	"context"
	"fmt"

	"github.com/aws/aws-sdk-go-v2/aws"
	"github.com/aws/aws-sdk-go-v2/aws/awserr"
	"github.com/aws/aws-sdk-go-v2/aws/external"
	"github.com/aws/aws-sdk-go-v2/service/waf"
)

func main() {
	cfg, err := external.LoadDefaultAWSConfig()
	if err != nil {
		panic("failed to load config, " + err.Error())
	}

	svc := waf.New(cfg)
	input := &waf.GetXssMatchSetInput{
		XssMatchSetId: aws.String("example1ds3t-46da-4fdb-b8d5-abc321j569j5"),
	}

	req := svc.GetXssMatchSetRequest(input)
	result, err := req.Send(context.Background())
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case waf.ErrCodeWAFInternalErrorException:
				fmt.Println(waf.ErrCodeWAFInternalErrorException, aerr.Error())
			case waf.ErrCodeWAFInvalidAccountException:
				fmt.Println(waf.ErrCodeWAFInvalidAccountException, aerr.Error())
			case waf.ErrCodeWAFNonexistentItemException:
				fmt.Println(waf.ErrCodeWAFNonexistentItemException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Client) ListActivatedRulesInRuleGroupRequest added in v0.9.0

func (c *Client) ListActivatedRulesInRuleGroupRequest(input *ListActivatedRulesInRuleGroupInput) ListActivatedRulesInRuleGroupRequest

ListActivatedRulesInRuleGroupRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Returns an array of ActivatedRule objects.

// Example sending a request using ListActivatedRulesInRuleGroupRequest.
req := client.ListActivatedRulesInRuleGroupRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/ListActivatedRulesInRuleGroup

func (*Client) ListByteMatchSetsRequest added in v0.9.0

func (c *Client) ListByteMatchSetsRequest(input *ListByteMatchSetsInput) ListByteMatchSetsRequest

ListByteMatchSetsRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Returns an array of ByteMatchSetSummary objects.

// Example sending a request using ListByteMatchSetsRequest.
req := client.ListByteMatchSetsRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/ListByteMatchSets

func (*Client) ListGeoMatchSetsRequest added in v0.9.0

func (c *Client) ListGeoMatchSetsRequest(input *ListGeoMatchSetsInput) ListGeoMatchSetsRequest

ListGeoMatchSetsRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Returns an array of GeoMatchSetSummary objects in the response.

// Example sending a request using ListGeoMatchSetsRequest.
req := client.ListGeoMatchSetsRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/ListGeoMatchSets

func (*Client) ListIPSetsRequest added in v0.9.0

func (c *Client) ListIPSetsRequest(input *ListIPSetsInput) ListIPSetsRequest

ListIPSetsRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Returns an array of IPSetSummary objects in the response.

// Example sending a request using ListIPSetsRequest.
req := client.ListIPSetsRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/ListIPSets

Example (Shared00)

To list IP sets

The following example returns an array of up to 100 IP match sets.

package main

import (
	"context"
	"fmt"

	"github.com/aws/aws-sdk-go-v2/aws"
	"github.com/aws/aws-sdk-go-v2/aws/awserr"
	"github.com/aws/aws-sdk-go-v2/aws/external"
	"github.com/aws/aws-sdk-go-v2/service/waf"
)

func main() {
	cfg, err := external.LoadDefaultAWSConfig()
	if err != nil {
		panic("failed to load config, " + err.Error())
	}

	svc := waf.New(cfg)
	input := &waf.ListIPSetsInput{
		Limit: aws.Int64(100),
	}

	req := svc.ListIPSetsRequest(input)
	result, err := req.Send(context.Background())
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case waf.ErrCodeWAFInternalErrorException:
				fmt.Println(waf.ErrCodeWAFInternalErrorException, aerr.Error())
			case waf.ErrCodeWAFInvalidAccountException:
				fmt.Println(waf.ErrCodeWAFInvalidAccountException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Client) ListLoggingConfigurationsRequest added in v0.9.0

func (c *Client) ListLoggingConfigurationsRequest(input *ListLoggingConfigurationsInput) ListLoggingConfigurationsRequest

ListLoggingConfigurationsRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Returns an array of LoggingConfiguration objects.

// Example sending a request using ListLoggingConfigurationsRequest.
req := client.ListLoggingConfigurationsRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/ListLoggingConfigurations

func (*Client) ListRateBasedRulesRequest added in v0.9.0

func (c *Client) ListRateBasedRulesRequest(input *ListRateBasedRulesInput) ListRateBasedRulesRequest

ListRateBasedRulesRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Returns an array of RuleSummary objects.

// Example sending a request using ListRateBasedRulesRequest.
req := client.ListRateBasedRulesRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/ListRateBasedRules

func (*Client) ListRegexMatchSetsRequest added in v0.9.0

func (c *Client) ListRegexMatchSetsRequest(input *ListRegexMatchSetsInput) ListRegexMatchSetsRequest

ListRegexMatchSetsRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Returns an array of RegexMatchSetSummary objects.

// Example sending a request using ListRegexMatchSetsRequest.
req := client.ListRegexMatchSetsRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/ListRegexMatchSets

func (*Client) ListRegexPatternSetsRequest added in v0.9.0

func (c *Client) ListRegexPatternSetsRequest(input *ListRegexPatternSetsInput) ListRegexPatternSetsRequest

ListRegexPatternSetsRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Returns an array of RegexPatternSetSummary objects.

// Example sending a request using ListRegexPatternSetsRequest.
req := client.ListRegexPatternSetsRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/ListRegexPatternSets

func (*Client) ListRuleGroupsRequest added in v0.9.0

func (c *Client) ListRuleGroupsRequest(input *ListRuleGroupsInput) ListRuleGroupsRequest

ListRuleGroupsRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Returns an array of RuleGroup objects.

// Example sending a request using ListRuleGroupsRequest.
req := client.ListRuleGroupsRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/ListRuleGroups

func (*Client) ListRulesRequest added in v0.9.0

func (c *Client) ListRulesRequest(input *ListRulesInput) ListRulesRequest

ListRulesRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Returns an array of RuleSummary objects.

// Example sending a request using ListRulesRequest.
req := client.ListRulesRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/ListRules

Example (Shared00)

To list rules

The following example returns an array of up to 100 rules.

package main

import (
	"context"
	"fmt"

	"github.com/aws/aws-sdk-go-v2/aws"
	"github.com/aws/aws-sdk-go-v2/aws/awserr"
	"github.com/aws/aws-sdk-go-v2/aws/external"
	"github.com/aws/aws-sdk-go-v2/service/waf"
)

func main() {
	cfg, err := external.LoadDefaultAWSConfig()
	if err != nil {
		panic("failed to load config, " + err.Error())
	}

	svc := waf.New(cfg)
	input := &waf.ListRulesInput{
		Limit: aws.Int64(100),
	}

	req := svc.ListRulesRequest(input)
	result, err := req.Send(context.Background())
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case waf.ErrCodeWAFInternalErrorException:
				fmt.Println(waf.ErrCodeWAFInternalErrorException, aerr.Error())
			case waf.ErrCodeWAFInvalidAccountException:
				fmt.Println(waf.ErrCodeWAFInvalidAccountException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Client) ListSizeConstraintSetsRequest added in v0.9.0

func (c *Client) ListSizeConstraintSetsRequest(input *ListSizeConstraintSetsInput) ListSizeConstraintSetsRequest

ListSizeConstraintSetsRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Returns an array of SizeConstraintSetSummary objects.

// Example sending a request using ListSizeConstraintSetsRequest.
req := client.ListSizeConstraintSetsRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/ListSizeConstraintSets

Example (Shared00)

To list a size constraint sets

The following example returns an array of up to 100 size contraint match sets.

package main

import (
	"context"
	"fmt"

	"github.com/aws/aws-sdk-go-v2/aws"
	"github.com/aws/aws-sdk-go-v2/aws/awserr"
	"github.com/aws/aws-sdk-go-v2/aws/external"
	"github.com/aws/aws-sdk-go-v2/service/waf"
)

func main() {
	cfg, err := external.LoadDefaultAWSConfig()
	if err != nil {
		panic("failed to load config, " + err.Error())
	}

	svc := waf.New(cfg)
	input := &waf.ListSizeConstraintSetsInput{
		Limit: aws.Int64(100),
	}

	req := svc.ListSizeConstraintSetsRequest(input)
	result, err := req.Send(context.Background())
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case waf.ErrCodeWAFInternalErrorException:
				fmt.Println(waf.ErrCodeWAFInternalErrorException, aerr.Error())
			case waf.ErrCodeWAFInvalidAccountException:
				fmt.Println(waf.ErrCodeWAFInvalidAccountException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Client) ListSqlInjectionMatchSetsRequest added in v0.9.0

func (c *Client) ListSqlInjectionMatchSetsRequest(input *ListSqlInjectionMatchSetsInput) ListSqlInjectionMatchSetsRequest

ListSqlInjectionMatchSetsRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Returns an array of SqlInjectionMatchSet objects.

// Example sending a request using ListSqlInjectionMatchSetsRequest.
req := client.ListSqlInjectionMatchSetsRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/ListSqlInjectionMatchSets

Example (Shared00)

To list SQL injection match sets

The following example returns an array of up to 100 SQL injection match sets.

package main

import (
	"context"
	"fmt"

	"github.com/aws/aws-sdk-go-v2/aws"
	"github.com/aws/aws-sdk-go-v2/aws/awserr"
	"github.com/aws/aws-sdk-go-v2/aws/external"
	"github.com/aws/aws-sdk-go-v2/service/waf"
)

func main() {
	cfg, err := external.LoadDefaultAWSConfig()
	if err != nil {
		panic("failed to load config, " + err.Error())
	}

	svc := waf.New(cfg)
	input := &waf.ListSqlInjectionMatchSetsInput{
		Limit: aws.Int64(100),
	}

	req := svc.ListSqlInjectionMatchSetsRequest(input)
	result, err := req.Send(context.Background())
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case waf.ErrCodeWAFInternalErrorException:
				fmt.Println(waf.ErrCodeWAFInternalErrorException, aerr.Error())
			case waf.ErrCodeWAFInvalidAccountException:
				fmt.Println(waf.ErrCodeWAFInvalidAccountException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Client) ListSubscribedRuleGroupsRequest added in v0.9.0

func (c *Client) ListSubscribedRuleGroupsRequest(input *ListSubscribedRuleGroupsInput) ListSubscribedRuleGroupsRequest

ListSubscribedRuleGroupsRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Returns an array of RuleGroup objects that you are subscribed to.

// Example sending a request using ListSubscribedRuleGroupsRequest.
req := client.ListSubscribedRuleGroupsRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/ListSubscribedRuleGroups

func (*Client) ListTagsForResourceRequest added in v0.10.0

func (c *Client) ListTagsForResourceRequest(input *ListTagsForResourceInput) ListTagsForResourceRequest

ListTagsForResourceRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Retrieves the tags associated with the specified AWS resource. Tags are key:value pairs that you can use to categorize and manage your resources, for purposes like billing. For example, you might set the tag key to "customer" and the value to the customer name or ID. You can specify one or more tags to add to each AWS resource, up to 50 tags for a resource.

Tagging is only available through the API, SDKs, and CLI. You can't manage or view tags through the AWS WAF Classic console. You can tag the AWS resources that you manage through AWS WAF Classic: web ACLs, rule groups, and rules.

// Example sending a request using ListTagsForResourceRequest.
req := client.ListTagsForResourceRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/ListTagsForResource

func (*Client) ListWebACLsRequest added in v0.9.0

func (c *Client) ListWebACLsRequest(input *ListWebACLsInput) ListWebACLsRequest

ListWebACLsRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Returns an array of WebACLSummary objects in the response.

// Example sending a request using ListWebACLsRequest.
req := client.ListWebACLsRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/ListWebACLs

Example (Shared00)

To list Web ACLs

The following example returns an array of up to 100 web ACLs.

package main

import (
	"context"
	"fmt"

	"github.com/aws/aws-sdk-go-v2/aws"
	"github.com/aws/aws-sdk-go-v2/aws/awserr"
	"github.com/aws/aws-sdk-go-v2/aws/external"
	"github.com/aws/aws-sdk-go-v2/service/waf"
)

func main() {
	cfg, err := external.LoadDefaultAWSConfig()
	if err != nil {
		panic("failed to load config, " + err.Error())
	}

	svc := waf.New(cfg)
	input := &waf.ListWebACLsInput{
		Limit: aws.Int64(100),
	}

	req := svc.ListWebACLsRequest(input)
	result, err := req.Send(context.Background())
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case waf.ErrCodeWAFInternalErrorException:
				fmt.Println(waf.ErrCodeWAFInternalErrorException, aerr.Error())
			case waf.ErrCodeWAFInvalidAccountException:
				fmt.Println(waf.ErrCodeWAFInvalidAccountException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Client) ListXssMatchSetsRequest added in v0.9.0

func (c *Client) ListXssMatchSetsRequest(input *ListXssMatchSetsInput) ListXssMatchSetsRequest

ListXssMatchSetsRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Returns an array of XssMatchSet objects.

// Example sending a request using ListXssMatchSetsRequest.
req := client.ListXssMatchSetsRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/ListXssMatchSets

Example (Shared00)

To list XSS match sets

The following example returns an array of up to 100 XSS match sets.

package main

import (
	"context"
	"fmt"

	"github.com/aws/aws-sdk-go-v2/aws"
	"github.com/aws/aws-sdk-go-v2/aws/awserr"
	"github.com/aws/aws-sdk-go-v2/aws/external"
	"github.com/aws/aws-sdk-go-v2/service/waf"
)

func main() {
	cfg, err := external.LoadDefaultAWSConfig()
	if err != nil {
		panic("failed to load config, " + err.Error())
	}

	svc := waf.New(cfg)
	input := &waf.ListXssMatchSetsInput{
		Limit: aws.Int64(100),
	}

	req := svc.ListXssMatchSetsRequest(input)
	result, err := req.Send(context.Background())
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case waf.ErrCodeWAFInternalErrorException:
				fmt.Println(waf.ErrCodeWAFInternalErrorException, aerr.Error())
			case waf.ErrCodeWAFInvalidAccountException:
				fmt.Println(waf.ErrCodeWAFInvalidAccountException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Client) PutLoggingConfigurationRequest added in v0.9.0

func (c *Client) PutLoggingConfigurationRequest(input *PutLoggingConfigurationInput) PutLoggingConfigurationRequest

PutLoggingConfigurationRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Associates a LoggingConfiguration with a specified web ACL.

You can access information about all traffic that AWS WAF inspects using the following steps:

Create an Amazon Kinesis Data Firehose.

Create the data firehose with a PUT source and in the region that you are operating. However, if you are capturing logs for Amazon CloudFront, always create the firehose in US East (N. Virginia).

Do not create the data firehose using a Kinesis stream as your source.

Associate that firehose to your web ACL using a PutLoggingConfiguration request.

When you successfully enable logging using a PutLoggingConfiguration request, AWS WAF will create a service linked role with the necessary permissions to write logs to the Amazon Kinesis Data Firehose. For more information, see Logging Web ACL Traffic Information (https://docs.aws.amazon.com/waf/latest/developerguide/logging.html) in the AWS WAF Developer Guide.

// Example sending a request using PutLoggingConfigurationRequest.
req := client.PutLoggingConfigurationRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/PutLoggingConfiguration

func (*Client) PutPermissionPolicyRequest added in v0.9.0

func (c *Client) PutPermissionPolicyRequest(input *PutPermissionPolicyInput) PutPermissionPolicyRequest

PutPermissionPolicyRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Attaches an IAM policy to the specified resource. The only supported use for this action is to share a RuleGroup across accounts.

The PutPermissionPolicy is subject to the following restrictions:

  • You can attach only one policy with each PutPermissionPolicy request.

  • The policy must include an Effect, Action and Principal.

  • 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 (https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html).

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

// Example sending a request using PutPermissionPolicyRequest.
req := client.PutPermissionPolicyRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/PutPermissionPolicy

func (*Client) TagResourceRequest added in v0.10.0

func (c *Client) TagResourceRequest(input *TagResourceInput) TagResourceRequest

TagResourceRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Associates tags with the specified AWS resource. Tags are key:value pairs that you can use to categorize and manage your resources, for purposes like billing. For example, you might set the tag key to "customer" and the value to the customer name or ID. You can specify one or more tags to add to each AWS resource, up to 50 tags for a resource.

Tagging is only available through the API, SDKs, and CLI. You can't manage or view tags through the AWS WAF Classic console. You can use this action to tag the AWS resources that you manage through AWS WAF Classic: web ACLs, rule groups, and rules.

// Example sending a request using TagResourceRequest.
req := client.TagResourceRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/TagResource

func (*Client) UntagResourceRequest added in v0.10.0

func (c *Client) UntagResourceRequest(input *UntagResourceInput) UntagResourceRequest

UntagResourceRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

// Example sending a request using UntagResourceRequest.
req := client.UntagResourceRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/UntagResource

func (*Client) UpdateByteMatchSetRequest added in v0.9.0

func (c *Client) UpdateByteMatchSetRequest(input *UpdateByteMatchSetInput) UpdateByteMatchSetRequest

UpdateByteMatchSetRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Inserts or deletes ByteMatchTuple objects (filters) in a ByteMatchSet. For each ByteMatchTuple object, you specify the following values:

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

  • The part of a web request that you want AWS WAF to inspect, such as a query string or the value of the User-Agent header.

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

  • Where to look, such as at the beginning or the end of a query string.

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

For example, you can add a ByteMatchSetUpdate object that matches web requests in which User-Agent headers contain the string BadBot. You can then configure AWS WAF to block those requests.

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

Create a ByteMatchSet. For more information, see CreateByteMatchSet.

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

Submit an UpdateByteMatchSet request to specify the part of the request that you want AWS WAF to inspect (for example, the header or the URI) and the value that you want AWS WAF to watch for.

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

// Example sending a request using UpdateByteMatchSetRequest.
req := client.UpdateByteMatchSetRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/UpdateByteMatchSet

Example (Shared00)

To update a byte match set

The following example deletes a ByteMatchTuple object (filters) in an byte match set with the ID exampleIDs3t-46da-4fdb-b8d5-abc321j569j5.

package main

import (
	"context"
	"fmt"

	"github.com/aws/aws-sdk-go-v2/aws"
	"github.com/aws/aws-sdk-go-v2/aws/awserr"
	"github.com/aws/aws-sdk-go-v2/aws/external"
	"github.com/aws/aws-sdk-go-v2/service/waf"
)

func main() {
	cfg, err := external.LoadDefaultAWSConfig()
	if err != nil {
		panic("failed to load config, " + err.Error())
	}

	svc := waf.New(cfg)
	input := &waf.UpdateByteMatchSetInput{
		ByteMatchSetId: aws.String("exampleIDs3t-46da-4fdb-b8d5-abc321j569j5"),
		ChangeToken:    aws.String("abcd12f2-46da-4fdb-b8d5-fbd4c466928f"),
		Updates: []waf.ByteMatchSetUpdate{
			{
				Action: waf.ChangeActionDelete,
				ByteMatchTuple: &waf.ByteMatchTuple{
					FieldToMatch: &waf.FieldToMatch{
						Data: aws.String("referer"),
						Type: waf.MatchFieldTypeHeader,
					},
					PositionalConstraint: waf.PositionalConstraintContains,
					TargetString:         []byte("badrefer1"),
					TextTransformation:   waf.TextTransformationNone,
				},
			},
		},
	}

	req := svc.UpdateByteMatchSetRequest(input)
	result, err := req.Send(context.Background())
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case waf.ErrCodeWAFInternalErrorException:
				fmt.Println(waf.ErrCodeWAFInternalErrorException, aerr.Error())
			case waf.ErrCodeWAFInvalidAccountException:
				fmt.Println(waf.ErrCodeWAFInvalidAccountException, aerr.Error())
			case waf.ErrCodeWAFInvalidOperationException:
				fmt.Println(waf.ErrCodeWAFInvalidOperationException, aerr.Error())
			case waf.ErrCodeWAFInvalidParameterException:
				fmt.Println(waf.ErrCodeWAFInvalidParameterException, aerr.Error())
			case waf.ErrCodeWAFNonexistentContainerException:
				fmt.Println(waf.ErrCodeWAFNonexistentContainerException, aerr.Error())
			case waf.ErrCodeWAFNonexistentItemException:
				fmt.Println(waf.ErrCodeWAFNonexistentItemException, aerr.Error())
			case waf.ErrCodeWAFStaleDataException:
				fmt.Println(waf.ErrCodeWAFStaleDataException, aerr.Error())
			case waf.ErrCodeWAFLimitsExceededException:
				fmt.Println(waf.ErrCodeWAFLimitsExceededException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Client) UpdateGeoMatchSetRequest added in v0.9.0

func (c *Client) UpdateGeoMatchSetRequest(input *UpdateGeoMatchSetInput) UpdateGeoMatchSetRequest

UpdateGeoMatchSetRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Inserts or deletes GeoMatchConstraint objects in an GeoMatchSet. For each GeoMatchConstraint object, you specify the following values:

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

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

  • The Value, which is a two character code for the country to add to the GeoMatchConstraint object. Valid codes are listed in GeoMatchConstraint$Value.

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

Submit a CreateGeoMatchSet request.

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

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

// Example sending a request using UpdateGeoMatchSetRequest.
req := client.UpdateGeoMatchSetRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/UpdateGeoMatchSet

func (*Client) UpdateIPSetRequest added in v0.9.0

func (c *Client) UpdateIPSetRequest(input *UpdateIPSetInput) UpdateIPSetRequest

UpdateIPSetRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Inserts or deletes IPSetDescriptor objects in an IPSet. For each IPSetDescriptor object, you specify the following values:

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

  • The IP address version, IPv4 or IPv6.

  • The IP address in CIDR notation, for example, 192.0.2.0/24 (for the range of IP addresses from 192.0.2.0 to 192.0.2.255) or 192.0.2.44/32 (for the individual IP address 192.0.2.44).

AWS WAF supports IPv4 address ranges: /8 and any range between /16 through /32. AWS WAF supports IPv6 address ranges: /24, /32, /48, /56, /64, and /128. For more information about CIDR notation, see the Wikipedia entry Classless Inter-Domain Routing (https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing).

IPv6 addresses can be represented using any of the following formats:

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

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

  • 1111::0111/128

  • 1111::111/128

You use an IPSet to specify which web requests you want to allow or block based on the IP addresses that the requests originated from. For example, if you're receiving a lot of requests from one or a small number of IP addresses and you want to block the requests, you can create an IPSet that specifies those IP addresses, and then configure AWS WAF to block the requests.

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

Submit a CreateIPSet request.

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

Submit an UpdateIPSet request to specify the IP addresses that you want AWS WAF to watch for.

When you update an IPSet, you specify the IP addresses that you want to add and/or the IP addresses that you want to delete. If you want to change an IP address, you delete the existing IP address and add the new one.

You can insert a maximum of 1000 addresses in a single request.

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

// Example sending a request using UpdateIPSetRequest.
req := client.UpdateIPSetRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/UpdateIPSet

Example (Shared00)

To update an IP set

The following example deletes an IPSetDescriptor object in an IP match set with the ID example1ds3t-46da-4fdb-b8d5-abc321j569j5.

package main

import (
	"context"
	"fmt"

	"github.com/aws/aws-sdk-go-v2/aws"
	"github.com/aws/aws-sdk-go-v2/aws/awserr"
	"github.com/aws/aws-sdk-go-v2/aws/external"
	"github.com/aws/aws-sdk-go-v2/service/waf"
)

func main() {
	cfg, err := external.LoadDefaultAWSConfig()
	if err != nil {
		panic("failed to load config, " + err.Error())
	}

	svc := waf.New(cfg)
	input := &waf.UpdateIPSetInput{
		ChangeToken: aws.String("abcd12f2-46da-4fdb-b8d5-fbd4c466928f"),
		IPSetId:     aws.String("example1ds3t-46da-4fdb-b8d5-abc321j569j5"),
		Updates: []waf.IPSetUpdate{
			{
				Action: waf.ChangeActionDelete,
				IPSetDescriptor: &waf.IPSetDescriptor{
					Type:  waf.IPSetDescriptorTypeIpv4,
					Value: aws.String("192.0.2.44/32"),
				},
			},
		},
	}

	req := svc.UpdateIPSetRequest(input)
	result, err := req.Send(context.Background())
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case waf.ErrCodeWAFStaleDataException:
				fmt.Println(waf.ErrCodeWAFStaleDataException, aerr.Error())
			case waf.ErrCodeWAFInternalErrorException:
				fmt.Println(waf.ErrCodeWAFInternalErrorException, aerr.Error())
			case waf.ErrCodeWAFInvalidAccountException:
				fmt.Println(waf.ErrCodeWAFInvalidAccountException, aerr.Error())
			case waf.ErrCodeWAFInvalidOperationException:
				fmt.Println(waf.ErrCodeWAFInvalidOperationException, aerr.Error())
			case waf.ErrCodeWAFInvalidParameterException:
				fmt.Println(waf.ErrCodeWAFInvalidParameterException, aerr.Error())
			case waf.ErrCodeWAFNonexistentContainerException:
				fmt.Println(waf.ErrCodeWAFNonexistentContainerException, aerr.Error())
			case waf.ErrCodeWAFNonexistentItemException:
				fmt.Println(waf.ErrCodeWAFNonexistentItemException, aerr.Error())
			case waf.ErrCodeWAFReferencedItemException:
				fmt.Println(waf.ErrCodeWAFReferencedItemException, aerr.Error())
			case waf.ErrCodeWAFLimitsExceededException:
				fmt.Println(waf.ErrCodeWAFLimitsExceededException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Client) UpdateRateBasedRuleRequest added in v0.9.0

func (c *Client) UpdateRateBasedRuleRequest(input *UpdateRateBasedRuleInput) UpdateRateBasedRuleRequest

UpdateRateBasedRuleRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Inserts or deletes Predicate objects in a rule and updates the RateLimit in the rule.

Each Predicate object identifies a predicate, such as a ByteMatchSet or an IPSet, that specifies the web requests that you want to block or count. The RateLimit specifies the number of requests every five minutes that triggers the rule.

If you add more than one predicate to a RateBasedRule, a request must match all the predicates and exceed the RateLimit to be counted or blocked. For example, suppose you add the following to a RateBasedRule:

  • An IPSet that matches the IP address 192.0.2.44/32

  • A ByteMatchSet that matches BadBot in the User-Agent header

Further, you specify a RateLimit of 1,000.

You then add the RateBasedRule to a WebACL and specify that you want to block requests that satisfy the rule. For a request to be blocked, it must come from the IP address 192.0.2.44 and the User-Agent header in the request must contain the value BadBot. Further, requests that match these two conditions much be received at a rate of more than 1,000 every five minutes. If the rate drops below this limit, AWS WAF no longer blocks the requests.

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.

// Example sending a request using UpdateRateBasedRuleRequest.
req := client.UpdateRateBasedRuleRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/UpdateRateBasedRule

func (*Client) UpdateRegexMatchSetRequest added in v0.9.0

func (c *Client) UpdateRegexMatchSetRequest(input *UpdateRegexMatchSetInput) UpdateRegexMatchSetRequest

UpdateRegexMatchSetRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Inserts or deletes RegexMatchTuple objects (filters) in a RegexMatchSet. For each RegexMatchSetUpdate object, you specify the following values:

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

  • The part of a web request that you want AWS WAF to inspectupdate, such as a query string or the value of the User-Agent header.

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

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

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

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

Create a RegexMatchSet. For more information, see CreateRegexMatchSet.

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

Submit an UpdateRegexMatchSet request to specify the part of the request that you want AWS WAF to inspect (for example, the header or the URI) and the identifier of the RegexPatternSet that contain the regular expression patters you want AWS WAF to watch for.

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

// Example sending a request using UpdateRegexMatchSetRequest.
req := client.UpdateRegexMatchSetRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/UpdateRegexMatchSet

func (*Client) UpdateRegexPatternSetRequest added in v0.9.0

func (c *Client) UpdateRegexPatternSetRequest(input *UpdateRegexPatternSetInput) UpdateRegexPatternSetRequest

UpdateRegexPatternSetRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Inserts or deletes RegexPatternString objects in a RegexPatternSet. For each RegexPatternString object, you specify the following values:

  • Whether to insert or delete the RegexPatternString.

  • The regular expression pattern that you want to insert or delete. For more information, see RegexPatternSet.

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

  • BadBot

  • BadB0t

  • B@dBot

  • B@dB0t

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

Create a RegexPatternSet. For more information, see CreateRegexPatternSet.

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

Submit an UpdateRegexPatternSet request to specify the regular expression pattern that you want AWS WAF to watch for.

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

// Example sending a request using UpdateRegexPatternSetRequest.
req := client.UpdateRegexPatternSetRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/UpdateRegexPatternSet

func (*Client) UpdateRuleGroupRequest added in v0.9.0

func (c *Client) UpdateRuleGroupRequest(input *UpdateRuleGroupInput) UpdateRuleGroupRequest

UpdateRuleGroupRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Inserts or deletes ActivatedRule objects in a RuleGroup.

You can only insert REGULAR rules into a rule group.

You can have a maximum of ten rules per rule group.

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 UpdateRuleGroup request.

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

// Example sending a request using UpdateRuleGroupRequest.
req := client.UpdateRuleGroupRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/UpdateRuleGroup

func (*Client) UpdateRuleRequest added in v0.9.0

func (c *Client) UpdateRuleRequest(input *UpdateRuleInput) UpdateRuleRequest

UpdateRuleRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Inserts or deletes Predicate objects in a Rule. Each Predicate object identifies a predicate, such as a ByteMatchSet or an IPSet, that specifies the web requests that you want to allow, block, or count. If you add more than one predicate to a Rule, a request must match all of the specifications to be allowed, blocked, or counted. For example, suppose that you add the following to a Rule:

  • A ByteMatchSet that matches the value BadBot in the User-Agent header

  • An IPSet that matches the IP address 192.0.2.44

You then add the Rule to a WebACL and specify that you want to block requests that satisfy the Rule. For a request to be blocked, the User-Agent header in the request must contain the value BadBot and the request must originate from the IP address 192.0.2.44.

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

Create and update the predicates that you want to include in the Rule.

Create the Rule. See CreateRule.

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

Submit an UpdateRule request to add predicates to the Rule.

Create and update a WebACL that contains the Rule. See CreateWebACL.

If you want to replace one ByteMatchSet or IPSet with another, you delete the existing one and add the new one.

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

// Example sending a request using UpdateRuleRequest.
req := client.UpdateRuleRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/UpdateRule

Example (Shared00)

To update a rule

The following example deletes a Predicate object in a rule with the ID example1ds3t-46da-4fdb-b8d5-abc321j569j5.

package main

import (
	"context"
	"fmt"

	"github.com/aws/aws-sdk-go-v2/aws"
	"github.com/aws/aws-sdk-go-v2/aws/awserr"
	"github.com/aws/aws-sdk-go-v2/aws/external"
	"github.com/aws/aws-sdk-go-v2/service/waf"
)

func main() {
	cfg, err := external.LoadDefaultAWSConfig()
	if err != nil {
		panic("failed to load config, " + err.Error())
	}

	svc := waf.New(cfg)
	input := &waf.UpdateRuleInput{
		ChangeToken: aws.String("abcd12f2-46da-4fdb-b8d5-fbd4c466928f"),
		RuleId:      aws.String("example1ds3t-46da-4fdb-b8d5-abc321j569j5"),
		Updates: []waf.RuleUpdate{
			{
				Action: waf.ChangeActionDelete,
				Predicate: &waf.Predicate{
					DataId:  aws.String("MyByteMatchSetID"),
					Negated: aws.Bool(false),
					Type:    waf.PredicateTypeByteMatch,
				},
			},
		},
	}

	req := svc.UpdateRuleRequest(input)
	result, err := req.Send(context.Background())
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case waf.ErrCodeWAFStaleDataException:
				fmt.Println(waf.ErrCodeWAFStaleDataException, aerr.Error())
			case waf.ErrCodeWAFInternalErrorException:
				fmt.Println(waf.ErrCodeWAFInternalErrorException, aerr.Error())
			case waf.ErrCodeWAFInvalidAccountException:
				fmt.Println(waf.ErrCodeWAFInvalidAccountException, aerr.Error())
			case waf.ErrCodeWAFInvalidOperationException:
				fmt.Println(waf.ErrCodeWAFInvalidOperationException, aerr.Error())
			case waf.ErrCodeWAFInvalidParameterException:
				fmt.Println(waf.ErrCodeWAFInvalidParameterException, aerr.Error())
			case waf.ErrCodeWAFNonexistentContainerException:
				fmt.Println(waf.ErrCodeWAFNonexistentContainerException, aerr.Error())
			case waf.ErrCodeWAFNonexistentItemException:
				fmt.Println(waf.ErrCodeWAFNonexistentItemException, aerr.Error())
			case waf.ErrCodeWAFReferencedItemException:
				fmt.Println(waf.ErrCodeWAFReferencedItemException, aerr.Error())
			case waf.ErrCodeWAFLimitsExceededException:
				fmt.Println(waf.ErrCodeWAFLimitsExceededException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Client) UpdateSizeConstraintSetRequest added in v0.9.0

func (c *Client) UpdateSizeConstraintSetRequest(input *UpdateSizeConstraintSetInput) UpdateSizeConstraintSetRequest

UpdateSizeConstraintSetRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Inserts or deletes SizeConstraint objects (filters) in a SizeConstraintSet. For each SizeConstraint object, you specify the following values:

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

  • The part of a web request that you want AWS WAF to evaluate, such as the length of a query string or the length of the User-Agent header.

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

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

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

For example, you can add a SizeConstraintSetUpdate object that matches web requests in which the length of the User-Agent header is greater than 100 bytes. You can then configure AWS WAF to block those requests.

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

Create a SizeConstraintSet. For more information, see CreateSizeConstraintSet.

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

Submit an UpdateSizeConstraintSet request to specify the part of the request that you want AWS WAF to inspect (for example, the header or the URI) and the value that you want AWS WAF to watch for.

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

// Example sending a request using UpdateSizeConstraintSetRequest.
req := client.UpdateSizeConstraintSetRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/UpdateSizeConstraintSet

Example (Shared00)

To update a size constraint set

The following example deletes a SizeConstraint object (filters) in a size constraint set with the ID example1ds3t-46da-4fdb-b8d5-abc321j569j5.

package main

import (
	"context"
	"fmt"

	"github.com/aws/aws-sdk-go-v2/aws"
	"github.com/aws/aws-sdk-go-v2/aws/awserr"
	"github.com/aws/aws-sdk-go-v2/aws/external"
	"github.com/aws/aws-sdk-go-v2/service/waf"
)

func main() {
	cfg, err := external.LoadDefaultAWSConfig()
	if err != nil {
		panic("failed to load config, " + err.Error())
	}

	svc := waf.New(cfg)
	input := &waf.UpdateSizeConstraintSetInput{
		ChangeToken:         aws.String("abcd12f2-46da-4fdb-b8d5-fbd4c466928f"),
		SizeConstraintSetId: aws.String("example1ds3t-46da-4fdb-b8d5-abc321j569j5"),
		Updates: []waf.SizeConstraintSetUpdate{
			{
				Action: waf.ChangeActionDelete,
				SizeConstraint: &waf.SizeConstraint{
					ComparisonOperator: waf.ComparisonOperatorGt,
					FieldToMatch: &waf.FieldToMatch{
						Type: waf.MatchFieldTypeQueryString,
					},
					Size:               aws.Int64(0),
					TextTransformation: waf.TextTransformationNone,
				},
			},
		},
	}

	req := svc.UpdateSizeConstraintSetRequest(input)
	result, err := req.Send(context.Background())
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case waf.ErrCodeWAFStaleDataException:
				fmt.Println(waf.ErrCodeWAFStaleDataException, aerr.Error())
			case waf.ErrCodeWAFInternalErrorException:
				fmt.Println(waf.ErrCodeWAFInternalErrorException, aerr.Error())
			case waf.ErrCodeWAFInvalidAccountException:
				fmt.Println(waf.ErrCodeWAFInvalidAccountException, aerr.Error())
			case waf.ErrCodeWAFInvalidOperationException:
				fmt.Println(waf.ErrCodeWAFInvalidOperationException, aerr.Error())
			case waf.ErrCodeWAFInvalidParameterException:
				fmt.Println(waf.ErrCodeWAFInvalidParameterException, aerr.Error())
			case waf.ErrCodeWAFNonexistentContainerException:
				fmt.Println(waf.ErrCodeWAFNonexistentContainerException, aerr.Error())
			case waf.ErrCodeWAFNonexistentItemException:
				fmt.Println(waf.ErrCodeWAFNonexistentItemException, aerr.Error())
			case waf.ErrCodeWAFReferencedItemException:
				fmt.Println(waf.ErrCodeWAFReferencedItemException, aerr.Error())
			case waf.ErrCodeWAFLimitsExceededException:
				fmt.Println(waf.ErrCodeWAFLimitsExceededException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Client) UpdateSqlInjectionMatchSetRequest added in v0.9.0

func (c *Client) UpdateSqlInjectionMatchSetRequest(input *UpdateSqlInjectionMatchSetInput) UpdateSqlInjectionMatchSetRequest

UpdateSqlInjectionMatchSetRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Inserts or deletes SqlInjectionMatchTuple objects (filters) in a SqlInjectionMatchSet. For each SqlInjectionMatchTuple object, you specify the following values:

  • Action: Whether to insert the object into or delete the object from the array. To change a SqlInjectionMatchTuple, you delete the existing object and add a new one.

  • FieldToMatch: The part of web requests that you want AWS WAF to inspect and, if you want AWS WAF to inspect a header or custom query parameter, the name of the header or parameter.

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

You use SqlInjectionMatchSet objects to specify which CloudFront requests that you want to allow, block, or count. For example, if you're receiving requests that contain snippets of SQL code in the query string and you want to block the requests, you can create a SqlInjectionMatchSet with the applicable settings, and then configure AWS WAF to block the requests.

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

Submit a CreateSqlInjectionMatchSet request.

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

Submit an UpdateSqlInjectionMatchSet request to specify the parts of web requests that you want AWS WAF to inspect for snippets of SQL code.

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

// Example sending a request using UpdateSqlInjectionMatchSetRequest.
req := client.UpdateSqlInjectionMatchSetRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/UpdateSqlInjectionMatchSet

Example (Shared00)

To update a SQL injection match set

The following example deletes a SqlInjectionMatchTuple object (filters) in a SQL injection match set with the ID example1ds3t-46da-4fdb-b8d5-abc321j569j5.

package main

import (
	"context"
	"fmt"

	"github.com/aws/aws-sdk-go-v2/aws"
	"github.com/aws/aws-sdk-go-v2/aws/awserr"
	"github.com/aws/aws-sdk-go-v2/aws/external"
	"github.com/aws/aws-sdk-go-v2/service/waf"
)

func main() {
	cfg, err := external.LoadDefaultAWSConfig()
	if err != nil {
		panic("failed to load config, " + err.Error())
	}

	svc := waf.New(cfg)
	input := &waf.UpdateSqlInjectionMatchSetInput{
		ChangeToken:            aws.String("abcd12f2-46da-4fdb-b8d5-fbd4c466928f"),
		SqlInjectionMatchSetId: aws.String("example1ds3t-46da-4fdb-b8d5-abc321j569j5"),
		Updates: []waf.SqlInjectionMatchSetUpdate{
			{
				Action: waf.ChangeActionDelete,
				SqlInjectionMatchTuple: &waf.SqlInjectionMatchTuple{
					FieldToMatch: &waf.FieldToMatch{
						Type: waf.MatchFieldTypeQueryString,
					},
					TextTransformation: waf.TextTransformationUrlDecode,
				},
			},
		},
	}

	req := svc.UpdateSqlInjectionMatchSetRequest(input)
	result, err := req.Send(context.Background())
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case waf.ErrCodeWAFInternalErrorException:
				fmt.Println(waf.ErrCodeWAFInternalErrorException, aerr.Error())
			case waf.ErrCodeWAFInvalidAccountException:
				fmt.Println(waf.ErrCodeWAFInvalidAccountException, aerr.Error())
			case waf.ErrCodeWAFInvalidOperationException:
				fmt.Println(waf.ErrCodeWAFInvalidOperationException, aerr.Error())
			case waf.ErrCodeWAFInvalidParameterException:
				fmt.Println(waf.ErrCodeWAFInvalidParameterException, aerr.Error())
			case waf.ErrCodeWAFNonexistentContainerException:
				fmt.Println(waf.ErrCodeWAFNonexistentContainerException, aerr.Error())
			case waf.ErrCodeWAFNonexistentItemException:
				fmt.Println(waf.ErrCodeWAFNonexistentItemException, aerr.Error())
			case waf.ErrCodeWAFStaleDataException:
				fmt.Println(waf.ErrCodeWAFStaleDataException, aerr.Error())
			case waf.ErrCodeWAFLimitsExceededException:
				fmt.Println(waf.ErrCodeWAFLimitsExceededException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Client) UpdateWebACLRequest added in v0.9.0

func (c *Client) UpdateWebACLRequest(input *UpdateWebACLInput) UpdateWebACLRequest

UpdateWebACLRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Inserts or deletes ActivatedRule objects in a WebACL. Each Rule identifies web requests that you want to allow, block, or count. When you update a WebACL, you specify the following values:

  • A default action for the WebACL, either ALLOW or BLOCK. AWS WAF performs the default action if a request doesn't match the criteria in any of the Rules in a WebACL.

  • The Rules that you want to add or delete. If you want to replace one Rule with another, you delete the existing Rule and add the new one.

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

  • The order in which you want AWS WAF to evaluate the Rules in a WebACL. If you add more than one Rule to a WebACL, AWS WAF evaluates each request against the Rules in order based on the value of Priority. (The Rule that has the lowest value for Priority is evaluated first.) When a web request matches all the predicates (such as ByteMatchSets and IPSets) in a Rule, AWS WAF immediately takes the corresponding action, allow or block, and doesn't evaluate the request against the remaining Rules in the WebACL, if any.

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 CreateRule and UpdateRule.

Create a WebACL. See CreateWebACL.

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

Submit an UpdateWebACL request to specify the Rules that you want to include in the WebACL, to specify the default action, and to associate the WebACL with a CloudFront distribution.

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

// Example sending a request using UpdateWebACLRequest.
req := client.UpdateWebACLRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/UpdateWebACL

Example (Shared00)

To update a Web ACL

The following example deletes an ActivatedRule object in a WebACL with the ID webacl-1472061481310.

package main

import (
	"context"
	"fmt"

	"github.com/aws/aws-sdk-go-v2/aws"
	"github.com/aws/aws-sdk-go-v2/aws/awserr"
	"github.com/aws/aws-sdk-go-v2/aws/external"
	"github.com/aws/aws-sdk-go-v2/service/waf"
)

func main() {
	cfg, err := external.LoadDefaultAWSConfig()
	if err != nil {
		panic("failed to load config, " + err.Error())
	}

	svc := waf.New(cfg)
	input := &waf.UpdateWebACLInput{
		ChangeToken: aws.String("abcd12f2-46da-4fdb-b8d5-fbd4c466928f"),
		DefaultAction: &waf.WafAction{
			Type: waf.WafActionTypeAllow,
		},
		Updates: []waf.WebACLUpdate{
			{
				Action: waf.ChangeActionDelete,
				ActivatedRule: &waf.ActivatedRule{
					Action: &waf.WafAction{
						Type: waf.WafActionTypeAllow,
					},
					Priority: aws.Int64(1),
					RuleId:   aws.String("WAFRule-1-Example"),
				},
			},
		},
		WebACLId: aws.String("webacl-1472061481310"),
	}

	req := svc.UpdateWebACLRequest(input)
	result, err := req.Send(context.Background())
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case waf.ErrCodeWAFStaleDataException:
				fmt.Println(waf.ErrCodeWAFStaleDataException, aerr.Error())
			case waf.ErrCodeWAFInternalErrorException:
				fmt.Println(waf.ErrCodeWAFInternalErrorException, aerr.Error())
			case waf.ErrCodeWAFInvalidAccountException:
				fmt.Println(waf.ErrCodeWAFInvalidAccountException, aerr.Error())
			case waf.ErrCodeWAFInvalidOperationException:
				fmt.Println(waf.ErrCodeWAFInvalidOperationException, aerr.Error())
			case waf.ErrCodeWAFInvalidParameterException:
				fmt.Println(waf.ErrCodeWAFInvalidParameterException, aerr.Error())
			case waf.ErrCodeWAFNonexistentContainerException:
				fmt.Println(waf.ErrCodeWAFNonexistentContainerException, aerr.Error())
			case waf.ErrCodeWAFNonexistentItemException:
				fmt.Println(waf.ErrCodeWAFNonexistentItemException, aerr.Error())
			case waf.ErrCodeWAFReferencedItemException:
				fmt.Println(waf.ErrCodeWAFReferencedItemException, aerr.Error())
			case waf.ErrCodeWAFLimitsExceededException:
				fmt.Println(waf.ErrCodeWAFLimitsExceededException, aerr.Error())
			case waf.ErrCodeWAFSubscriptionNotFoundException:
				fmt.Println(waf.ErrCodeWAFSubscriptionNotFoundException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

func (*Client) UpdateXssMatchSetRequest added in v0.9.0

func (c *Client) UpdateXssMatchSetRequest(input *UpdateXssMatchSetInput) UpdateXssMatchSetRequest

UpdateXssMatchSetRequest returns a request value for making API operation for AWS WAF.

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Inserts or deletes XssMatchTuple objects (filters) in an XssMatchSet. For each XssMatchTuple object, you specify the following values:

  • Action: Whether to insert the object into or delete the object from the array. To change an XssMatchTuple, you delete the existing object and add a new one.

  • FieldToMatch: The part of web requests that you want AWS WAF to inspect and, if you want AWS WAF to inspect a header or custom query parameter, the name of the header or parameter.

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

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

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

Submit a CreateXssMatchSet request.

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

Submit an UpdateXssMatchSet request to specify the parts of web requests that you want AWS WAF to inspect for cross-site scripting attacks.

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

// Example sending a request using UpdateXssMatchSetRequest.
req := client.UpdateXssMatchSetRequest(params)
resp, err := req.Send(context.TODO())
if err == nil {
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/waf-2015-08-24/UpdateXssMatchSet

Example (Shared00)

To update an XSS match set

The following example deletes an XssMatchTuple object (filters) in an XssMatchSet with the ID example1ds3t-46da-4fdb-b8d5-abc321j569j5.

package main

import (
	"context"
	"fmt"

	"github.com/aws/aws-sdk-go-v2/aws"
	"github.com/aws/aws-sdk-go-v2/aws/awserr"
	"github.com/aws/aws-sdk-go-v2/aws/external"
	"github.com/aws/aws-sdk-go-v2/service/waf"
)

func main() {
	cfg, err := external.LoadDefaultAWSConfig()
	if err != nil {
		panic("failed to load config, " + err.Error())
	}

	svc := waf.New(cfg)
	input := &waf.UpdateXssMatchSetInput{
		ChangeToken: aws.String("abcd12f2-46da-4fdb-b8d5-fbd4c466928f"),
		Updates: []waf.XssMatchSetUpdate{
			{
				Action: waf.ChangeActionDelete,
				XssMatchTuple: &waf.XssMatchTuple{
					FieldToMatch: &waf.FieldToMatch{
						Type: waf.MatchFieldTypeQueryString,
					},
					TextTransformation: waf.TextTransformationUrlDecode,
				},
			},
		},
		XssMatchSetId: aws.String("example1ds3t-46da-4fdb-b8d5-abc321j569j5"),
	}

	req := svc.UpdateXssMatchSetRequest(input)
	result, err := req.Send(context.Background())
	if err != nil {
		if aerr, ok := err.(awserr.Error); ok {
			switch aerr.Code() {
			case waf.ErrCodeWAFInternalErrorException:
				fmt.Println(waf.ErrCodeWAFInternalErrorException, aerr.Error())
			case waf.ErrCodeWAFInvalidAccountException:
				fmt.Println(waf.ErrCodeWAFInvalidAccountException, aerr.Error())
			case waf.ErrCodeWAFInvalidOperationException:
				fmt.Println(waf.ErrCodeWAFInvalidOperationException, aerr.Error())
			case waf.ErrCodeWAFInvalidParameterException:
				fmt.Println(waf.ErrCodeWAFInvalidParameterException, aerr.Error())
			case waf.ErrCodeWAFNonexistentContainerException:
				fmt.Println(waf.ErrCodeWAFNonexistentContainerException, aerr.Error())
			case waf.ErrCodeWAFNonexistentItemException:
				fmt.Println(waf.ErrCodeWAFNonexistentItemException, aerr.Error())
			case waf.ErrCodeWAFStaleDataException:
				fmt.Println(waf.ErrCodeWAFStaleDataException, aerr.Error())
			case waf.ErrCodeWAFLimitsExceededException:
				fmt.Println(waf.ErrCodeWAFLimitsExceededException, aerr.Error())
			default:
				fmt.Println(aerr.Error())
			}
		} else {
			// Print the error, cast err to awserr.Error to get the Code and
			// Message from an error.
			fmt.Println(err.Error())
		}
		return
	}

	fmt.Println(result)
}
Output:

type ComparisonOperator

type ComparisonOperator string
const (
	ComparisonOperatorEq ComparisonOperator = "EQ"
	ComparisonOperatorNe ComparisonOperator = "NE"
	ComparisonOperatorLe ComparisonOperator = "LE"
	ComparisonOperatorLt ComparisonOperator = "LT"
	ComparisonOperatorGe ComparisonOperator = "GE"
	ComparisonOperatorGt ComparisonOperator = "GT"
)

Enum values for ComparisonOperator

func (ComparisonOperator) MarshalValue added in v0.3.0

func (enum ComparisonOperator) MarshalValue() (string, error)

func (ComparisonOperator) MarshalValueBuf added in v0.3.0

func (enum ComparisonOperator) MarshalValueBuf(b []byte) ([]byte, error)

type CreateByteMatchSetInput

type CreateByteMatchSetInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// ChangeToken is a required field
	ChangeToken *string `min:"1" type:"string" required:"true"`

	// A friendly name or description of the ByteMatchSet. You can't change Name
	// after you create a ByteMatchSet.
	//
	// Name is a required field
	Name *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (CreateByteMatchSetInput) String

func (s CreateByteMatchSetInput) String() string

String returns the string representation

func (*CreateByteMatchSetInput) Validate

func (s *CreateByteMatchSetInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type CreateByteMatchSetOutput

type CreateByteMatchSetOutput struct {

	// A ByteMatchSet that contains no ByteMatchTuple objects.
	ByteMatchSet *ByteMatchSet `type:"structure"`

	// 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 `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (CreateByteMatchSetOutput) String

func (s CreateByteMatchSetOutput) String() string

String returns the string representation

type CreateByteMatchSetRequest

type CreateByteMatchSetRequest struct {
	*aws.Request
	Input *CreateByteMatchSetInput
	Copy  func(*CreateByteMatchSetInput) CreateByteMatchSetRequest
}

CreateByteMatchSetRequest is the request type for the CreateByteMatchSet API operation.

func (CreateByteMatchSetRequest) Send

Send marshals and sends the CreateByteMatchSet API request.

type CreateByteMatchSetResponse added in v0.9.0

type CreateByteMatchSetResponse struct {
	*CreateByteMatchSetOutput
	// contains filtered or unexported fields
}

CreateByteMatchSetResponse is the response type for the CreateByteMatchSet API operation.

func (*CreateByteMatchSetResponse) SDKResponseMetdata added in v0.9.0

func (r *CreateByteMatchSetResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the CreateByteMatchSet request.

type CreateGeoMatchSetInput added in v0.2.0

type CreateGeoMatchSetInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// ChangeToken is a required field
	ChangeToken *string `min:"1" type:"string" required:"true"`

	// A friendly name or description of the GeoMatchSet. You can't change Name
	// after you create the GeoMatchSet.
	//
	// Name is a required field
	Name *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (CreateGeoMatchSetInput) String added in v0.2.0

func (s CreateGeoMatchSetInput) String() string

String returns the string representation

func (*CreateGeoMatchSetInput) Validate added in v0.2.0

func (s *CreateGeoMatchSetInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type CreateGeoMatchSetOutput added in v0.2.0

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 `min:"1" type:"string"`

	// The GeoMatchSet returned in the CreateGeoMatchSet response. The GeoMatchSet
	// contains no GeoMatchConstraints.
	GeoMatchSet *GeoMatchSet `type:"structure"`
	// contains filtered or unexported fields
}

func (CreateGeoMatchSetOutput) String added in v0.2.0

func (s CreateGeoMatchSetOutput) String() string

String returns the string representation

type CreateGeoMatchSetRequest added in v0.2.0

type CreateGeoMatchSetRequest struct {
	*aws.Request
	Input *CreateGeoMatchSetInput
	Copy  func(*CreateGeoMatchSetInput) CreateGeoMatchSetRequest
}

CreateGeoMatchSetRequest is the request type for the CreateGeoMatchSet API operation.

func (CreateGeoMatchSetRequest) Send added in v0.2.0

Send marshals and sends the CreateGeoMatchSet API request.

type CreateGeoMatchSetResponse added in v0.9.0

type CreateGeoMatchSetResponse struct {
	*CreateGeoMatchSetOutput
	// contains filtered or unexported fields
}

CreateGeoMatchSetResponse is the response type for the CreateGeoMatchSet API operation.

func (*CreateGeoMatchSetResponse) SDKResponseMetdata added in v0.9.0

func (r *CreateGeoMatchSetResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the CreateGeoMatchSet request.

type CreateIPSetInput

type CreateIPSetInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// ChangeToken is a required field
	ChangeToken *string `min:"1" type:"string" required:"true"`

	// A friendly name or description of the IPSet. You can't change Name after
	// you create the IPSet.
	//
	// Name is a required field
	Name *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (CreateIPSetInput) String

func (s CreateIPSetInput) String() string

String returns the string representation

func (*CreateIPSetInput) Validate

func (s *CreateIPSetInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

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 `min:"1" type:"string"`

	// The IPSet returned in the CreateIPSet response.
	IPSet *IPSet `type:"structure"`
	// contains filtered or unexported fields
}

func (CreateIPSetOutput) String

func (s CreateIPSetOutput) String() string

String returns the string representation

type CreateIPSetRequest

type CreateIPSetRequest struct {
	*aws.Request
	Input *CreateIPSetInput
	Copy  func(*CreateIPSetInput) CreateIPSetRequest
}

CreateIPSetRequest is the request type for the CreateIPSet API operation.

func (CreateIPSetRequest) Send

Send marshals and sends the CreateIPSet API request.

type CreateIPSetResponse added in v0.9.0

type CreateIPSetResponse struct {
	*CreateIPSetOutput
	// contains filtered or unexported fields
}

CreateIPSetResponse is the response type for the CreateIPSet API operation.

func (*CreateIPSetResponse) SDKResponseMetdata added in v0.9.0

func (r *CreateIPSetResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the CreateIPSet request.

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.
	//
	// ChangeToken is a required field
	ChangeToken *string `min:"1" type:"string" required:"true"`

	// A friendly name or description for the metrics for this RateBasedRule. The
	// name can contain only alphanumeric characters (A-Z, a-z, 0-9), with maximum
	// length 128 and minimum length one. It can't contain whitespace or metric
	// names reserved for AWS WAF, including "All" and "Default_Action." You can't
	// change the name of the metric after you create the RateBasedRule.
	//
	// MetricName is a required field
	MetricName *string `min:"1" type:"string" required:"true"`

	// A friendly name or description of the RateBasedRule. You can't change the
	// name of a RateBasedRule after you create it.
	//
	// Name is a required field
	Name *string `min:"1" type:"string" required:"true"`

	// The field that AWS WAF uses to determine if requests are likely arriving
	// from a single source and thus subject to rate monitoring. The only valid
	// value for RateKey is IP. IP indicates that requests that arrive from the
	// same IP address are subject to the RateLimit that is specified in the RateBasedRule.
	//
	// RateKey is a required field
	RateKey RateKey `type:"string" required:"true" enum:"true"`

	// The maximum number of requests, which have an identical value in the field
	// that is specified by RateKey, allowed in a five-minute period. If the number
	// of requests exceeds the RateLimit and the other predicates specified in the
	// rule are also met, AWS WAF triggers the action that is specified for this
	// rule.
	//
	// RateLimit is a required field
	RateLimit *int64 `min:"100" type:"long" required:"true"`

	Tags []Tag `min:"1" type:"list"`
	// contains filtered or unexported fields
}

func (CreateRateBasedRuleInput) String

func (s CreateRateBasedRuleInput) String() string

String returns the string representation

func (*CreateRateBasedRuleInput) Validate

func (s *CreateRateBasedRuleInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

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 `min:"1" type:"string"`

	// The RateBasedRule that is returned in the CreateRateBasedRule response.
	Rule *RateBasedRule `type:"structure"`
	// contains filtered or unexported fields
}

func (CreateRateBasedRuleOutput) String

func (s CreateRateBasedRuleOutput) String() string

String returns the string representation

type CreateRateBasedRuleRequest

type CreateRateBasedRuleRequest struct {
	*aws.Request
	Input *CreateRateBasedRuleInput
	Copy  func(*CreateRateBasedRuleInput) CreateRateBasedRuleRequest
}

CreateRateBasedRuleRequest is the request type for the CreateRateBasedRule API operation.

func (CreateRateBasedRuleRequest) Send

Send marshals and sends the CreateRateBasedRule API request.

type CreateRateBasedRuleResponse added in v0.9.0

type CreateRateBasedRuleResponse struct {
	*CreateRateBasedRuleOutput
	// contains filtered or unexported fields
}

CreateRateBasedRuleResponse is the response type for the CreateRateBasedRule API operation.

func (*CreateRateBasedRuleResponse) SDKResponseMetdata added in v0.9.0

func (r *CreateRateBasedRuleResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the CreateRateBasedRule request.

type CreateRegexMatchSetInput added in v0.2.0

type CreateRegexMatchSetInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// ChangeToken is a required field
	ChangeToken *string `min:"1" type:"string" required:"true"`

	// A friendly name or description of the RegexMatchSet. You can't change Name
	// after you create a RegexMatchSet.
	//
	// Name is a required field
	Name *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (CreateRegexMatchSetInput) String added in v0.2.0

func (s CreateRegexMatchSetInput) String() string

String returns the string representation

func (*CreateRegexMatchSetInput) Validate added in v0.2.0

func (s *CreateRegexMatchSetInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type CreateRegexMatchSetOutput added in v0.2.0

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 `min:"1" type:"string"`

	// A RegexMatchSet that contains no RegexMatchTuple objects.
	RegexMatchSet *RegexMatchSet `type:"structure"`
	// contains filtered or unexported fields
}

func (CreateRegexMatchSetOutput) String added in v0.2.0

func (s CreateRegexMatchSetOutput) String() string

String returns the string representation

type CreateRegexMatchSetRequest added in v0.2.0

type CreateRegexMatchSetRequest struct {
	*aws.Request
	Input *CreateRegexMatchSetInput
	Copy  func(*CreateRegexMatchSetInput) CreateRegexMatchSetRequest
}

CreateRegexMatchSetRequest is the request type for the CreateRegexMatchSet API operation.

func (CreateRegexMatchSetRequest) Send added in v0.2.0

Send marshals and sends the CreateRegexMatchSet API request.

type CreateRegexMatchSetResponse added in v0.9.0

type CreateRegexMatchSetResponse struct {
	*CreateRegexMatchSetOutput
	// contains filtered or unexported fields
}

CreateRegexMatchSetResponse is the response type for the CreateRegexMatchSet API operation.

func (*CreateRegexMatchSetResponse) SDKResponseMetdata added in v0.9.0

func (r *CreateRegexMatchSetResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the CreateRegexMatchSet request.

type CreateRegexPatternSetInput added in v0.2.0

type CreateRegexPatternSetInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// ChangeToken is a required field
	ChangeToken *string `min:"1" type:"string" required:"true"`

	// A friendly name or description of the RegexPatternSet. You can't change Name
	// after you create a RegexPatternSet.
	//
	// Name is a required field
	Name *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (CreateRegexPatternSetInput) String added in v0.2.0

String returns the string representation

func (*CreateRegexPatternSetInput) Validate added in v0.2.0

func (s *CreateRegexPatternSetInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type CreateRegexPatternSetOutput added in v0.2.0

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 `min:"1" type:"string"`

	// A RegexPatternSet that contains no objects.
	RegexPatternSet *RegexPatternSet `type:"structure"`
	// contains filtered or unexported fields
}

func (CreateRegexPatternSetOutput) String added in v0.2.0

String returns the string representation

type CreateRegexPatternSetRequest added in v0.2.0

type CreateRegexPatternSetRequest struct {
	*aws.Request
	Input *CreateRegexPatternSetInput
	Copy  func(*CreateRegexPatternSetInput) CreateRegexPatternSetRequest
}

CreateRegexPatternSetRequest is the request type for the CreateRegexPatternSet API operation.

func (CreateRegexPatternSetRequest) Send added in v0.2.0

Send marshals and sends the CreateRegexPatternSet API request.

type CreateRegexPatternSetResponse added in v0.9.0

type CreateRegexPatternSetResponse struct {
	*CreateRegexPatternSetOutput
	// contains filtered or unexported fields
}

CreateRegexPatternSetResponse is the response type for the CreateRegexPatternSet API operation.

func (*CreateRegexPatternSetResponse) SDKResponseMetdata added in v0.9.0

func (r *CreateRegexPatternSetResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the CreateRegexPatternSet request.

type CreateRuleGroupInput added in v0.2.0

type CreateRuleGroupInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// ChangeToken is a required field
	ChangeToken *string `min:"1" type:"string" required:"true"`

	// A friendly name or description for the metrics for this RuleGroup. The name
	// can contain only alphanumeric characters (A-Z, a-z, 0-9), with maximum length
	// 128 and minimum length one. It can't contain whitespace or metric names reserved
	// for AWS WAF, including "All" and "Default_Action." You can't change the name
	// of the metric after you create the RuleGroup.
	//
	// MetricName is a required field
	MetricName *string `min:"1" type:"string" required:"true"`

	// A friendly name or description of the RuleGroup. You can't change Name after
	// you create a RuleGroup.
	//
	// Name is a required field
	Name *string `min:"1" type:"string" required:"true"`

	Tags []Tag `min:"1" type:"list"`
	// contains filtered or unexported fields
}

func (CreateRuleGroupInput) String added in v0.2.0

func (s CreateRuleGroupInput) String() string

String returns the string representation

func (*CreateRuleGroupInput) Validate added in v0.2.0

func (s *CreateRuleGroupInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type CreateRuleGroupOutput added in v0.2.0

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 `min:"1" type:"string"`

	// An empty RuleGroup.
	RuleGroup *RuleGroup `type:"structure"`
	// contains filtered or unexported fields
}

func (CreateRuleGroupOutput) String added in v0.2.0

func (s CreateRuleGroupOutput) String() string

String returns the string representation

type CreateRuleGroupRequest added in v0.2.0

type CreateRuleGroupRequest struct {
	*aws.Request
	Input *CreateRuleGroupInput
	Copy  func(*CreateRuleGroupInput) CreateRuleGroupRequest
}

CreateRuleGroupRequest is the request type for the CreateRuleGroup API operation.

func (CreateRuleGroupRequest) Send added in v0.2.0

Send marshals and sends the CreateRuleGroup API request.

type CreateRuleGroupResponse added in v0.9.0

type CreateRuleGroupResponse struct {
	*CreateRuleGroupOutput
	// contains filtered or unexported fields
}

CreateRuleGroupResponse is the response type for the CreateRuleGroup API operation.

func (*CreateRuleGroupResponse) SDKResponseMetdata added in v0.9.0

func (r *CreateRuleGroupResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the CreateRuleGroup request.

type CreateRuleInput

type CreateRuleInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// ChangeToken is a required field
	ChangeToken *string `min:"1" type:"string" required:"true"`

	// A friendly name or description for the metrics for this Rule. The name can
	// contain only alphanumeric characters (A-Z, a-z, 0-9), with maximum length
	// 128 and minimum length one. It can't contain whitespace or metric names reserved
	// for AWS WAF, including "All" and "Default_Action." You can't change the name
	// of the metric after you create the Rule.
	//
	// MetricName is a required field
	MetricName *string `min:"1" type:"string" required:"true"`

	// A friendly name or description of the Rule. You can't change the name of
	// a Rule after you create it.
	//
	// Name is a required field
	Name *string `min:"1" type:"string" required:"true"`

	Tags []Tag `min:"1" type:"list"`
	// contains filtered or unexported fields
}

func (CreateRuleInput) String

func (s CreateRuleInput) String() string

String returns the string representation

func (*CreateRuleInput) Validate

func (s *CreateRuleInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

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 `min:"1" type:"string"`

	// The Rule returned in the CreateRule response.
	Rule *Rule `type:"structure"`
	// contains filtered or unexported fields
}

func (CreateRuleOutput) String

func (s CreateRuleOutput) String() string

String returns the string representation

type CreateRuleRequest

type CreateRuleRequest struct {
	*aws.Request
	Input *CreateRuleInput
	Copy  func(*CreateRuleInput) CreateRuleRequest
}

CreateRuleRequest is the request type for the CreateRule API operation.

func (CreateRuleRequest) Send

Send marshals and sends the CreateRule API request.

type CreateRuleResponse added in v0.9.0

type CreateRuleResponse struct {
	*CreateRuleOutput
	// contains filtered or unexported fields
}

CreateRuleResponse is the response type for the CreateRule API operation.

func (*CreateRuleResponse) SDKResponseMetdata added in v0.9.0

func (r *CreateRuleResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the CreateRule request.

type CreateSizeConstraintSetInput

type CreateSizeConstraintSetInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// ChangeToken is a required field
	ChangeToken *string `min:"1" type:"string" required:"true"`

	// A friendly name or description of the SizeConstraintSet. You can't change
	// Name after you create a SizeConstraintSet.
	//
	// Name is a required field
	Name *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (CreateSizeConstraintSetInput) String

String returns the string representation

func (*CreateSizeConstraintSetInput) Validate

func (s *CreateSizeConstraintSetInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

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 `min:"1" type:"string"`

	// A SizeConstraintSet that contains no SizeConstraint objects.
	SizeConstraintSet *SizeConstraintSet `type:"structure"`
	// contains filtered or unexported fields
}

func (CreateSizeConstraintSetOutput) String

String returns the string representation

type CreateSizeConstraintSetRequest

type CreateSizeConstraintSetRequest struct {
	*aws.Request
	Input *CreateSizeConstraintSetInput
	Copy  func(*CreateSizeConstraintSetInput) CreateSizeConstraintSetRequest
}

CreateSizeConstraintSetRequest is the request type for the CreateSizeConstraintSet API operation.

func (CreateSizeConstraintSetRequest) Send

Send marshals and sends the CreateSizeConstraintSet API request.

type CreateSizeConstraintSetResponse added in v0.9.0

type CreateSizeConstraintSetResponse struct {
	*CreateSizeConstraintSetOutput
	// contains filtered or unexported fields
}

CreateSizeConstraintSetResponse is the response type for the CreateSizeConstraintSet API operation.

func (*CreateSizeConstraintSetResponse) SDKResponseMetdata added in v0.9.0

func (r *CreateSizeConstraintSetResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the CreateSizeConstraintSet request.

type CreateSqlInjectionMatchSetInput

type CreateSqlInjectionMatchSetInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// ChangeToken is a required field
	ChangeToken *string `min:"1" type:"string" required:"true"`

	// A friendly name or description for the SqlInjectionMatchSet that you're creating.
	// You can't change Name after you create the SqlInjectionMatchSet.
	//
	// Name is a required field
	Name *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

A request to create a SqlInjectionMatchSet.

func (CreateSqlInjectionMatchSetInput) String

String returns the string representation

func (*CreateSqlInjectionMatchSetInput) Validate

func (s *CreateSqlInjectionMatchSetInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

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 `min:"1" type:"string"`

	// A SqlInjectionMatchSet.
	SqlInjectionMatchSet *SqlInjectionMatchSet `type:"structure"`
	// contains filtered or unexported fields
}

The response to a CreateSqlInjectionMatchSet request.

func (CreateSqlInjectionMatchSetOutput) String

String returns the string representation

type CreateSqlInjectionMatchSetRequest

type CreateSqlInjectionMatchSetRequest struct {
	*aws.Request
	Input *CreateSqlInjectionMatchSetInput
	Copy  func(*CreateSqlInjectionMatchSetInput) CreateSqlInjectionMatchSetRequest
}

CreateSqlInjectionMatchSetRequest is the request type for the CreateSqlInjectionMatchSet API operation.

func (CreateSqlInjectionMatchSetRequest) Send

Send marshals and sends the CreateSqlInjectionMatchSet API request.

type CreateSqlInjectionMatchSetResponse added in v0.9.0

type CreateSqlInjectionMatchSetResponse struct {
	*CreateSqlInjectionMatchSetOutput
	// contains filtered or unexported fields
}

CreateSqlInjectionMatchSetResponse is the response type for the CreateSqlInjectionMatchSet API operation.

func (*CreateSqlInjectionMatchSetResponse) SDKResponseMetdata added in v0.9.0

func (r *CreateSqlInjectionMatchSetResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the CreateSqlInjectionMatchSet request.

type CreateWebACLInput

type CreateWebACLInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// ChangeToken is a required field
	ChangeToken *string `min:"1" type:"string" required:"true"`

	// The action that you want AWS WAF to take when a request doesn't match the
	// criteria specified in any of the Rule objects that are associated with the
	// WebACL.
	//
	// DefaultAction is a required field
	DefaultAction *WafAction `type:"structure" required:"true"`

	// A friendly name or description for the metrics for this WebACL.The name can
	// contain only alphanumeric characters (A-Z, a-z, 0-9), with maximum length
	// 128 and minimum length one. It can't contain whitespace or metric names reserved
	// for AWS WAF, including "All" and "Default_Action." You can't change MetricName
	// after you create the WebACL.
	//
	// MetricName is a required field
	MetricName *string `min:"1" type:"string" required:"true"`

	// A friendly name or description of the WebACL. You can't change Name after
	// you create the WebACL.
	//
	// Name is a required field
	Name *string `min:"1" type:"string" required:"true"`

	Tags []Tag `min:"1" type:"list"`
	// contains filtered or unexported fields
}

func (CreateWebACLInput) String

func (s CreateWebACLInput) String() string

String returns the string representation

func (*CreateWebACLInput) Validate

func (s *CreateWebACLInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type CreateWebACLMigrationStackInput added in v0.23.0

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.
	//
	// IgnoreUnsupportedType is a required field
	IgnoreUnsupportedType *bool `type:"boolean" required:"true"`

	// The name of the Amazon S3 bucket to store the CloudFormation template in.
	// The S3 bucket must be configured as follows for the migration:
	//
	//    * The bucket name must start with aws-waf-migration-. For example, aws-waf-migration-my-web-acl.
	//
	//    * The bucket must be in the Region where you are deploying the template.
	//    For example, for a web ACL in us-west-2, you must use an Amazon S3 bucket
	//    in us-west-2 and you must deploy the template stack to us-west-2.
	//
	//    * The bucket policies must permit the migration process to write data.
	//    For listings of the bucket policies, see the Examples section.
	//
	// S3BucketName is a required field
	S3BucketName *string `min:"3" type:"string" required:"true"`

	// The UUID of the WAF Classic web ACL that you want to migrate to WAF v2.
	//
	// WebACLId is a required field
	WebACLId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (CreateWebACLMigrationStackInput) String added in v0.23.0

String returns the string representation

func (*CreateWebACLMigrationStackInput) Validate added in v0.23.0

func (s *CreateWebACLMigrationStackInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type CreateWebACLMigrationStackOutput added in v0.23.0

type CreateWebACLMigrationStackOutput struct {

	// The URL of the template created in Amazon S3.
	//
	// S3ObjectUrl is a required field
	S3ObjectUrl *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (CreateWebACLMigrationStackOutput) String added in v0.23.0

String returns the string representation

type CreateWebACLMigrationStackRequest added in v0.23.0

type CreateWebACLMigrationStackRequest struct {
	*aws.Request
	Input *CreateWebACLMigrationStackInput
	Copy  func(*CreateWebACLMigrationStackInput) CreateWebACLMigrationStackRequest
}

CreateWebACLMigrationStackRequest is the request type for the CreateWebACLMigrationStack API operation.

func (CreateWebACLMigrationStackRequest) Send added in v0.23.0

Send marshals and sends the CreateWebACLMigrationStack API request.

type CreateWebACLMigrationStackResponse added in v0.23.0

type CreateWebACLMigrationStackResponse struct {
	*CreateWebACLMigrationStackOutput
	// contains filtered or unexported fields
}

CreateWebACLMigrationStackResponse is the response type for the CreateWebACLMigrationStack API operation.

func (*CreateWebACLMigrationStackResponse) SDKResponseMetdata added in v0.23.0

func (r *CreateWebACLMigrationStackResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the CreateWebACLMigrationStack request.

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 `min:"1" type:"string"`

	// The WebACL returned in the CreateWebACL response.
	WebACL *WebACL `type:"structure"`
	// contains filtered or unexported fields
}

func (CreateWebACLOutput) String

func (s CreateWebACLOutput) String() string

String returns the string representation

type CreateWebACLRequest

type CreateWebACLRequest struct {
	*aws.Request
	Input *CreateWebACLInput
	Copy  func(*CreateWebACLInput) CreateWebACLRequest
}

CreateWebACLRequest is the request type for the CreateWebACL API operation.

func (CreateWebACLRequest) Send

Send marshals and sends the CreateWebACL API request.

type CreateWebACLResponse added in v0.9.0

type CreateWebACLResponse struct {
	*CreateWebACLOutput
	// contains filtered or unexported fields
}

CreateWebACLResponse is the response type for the CreateWebACL API operation.

func (*CreateWebACLResponse) SDKResponseMetdata added in v0.9.0

func (r *CreateWebACLResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the CreateWebACL request.

type CreateXssMatchSetInput

type CreateXssMatchSetInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// ChangeToken is a required field
	ChangeToken *string `min:"1" type:"string" required:"true"`

	// A friendly name or description for the XssMatchSet that you're creating.
	// You can't change Name after you create the XssMatchSet.
	//
	// Name is a required field
	Name *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

A request to create an XssMatchSet.

func (CreateXssMatchSetInput) String

func (s CreateXssMatchSetInput) String() string

String returns the string representation

func (*CreateXssMatchSetInput) Validate

func (s *CreateXssMatchSetInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

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 `min:"1" type:"string"`

	// An XssMatchSet.
	XssMatchSet *XssMatchSet `type:"structure"`
	// contains filtered or unexported fields
}

The response to a CreateXssMatchSet request.

func (CreateXssMatchSetOutput) String

func (s CreateXssMatchSetOutput) String() string

String returns the string representation

type CreateXssMatchSetRequest

type CreateXssMatchSetRequest struct {
	*aws.Request
	Input *CreateXssMatchSetInput
	Copy  func(*CreateXssMatchSetInput) CreateXssMatchSetRequest
}

CreateXssMatchSetRequest is the request type for the CreateXssMatchSet API operation.

func (CreateXssMatchSetRequest) Send

Send marshals and sends the CreateXssMatchSet API request.

type CreateXssMatchSetResponse added in v0.9.0

type CreateXssMatchSetResponse struct {
	*CreateXssMatchSetOutput
	// contains filtered or unexported fields
}

CreateXssMatchSetResponse is the response type for the CreateXssMatchSet API operation.

func (*CreateXssMatchSetResponse) SDKResponseMetdata added in v0.9.0

func (r *CreateXssMatchSetResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the CreateXssMatchSet request.

type DeleteByteMatchSetInput

type DeleteByteMatchSetInput struct {

	// The ByteMatchSetId of the ByteMatchSet that you want to delete. ByteMatchSetId
	// is returned by CreateByteMatchSet and by ListByteMatchSets.
	//
	// ByteMatchSetId is a required field
	ByteMatchSetId *string `min:"1" type:"string" required:"true"`

	// The value returned by the most recent call to GetChangeToken.
	//
	// ChangeToken is a required field
	ChangeToken *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DeleteByteMatchSetInput) String

func (s DeleteByteMatchSetInput) String() string

String returns the string representation

func (*DeleteByteMatchSetInput) Validate

func (s *DeleteByteMatchSetInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

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 `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (DeleteByteMatchSetOutput) String

func (s DeleteByteMatchSetOutput) String() string

String returns the string representation

type DeleteByteMatchSetRequest

type DeleteByteMatchSetRequest struct {
	*aws.Request
	Input *DeleteByteMatchSetInput
	Copy  func(*DeleteByteMatchSetInput) DeleteByteMatchSetRequest
}

DeleteByteMatchSetRequest is the request type for the DeleteByteMatchSet API operation.

func (DeleteByteMatchSetRequest) Send

Send marshals and sends the DeleteByteMatchSet API request.

type DeleteByteMatchSetResponse added in v0.9.0

type DeleteByteMatchSetResponse struct {
	*DeleteByteMatchSetOutput
	// contains filtered or unexported fields
}

DeleteByteMatchSetResponse is the response type for the DeleteByteMatchSet API operation.

func (*DeleteByteMatchSetResponse) SDKResponseMetdata added in v0.9.0

func (r *DeleteByteMatchSetResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the DeleteByteMatchSet request.

type DeleteGeoMatchSetInput added in v0.2.0

type DeleteGeoMatchSetInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// ChangeToken is a required field
	ChangeToken *string `min:"1" type:"string" required:"true"`

	// The GeoMatchSetID of the GeoMatchSet that you want to delete. GeoMatchSetId
	// is returned by CreateGeoMatchSet and by ListGeoMatchSets.
	//
	// GeoMatchSetId is a required field
	GeoMatchSetId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DeleteGeoMatchSetInput) String added in v0.2.0

func (s DeleteGeoMatchSetInput) String() string

String returns the string representation

func (*DeleteGeoMatchSetInput) Validate added in v0.2.0

func (s *DeleteGeoMatchSetInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DeleteGeoMatchSetOutput added in v0.2.0

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 `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (DeleteGeoMatchSetOutput) String added in v0.2.0

func (s DeleteGeoMatchSetOutput) String() string

String returns the string representation

type DeleteGeoMatchSetRequest added in v0.2.0

type DeleteGeoMatchSetRequest struct {
	*aws.Request
	Input *DeleteGeoMatchSetInput
	Copy  func(*DeleteGeoMatchSetInput) DeleteGeoMatchSetRequest
}

DeleteGeoMatchSetRequest is the request type for the DeleteGeoMatchSet API operation.

func (DeleteGeoMatchSetRequest) Send added in v0.2.0

Send marshals and sends the DeleteGeoMatchSet API request.

type DeleteGeoMatchSetResponse added in v0.9.0

type DeleteGeoMatchSetResponse struct {
	*DeleteGeoMatchSetOutput
	// contains filtered or unexported fields
}

DeleteGeoMatchSetResponse is the response type for the DeleteGeoMatchSet API operation.

func (*DeleteGeoMatchSetResponse) SDKResponseMetdata added in v0.9.0

func (r *DeleteGeoMatchSetResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the DeleteGeoMatchSet request.

type DeleteIPSetInput

type DeleteIPSetInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// ChangeToken is a required field
	ChangeToken *string `min:"1" type:"string" required:"true"`

	// The IPSetId of the IPSet that you want to delete. IPSetId is returned by
	// CreateIPSet and by ListIPSets.
	//
	// IPSetId is a required field
	IPSetId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DeleteIPSetInput) String

func (s DeleteIPSetInput) String() string

String returns the string representation

func (*DeleteIPSetInput) Validate

func (s *DeleteIPSetInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

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 `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (DeleteIPSetOutput) String

func (s DeleteIPSetOutput) String() string

String returns the string representation

type DeleteIPSetRequest

type DeleteIPSetRequest struct {
	*aws.Request
	Input *DeleteIPSetInput
	Copy  func(*DeleteIPSetInput) DeleteIPSetRequest
}

DeleteIPSetRequest is the request type for the DeleteIPSet API operation.

func (DeleteIPSetRequest) Send

Send marshals and sends the DeleteIPSet API request.

type DeleteIPSetResponse added in v0.9.0

type DeleteIPSetResponse struct {
	*DeleteIPSetOutput
	// contains filtered or unexported fields
}

DeleteIPSetResponse is the response type for the DeleteIPSet API operation.

func (*DeleteIPSetResponse) SDKResponseMetdata added in v0.9.0

func (r *DeleteIPSetResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the DeleteIPSet request.

type DeleteLoggingConfigurationInput added in v0.5.0

type DeleteLoggingConfigurationInput struct {

	// The Amazon Resource Name (ARN) of the web ACL from which you want to delete
	// the LoggingConfiguration.
	//
	// ResourceArn is a required field
	ResourceArn *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DeleteLoggingConfigurationInput) String added in v0.5.0

String returns the string representation

func (*DeleteLoggingConfigurationInput) Validate added in v0.5.0

func (s *DeleteLoggingConfigurationInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DeleteLoggingConfigurationOutput added in v0.5.0

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

func (DeleteLoggingConfigurationOutput) String added in v0.5.0

String returns the string representation

type DeleteLoggingConfigurationRequest added in v0.5.0

type DeleteLoggingConfigurationRequest struct {
	*aws.Request
	Input *DeleteLoggingConfigurationInput
	Copy  func(*DeleteLoggingConfigurationInput) DeleteLoggingConfigurationRequest
}

DeleteLoggingConfigurationRequest is the request type for the DeleteLoggingConfiguration API operation.

func (DeleteLoggingConfigurationRequest) Send added in v0.5.0

Send marshals and sends the DeleteLoggingConfiguration API request.

type DeleteLoggingConfigurationResponse added in v0.9.0

type DeleteLoggingConfigurationResponse struct {
	*DeleteLoggingConfigurationOutput
	// contains filtered or unexported fields
}

DeleteLoggingConfigurationResponse is the response type for the DeleteLoggingConfiguration API operation.

func (*DeleteLoggingConfigurationResponse) SDKResponseMetdata added in v0.9.0

func (r *DeleteLoggingConfigurationResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the DeleteLoggingConfiguration request.

type DeletePermissionPolicyInput added in v0.3.0

type DeletePermissionPolicyInput struct {

	// The Amazon Resource Name (ARN) of the RuleGroup from which you want to delete
	// the policy.
	//
	// The user making the request must be the owner of the RuleGroup.
	//
	// ResourceArn is a required field
	ResourceArn *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DeletePermissionPolicyInput) String added in v0.3.0

String returns the string representation

func (*DeletePermissionPolicyInput) Validate added in v0.3.0

func (s *DeletePermissionPolicyInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DeletePermissionPolicyOutput added in v0.3.0

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

func (DeletePermissionPolicyOutput) String added in v0.3.0

String returns the string representation

type DeletePermissionPolicyRequest added in v0.3.0

type DeletePermissionPolicyRequest struct {
	*aws.Request
	Input *DeletePermissionPolicyInput
	Copy  func(*DeletePermissionPolicyInput) DeletePermissionPolicyRequest
}

DeletePermissionPolicyRequest is the request type for the DeletePermissionPolicy API operation.

func (DeletePermissionPolicyRequest) Send added in v0.3.0

Send marshals and sends the DeletePermissionPolicy API request.

type DeletePermissionPolicyResponse added in v0.9.0

type DeletePermissionPolicyResponse struct {
	*DeletePermissionPolicyOutput
	// contains filtered or unexported fields
}

DeletePermissionPolicyResponse is the response type for the DeletePermissionPolicy API operation.

func (*DeletePermissionPolicyResponse) SDKResponseMetdata added in v0.9.0

func (r *DeletePermissionPolicyResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the DeletePermissionPolicy request.

type DeleteRateBasedRuleInput

type DeleteRateBasedRuleInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// ChangeToken is a required field
	ChangeToken *string `min:"1" type:"string" required:"true"`

	// The RuleId of the RateBasedRule that you want to delete. RuleId is returned
	// by CreateRateBasedRule and by ListRateBasedRules.
	//
	// RuleId is a required field
	RuleId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DeleteRateBasedRuleInput) String

func (s DeleteRateBasedRuleInput) String() string

String returns the string representation

func (*DeleteRateBasedRuleInput) Validate

func (s *DeleteRateBasedRuleInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

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 `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (DeleteRateBasedRuleOutput) String

func (s DeleteRateBasedRuleOutput) String() string

String returns the string representation

type DeleteRateBasedRuleRequest

type DeleteRateBasedRuleRequest struct {
	*aws.Request
	Input *DeleteRateBasedRuleInput
	Copy  func(*DeleteRateBasedRuleInput) DeleteRateBasedRuleRequest
}

DeleteRateBasedRuleRequest is the request type for the DeleteRateBasedRule API operation.

func (DeleteRateBasedRuleRequest) Send

Send marshals and sends the DeleteRateBasedRule API request.

type DeleteRateBasedRuleResponse added in v0.9.0

type DeleteRateBasedRuleResponse struct {
	*DeleteRateBasedRuleOutput
	// contains filtered or unexported fields
}

DeleteRateBasedRuleResponse is the response type for the DeleteRateBasedRule API operation.

func (*DeleteRateBasedRuleResponse) SDKResponseMetdata added in v0.9.0

func (r *DeleteRateBasedRuleResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the DeleteRateBasedRule request.

type DeleteRegexMatchSetInput added in v0.2.0

type DeleteRegexMatchSetInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// ChangeToken is a required field
	ChangeToken *string `min:"1" type:"string" required:"true"`

	// The RegexMatchSetId of the RegexMatchSet that you want to delete. RegexMatchSetId
	// is returned by CreateRegexMatchSet and by ListRegexMatchSets.
	//
	// RegexMatchSetId is a required field
	RegexMatchSetId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DeleteRegexMatchSetInput) String added in v0.2.0

func (s DeleteRegexMatchSetInput) String() string

String returns the string representation

func (*DeleteRegexMatchSetInput) Validate added in v0.2.0

func (s *DeleteRegexMatchSetInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DeleteRegexMatchSetOutput added in v0.2.0

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 `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (DeleteRegexMatchSetOutput) String added in v0.2.0

func (s DeleteRegexMatchSetOutput) String() string

String returns the string representation

type DeleteRegexMatchSetRequest added in v0.2.0

type DeleteRegexMatchSetRequest struct {
	*aws.Request
	Input *DeleteRegexMatchSetInput
	Copy  func(*DeleteRegexMatchSetInput) DeleteRegexMatchSetRequest
}

DeleteRegexMatchSetRequest is the request type for the DeleteRegexMatchSet API operation.

func (DeleteRegexMatchSetRequest) Send added in v0.2.0

Send marshals and sends the DeleteRegexMatchSet API request.

type DeleteRegexMatchSetResponse added in v0.9.0

type DeleteRegexMatchSetResponse struct {
	*DeleteRegexMatchSetOutput
	// contains filtered or unexported fields
}

DeleteRegexMatchSetResponse is the response type for the DeleteRegexMatchSet API operation.

func (*DeleteRegexMatchSetResponse) SDKResponseMetdata added in v0.9.0

func (r *DeleteRegexMatchSetResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the DeleteRegexMatchSet request.

type DeleteRegexPatternSetInput added in v0.2.0

type DeleteRegexPatternSetInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// ChangeToken is a required field
	ChangeToken *string `min:"1" type:"string" required:"true"`

	// The RegexPatternSetId of the RegexPatternSet that you want to delete. RegexPatternSetId
	// is returned by CreateRegexPatternSet and by ListRegexPatternSets.
	//
	// RegexPatternSetId is a required field
	RegexPatternSetId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DeleteRegexPatternSetInput) String added in v0.2.0

String returns the string representation

func (*DeleteRegexPatternSetInput) Validate added in v0.2.0

func (s *DeleteRegexPatternSetInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DeleteRegexPatternSetOutput added in v0.2.0

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 `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (DeleteRegexPatternSetOutput) String added in v0.2.0

String returns the string representation

type DeleteRegexPatternSetRequest added in v0.2.0

type DeleteRegexPatternSetRequest struct {
	*aws.Request
	Input *DeleteRegexPatternSetInput
	Copy  func(*DeleteRegexPatternSetInput) DeleteRegexPatternSetRequest
}

DeleteRegexPatternSetRequest is the request type for the DeleteRegexPatternSet API operation.

func (DeleteRegexPatternSetRequest) Send added in v0.2.0

Send marshals and sends the DeleteRegexPatternSet API request.

type DeleteRegexPatternSetResponse added in v0.9.0

type DeleteRegexPatternSetResponse struct {
	*DeleteRegexPatternSetOutput
	// contains filtered or unexported fields
}

DeleteRegexPatternSetResponse is the response type for the DeleteRegexPatternSet API operation.

func (*DeleteRegexPatternSetResponse) SDKResponseMetdata added in v0.9.0

func (r *DeleteRegexPatternSetResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the DeleteRegexPatternSet request.

type DeleteRuleGroupInput added in v0.2.0

type DeleteRuleGroupInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// ChangeToken is a required field
	ChangeToken *string `min:"1" type:"string" required:"true"`

	// The RuleGroupId of the RuleGroup that you want to delete. RuleGroupId is
	// returned by CreateRuleGroup and by ListRuleGroups.
	//
	// RuleGroupId is a required field
	RuleGroupId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DeleteRuleGroupInput) String added in v0.2.0

func (s DeleteRuleGroupInput) String() string

String returns the string representation

func (*DeleteRuleGroupInput) Validate added in v0.2.0

func (s *DeleteRuleGroupInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type DeleteRuleGroupOutput added in v0.2.0

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 `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (DeleteRuleGroupOutput) String added in v0.2.0

func (s DeleteRuleGroupOutput) String() string

String returns the string representation

type DeleteRuleGroupRequest added in v0.2.0

type DeleteRuleGroupRequest struct {
	*aws.Request
	Input *DeleteRuleGroupInput
	Copy  func(*DeleteRuleGroupInput) DeleteRuleGroupRequest
}

DeleteRuleGroupRequest is the request type for the DeleteRuleGroup API operation.

func (DeleteRuleGroupRequest) Send added in v0.2.0

Send marshals and sends the DeleteRuleGroup API request.

type DeleteRuleGroupResponse added in v0.9.0

type DeleteRuleGroupResponse struct {
	*DeleteRuleGroupOutput
	// contains filtered or unexported fields
}

DeleteRuleGroupResponse is the response type for the DeleteRuleGroup API operation.

func (*DeleteRuleGroupResponse) SDKResponseMetdata added in v0.9.0

func (r *DeleteRuleGroupResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the DeleteRuleGroup request.

type DeleteRuleInput

type DeleteRuleInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// ChangeToken is a required field
	ChangeToken *string `min:"1" type:"string" required:"true"`

	// The RuleId of the Rule that you want to delete. RuleId is returned by CreateRule
	// and by ListRules.
	//
	// RuleId is a required field
	RuleId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DeleteRuleInput) String

func (s DeleteRuleInput) String() string

String returns the string representation

func (*DeleteRuleInput) Validate

func (s *DeleteRuleInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

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 `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (DeleteRuleOutput) String

func (s DeleteRuleOutput) String() string

String returns the string representation

type DeleteRuleRequest

type DeleteRuleRequest struct {
	*aws.Request
	Input *DeleteRuleInput
	Copy  func(*DeleteRuleInput) DeleteRuleRequest
}

DeleteRuleRequest is the request type for the DeleteRule API operation.

func (DeleteRuleRequest) Send

Send marshals and sends the DeleteRule API request.

type DeleteRuleResponse added in v0.9.0

type DeleteRuleResponse struct {
	*DeleteRuleOutput
	// contains filtered or unexported fields
}

DeleteRuleResponse is the response type for the DeleteRule API operation.

func (*DeleteRuleResponse) SDKResponseMetdata added in v0.9.0

func (r *DeleteRuleResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the DeleteRule request.

type DeleteSizeConstraintSetInput

type DeleteSizeConstraintSetInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// ChangeToken is a required field
	ChangeToken *string `min:"1" type:"string" required:"true"`

	// The SizeConstraintSetId of the SizeConstraintSet that you want to delete.
	// SizeConstraintSetId is returned by CreateSizeConstraintSet and by ListSizeConstraintSets.
	//
	// SizeConstraintSetId is a required field
	SizeConstraintSetId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DeleteSizeConstraintSetInput) String

String returns the string representation

func (*DeleteSizeConstraintSetInput) Validate

func (s *DeleteSizeConstraintSetInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

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 `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (DeleteSizeConstraintSetOutput) String

String returns the string representation

type DeleteSizeConstraintSetRequest

type DeleteSizeConstraintSetRequest struct {
	*aws.Request
	Input *DeleteSizeConstraintSetInput
	Copy  func(*DeleteSizeConstraintSetInput) DeleteSizeConstraintSetRequest
}

DeleteSizeConstraintSetRequest is the request type for the DeleteSizeConstraintSet API operation.

func (DeleteSizeConstraintSetRequest) Send

Send marshals and sends the DeleteSizeConstraintSet API request.

type DeleteSizeConstraintSetResponse added in v0.9.0

type DeleteSizeConstraintSetResponse struct {
	*DeleteSizeConstraintSetOutput
	// contains filtered or unexported fields
}

DeleteSizeConstraintSetResponse is the response type for the DeleteSizeConstraintSet API operation.

func (*DeleteSizeConstraintSetResponse) SDKResponseMetdata added in v0.9.0

func (r *DeleteSizeConstraintSetResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the DeleteSizeConstraintSet request.

type DeleteSqlInjectionMatchSetInput

type DeleteSqlInjectionMatchSetInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// ChangeToken is a required field
	ChangeToken *string `min:"1" type:"string" required:"true"`

	// The SqlInjectionMatchSetId of the SqlInjectionMatchSet that you want to delete.
	// SqlInjectionMatchSetId is returned by CreateSqlInjectionMatchSet and by ListSqlInjectionMatchSets.
	//
	// SqlInjectionMatchSetId is a required field
	SqlInjectionMatchSetId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

A request to delete a SqlInjectionMatchSet from AWS WAF.

func (DeleteSqlInjectionMatchSetInput) String

String returns the string representation

func (*DeleteSqlInjectionMatchSetInput) Validate

func (s *DeleteSqlInjectionMatchSetInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

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 `min:"1" type:"string"`
	// contains filtered or unexported fields
}

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

func (DeleteSqlInjectionMatchSetOutput) String

String returns the string representation

type DeleteSqlInjectionMatchSetRequest

type DeleteSqlInjectionMatchSetRequest struct {
	*aws.Request
	Input *DeleteSqlInjectionMatchSetInput
	Copy  func(*DeleteSqlInjectionMatchSetInput) DeleteSqlInjectionMatchSetRequest
}

DeleteSqlInjectionMatchSetRequest is the request type for the DeleteSqlInjectionMatchSet API operation.

func (DeleteSqlInjectionMatchSetRequest) Send

Send marshals and sends the DeleteSqlInjectionMatchSet API request.

type DeleteSqlInjectionMatchSetResponse added in v0.9.0

type DeleteSqlInjectionMatchSetResponse struct {
	*DeleteSqlInjectionMatchSetOutput
	// contains filtered or unexported fields
}

DeleteSqlInjectionMatchSetResponse is the response type for the DeleteSqlInjectionMatchSet API operation.

func (*DeleteSqlInjectionMatchSetResponse) SDKResponseMetdata added in v0.9.0

func (r *DeleteSqlInjectionMatchSetResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the DeleteSqlInjectionMatchSet request.

type DeleteWebACLInput

type DeleteWebACLInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// ChangeToken is a required field
	ChangeToken *string `min:"1" type:"string" required:"true"`

	// The WebACLId of the WebACL that you want to delete. WebACLId is returned
	// by CreateWebACL and by ListWebACLs.
	//
	// WebACLId is a required field
	WebACLId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DeleteWebACLInput) String

func (s DeleteWebACLInput) String() string

String returns the string representation

func (*DeleteWebACLInput) Validate

func (s *DeleteWebACLInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

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 `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (DeleteWebACLOutput) String

func (s DeleteWebACLOutput) String() string

String returns the string representation

type DeleteWebACLRequest

type DeleteWebACLRequest struct {
	*aws.Request
	Input *DeleteWebACLInput
	Copy  func(*DeleteWebACLInput) DeleteWebACLRequest
}

DeleteWebACLRequest is the request type for the DeleteWebACL API operation.

func (DeleteWebACLRequest) Send

Send marshals and sends the DeleteWebACL API request.

type DeleteWebACLResponse added in v0.9.0

type DeleteWebACLResponse struct {
	*DeleteWebACLOutput
	// contains filtered or unexported fields
}

DeleteWebACLResponse is the response type for the DeleteWebACL API operation.

func (*DeleteWebACLResponse) SDKResponseMetdata added in v0.9.0

func (r *DeleteWebACLResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the DeleteWebACL request.

type DeleteXssMatchSetInput

type DeleteXssMatchSetInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// ChangeToken is a required field
	ChangeToken *string `min:"1" type:"string" required:"true"`

	// The XssMatchSetId of the XssMatchSet that you want to delete. XssMatchSetId
	// is returned by CreateXssMatchSet and by ListXssMatchSets.
	//
	// XssMatchSetId is a required field
	XssMatchSetId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

A request to delete an XssMatchSet from AWS WAF.

func (DeleteXssMatchSetInput) String

func (s DeleteXssMatchSetInput) String() string

String returns the string representation

func (*DeleteXssMatchSetInput) Validate

func (s *DeleteXssMatchSetInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

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 `min:"1" type:"string"`
	// contains filtered or unexported fields
}

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

func (DeleteXssMatchSetOutput) String

func (s DeleteXssMatchSetOutput) String() string

String returns the string representation

type DeleteXssMatchSetRequest

type DeleteXssMatchSetRequest struct {
	*aws.Request
	Input *DeleteXssMatchSetInput
	Copy  func(*DeleteXssMatchSetInput) DeleteXssMatchSetRequest
}

DeleteXssMatchSetRequest is the request type for the DeleteXssMatchSet API operation.

func (DeleteXssMatchSetRequest) Send

Send marshals and sends the DeleteXssMatchSet API request.

type DeleteXssMatchSetResponse added in v0.9.0

type DeleteXssMatchSetResponse struct {
	*DeleteXssMatchSetOutput
	// contains filtered or unexported fields
}

DeleteXssMatchSetResponse is the response type for the DeleteXssMatchSet API operation.

func (*DeleteXssMatchSetResponse) SDKResponseMetdata added in v0.9.0

func (r *DeleteXssMatchSetResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the DeleteXssMatchSet request.

type ExcludedRule added in v0.7.0

type ExcludedRule struct {

	// The unique identifier for the rule to exclude from the rule group.
	//
	// RuleId is a required field
	RuleId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

The rule to exclude from a rule group. This is applicable only when the ActivatedRule refers to a RuleGroup. The rule must belong to the RuleGroup that is specified by the ActivatedRule.

func (ExcludedRule) String added in v0.7.0

func (s ExcludedRule) String() string

String returns the string representation

func (*ExcludedRule) Validate added in v0.7.0

func (s *ExcludedRule) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type FieldToMatch

type FieldToMatch struct {

	// When the value of Type is HEADER, enter the name of the header that you want
	// AWS WAF to search, for example, User-Agent or Referer. The name of the header
	// is not case sensitive.
	//
	// When the value of Type is SINGLE_QUERY_ARG, enter the name of the parameter
	// that you want AWS WAF to search, for example, UserName or SalesRegion. The
	// parameter name is not case sensitive.
	//
	// If the value of Type is any other value, omit Data.
	Data *string `min:"1" type:"string"`

	// The part of the web request that you want AWS WAF to search for a specified
	// string. Parts of a request that you can search include the following:
	//
	//    * HEADER: A specified request header, for example, the value of the User-Agent
	//    or Referer header. If you choose HEADER for the type, specify the name
	//    of the header in Data.
	//
	//    * METHOD: The HTTP method, which indicated the type of operation that
	//    the request is asking the origin to perform. Amazon CloudFront supports
	//    the following methods: DELETE, GET, HEAD, OPTIONS, PATCH, POST, and PUT.
	//
	//    * QUERY_STRING: A query string, which is the part of a URL that appears
	//    after a ? character, if any.
	//
	//    * URI: The part of a web request that identifies a resource, for example,
	//    /images/daily-ad.jpg.
	//
	//    * BODY: The part of a request that contains any additional data that you
	//    want to send to your web server as the HTTP request body, such as data
	//    from a form. The request body immediately follows the request headers.
	//    Note that only the first 8192 bytes of the request body are forwarded
	//    to AWS WAF for inspection. To allow or block requests based on the length
	//    of the body, you can create a size constraint set. For more information,
	//    see CreateSizeConstraintSet.
	//
	//    * SINGLE_QUERY_ARG: The parameter in the query string that you will inspect,
	//    such as UserName or SalesRegion. The maximum length for SINGLE_QUERY_ARG
	//    is 30 characters.
	//
	//    * ALL_QUERY_ARGS: Similar to SINGLE_QUERY_ARG, but rather than inspecting
	//    a single parameter, AWS WAF will inspect all parameters within the query
	//    for the value or regex pattern that you specify in TargetString.
	//
	// Type is a required field
	Type MatchFieldType `type:"string" required:"true" enum:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Specifies where in a web request to look for TargetString.

func (FieldToMatch) String

func (s FieldToMatch) String() string

String returns the string representation

func (*FieldToMatch) Validate

func (s *FieldToMatch) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type GeoMatchConstraint added in v0.2.0

type GeoMatchConstraint struct {

	// The type of geographical area you want AWS WAF to search for. Currently Country
	// is the only valid value.
	//
	// Type is a required field
	Type GeoMatchConstraintType `type:"string" required:"true" enum:"true"`

	// The country that you want AWS WAF to search for.
	//
	// Value is a required field
	Value GeoMatchConstraintValue `type:"string" required:"true" enum:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

The country from which web requests originate that you want AWS WAF to search for.

func (GeoMatchConstraint) String added in v0.2.0

func (s GeoMatchConstraint) String() string

String returns the string representation

func (*GeoMatchConstraint) Validate added in v0.2.0

func (s *GeoMatchConstraint) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type GeoMatchConstraintType added in v0.2.0

type GeoMatchConstraintType string
const (
	GeoMatchConstraintTypeCountry GeoMatchConstraintType = "Country"
)

Enum values for GeoMatchConstraintType

func (GeoMatchConstraintType) MarshalValue added in v0.3.0

func (enum GeoMatchConstraintType) MarshalValue() (string, error)

func (GeoMatchConstraintType) MarshalValueBuf added in v0.3.0

func (enum GeoMatchConstraintType) MarshalValueBuf(b []byte) ([]byte, error)

type GeoMatchConstraintValue added in v0.2.0

type GeoMatchConstraintValue string
const (
	GeoMatchConstraintValueAf GeoMatchConstraintValue = "AF"
	GeoMatchConstraintValueAx GeoMatchConstraintValue = "AX"
	GeoMatchConstraintValueAl GeoMatchConstraintValue = "AL"
	GeoMatchConstraintValueDz GeoMatchConstraintValue = "DZ"
	GeoMatchConstraintValueAs GeoMatchConstraintValue = "AS"
	GeoMatchConstraintValueAd GeoMatchConstraintValue = "AD"
	GeoMatchConstraintValueAo GeoMatchConstraintValue = "AO"
	GeoMatchConstraintValueAi GeoMatchConstraintValue = "AI"
	GeoMatchConstraintValueAq GeoMatchConstraintValue = "AQ"
	GeoMatchConstraintValueAg GeoMatchConstraintValue = "AG"
	GeoMatchConstraintValueAr GeoMatchConstraintValue = "AR"
	GeoMatchConstraintValueAm GeoMatchConstraintValue = "AM"
	GeoMatchConstraintValueAw GeoMatchConstraintValue = "AW"
	GeoMatchConstraintValueAu GeoMatchConstraintValue = "AU"
	GeoMatchConstraintValueAt GeoMatchConstraintValue = "AT"
	GeoMatchConstraintValueAz GeoMatchConstraintValue = "AZ"
	GeoMatchConstraintValueBs GeoMatchConstraintValue = "BS"
	GeoMatchConstraintValueBh GeoMatchConstraintValue = "BH"
	GeoMatchConstraintValueBd GeoMatchConstraintValue = "BD"
	GeoMatchConstraintValueBb GeoMatchConstraintValue = "BB"
	GeoMatchConstraintValueBy GeoMatchConstraintValue = "BY"
	GeoMatchConstraintValueBe GeoMatchConstraintValue = "BE"
	GeoMatchConstraintValueBz GeoMatchConstraintValue = "BZ"
	GeoMatchConstraintValueBj GeoMatchConstraintValue = "BJ"
	GeoMatchConstraintValueBm GeoMatchConstraintValue = "BM"
	GeoMatchConstraintValueBt GeoMatchConstraintValue = "BT"
	GeoMatchConstraintValueBo GeoMatchConstraintValue = "BO"
	GeoMatchConstraintValueBq GeoMatchConstraintValue = "BQ"
	GeoMatchConstraintValueBa GeoMatchConstraintValue = "BA"
	GeoMatchConstraintValueBw GeoMatchConstraintValue = "BW"
	GeoMatchConstraintValueBv GeoMatchConstraintValue = "BV"
	GeoMatchConstraintValueBr GeoMatchConstraintValue = "BR"
	GeoMatchConstraintValueIo GeoMatchConstraintValue = "IO"
	GeoMatchConstraintValueBn GeoMatchConstraintValue = "BN"
	GeoMatchConstraintValueBg GeoMatchConstraintValue = "BG"
	GeoMatchConstraintValueBf GeoMatchConstraintValue = "BF"
	GeoMatchConstraintValueBi GeoMatchConstraintValue = "BI"
	GeoMatchConstraintValueKh GeoMatchConstraintValue = "KH"
	GeoMatchConstraintValueCm GeoMatchConstraintValue = "CM"
	GeoMatchConstraintValueCa GeoMatchConstraintValue = "CA"
	GeoMatchConstraintValueCv GeoMatchConstraintValue = "CV"
	GeoMatchConstraintValueKy GeoMatchConstraintValue = "KY"
	GeoMatchConstraintValueCf GeoMatchConstraintValue = "CF"
	GeoMatchConstraintValueTd GeoMatchConstraintValue = "TD"
	GeoMatchConstraintValueCl GeoMatchConstraintValue = "CL"
	GeoMatchConstraintValueCn GeoMatchConstraintValue = "CN"
	GeoMatchConstraintValueCx GeoMatchConstraintValue = "CX"
	GeoMatchConstraintValueCc GeoMatchConstraintValue = "CC"
	GeoMatchConstraintValueCo GeoMatchConstraintValue = "CO"
	GeoMatchConstraintValueKm GeoMatchConstraintValue = "KM"
	GeoMatchConstraintValueCg GeoMatchConstraintValue = "CG"
	GeoMatchConstraintValueCd GeoMatchConstraintValue = "CD"
	GeoMatchConstraintValueCk GeoMatchConstraintValue = "CK"
	GeoMatchConstraintValueCr GeoMatchConstraintValue = "CR"
	GeoMatchConstraintValueCi GeoMatchConstraintValue = "CI"
	GeoMatchConstraintValueHr GeoMatchConstraintValue = "HR"
	GeoMatchConstraintValueCu GeoMatchConstraintValue = "CU"
	GeoMatchConstraintValueCw GeoMatchConstraintValue = "CW"
	GeoMatchConstraintValueCy GeoMatchConstraintValue = "CY"
	GeoMatchConstraintValueCz GeoMatchConstraintValue = "CZ"
	GeoMatchConstraintValueDk GeoMatchConstraintValue = "DK"
	GeoMatchConstraintValueDj GeoMatchConstraintValue = "DJ"
	GeoMatchConstraintValueDm GeoMatchConstraintValue = "DM"
	GeoMatchConstraintValueDo GeoMatchConstraintValue = "DO"
	GeoMatchConstraintValueEc GeoMatchConstraintValue = "EC"
	GeoMatchConstraintValueEg GeoMatchConstraintValue = "EG"
	GeoMatchConstraintValueSv GeoMatchConstraintValue = "SV"
	GeoMatchConstraintValueGq GeoMatchConstraintValue = "GQ"
	GeoMatchConstraintValueEr GeoMatchConstraintValue = "ER"
	GeoMatchConstraintValueEe GeoMatchConstraintValue = "EE"
	GeoMatchConstraintValueEt GeoMatchConstraintValue = "ET"
	GeoMatchConstraintValueFk GeoMatchConstraintValue = "FK"
	GeoMatchConstraintValueFo GeoMatchConstraintValue = "FO"
	GeoMatchConstraintValueFj GeoMatchConstraintValue = "FJ"
	GeoMatchConstraintValueFi GeoMatchConstraintValue = "FI"
	GeoMatchConstraintValueFr GeoMatchConstraintValue = "FR"
	GeoMatchConstraintValueGf GeoMatchConstraintValue = "GF"
	GeoMatchConstraintValuePf GeoMatchConstraintValue = "PF"
	GeoMatchConstraintValueTf GeoMatchConstraintValue = "TF"
	GeoMatchConstraintValueGa GeoMatchConstraintValue = "GA"
	GeoMatchConstraintValueGm GeoMatchConstraintValue = "GM"
	GeoMatchConstraintValueGe GeoMatchConstraintValue = "GE"
	GeoMatchConstraintValueDe GeoMatchConstraintValue = "DE"
	GeoMatchConstraintValueGh GeoMatchConstraintValue = "GH"
	GeoMatchConstraintValueGi GeoMatchConstraintValue = "GI"
	GeoMatchConstraintValueGr GeoMatchConstraintValue = "GR"
	GeoMatchConstraintValueGl GeoMatchConstraintValue = "GL"
	GeoMatchConstraintValueGd GeoMatchConstraintValue = "GD"
	GeoMatchConstraintValueGp GeoMatchConstraintValue = "GP"
	GeoMatchConstraintValueGu GeoMatchConstraintValue = "GU"
	GeoMatchConstraintValueGt GeoMatchConstraintValue = "GT"
	GeoMatchConstraintValueGg GeoMatchConstraintValue = "GG"
	GeoMatchConstraintValueGn GeoMatchConstraintValue = "GN"
	GeoMatchConstraintValueGw GeoMatchConstraintValue = "GW"
	GeoMatchConstraintValueGy GeoMatchConstraintValue = "GY"
	GeoMatchConstraintValueHt GeoMatchConstraintValue = "HT"
	GeoMatchConstraintValueHm GeoMatchConstraintValue = "HM"
	GeoMatchConstraintValueVa GeoMatchConstraintValue = "VA"
	GeoMatchConstraintValueHn GeoMatchConstraintValue = "HN"
	GeoMatchConstraintValueHk GeoMatchConstraintValue = "HK"
	GeoMatchConstraintValueHu GeoMatchConstraintValue = "HU"
	GeoMatchConstraintValueIs GeoMatchConstraintValue = "IS"
	GeoMatchConstraintValueIn GeoMatchConstraintValue = "IN"
	GeoMatchConstraintValueId GeoMatchConstraintValue = "ID"
	GeoMatchConstraintValueIr GeoMatchConstraintValue = "IR"
	GeoMatchConstraintValueIq GeoMatchConstraintValue = "IQ"
	GeoMatchConstraintValueIe GeoMatchConstraintValue = "IE"
	GeoMatchConstraintValueIm GeoMatchConstraintValue = "IM"
	GeoMatchConstraintValueIl GeoMatchConstraintValue = "IL"
	GeoMatchConstraintValueIt GeoMatchConstraintValue = "IT"
	GeoMatchConstraintValueJm GeoMatchConstraintValue = "JM"
	GeoMatchConstraintValueJp GeoMatchConstraintValue = "JP"
	GeoMatchConstraintValueJe GeoMatchConstraintValue = "JE"
	GeoMatchConstraintValueJo GeoMatchConstraintValue = "JO"
	GeoMatchConstraintValueKz GeoMatchConstraintValue = "KZ"
	GeoMatchConstraintValueKe GeoMatchConstraintValue = "KE"
	GeoMatchConstraintValueKi GeoMatchConstraintValue = "KI"
	GeoMatchConstraintValueKp GeoMatchConstraintValue = "KP"
	GeoMatchConstraintValueKr GeoMatchConstraintValue = "KR"
	GeoMatchConstraintValueKw GeoMatchConstraintValue = "KW"
	GeoMatchConstraintValueKg GeoMatchConstraintValue = "KG"
	GeoMatchConstraintValueLa GeoMatchConstraintValue = "LA"
	GeoMatchConstraintValueLv GeoMatchConstraintValue = "LV"
	GeoMatchConstraintValueLb GeoMatchConstraintValue = "LB"
	GeoMatchConstraintValueLs GeoMatchConstraintValue = "LS"
	GeoMatchConstraintValueLr GeoMatchConstraintValue = "LR"
	GeoMatchConstraintValueLy GeoMatchConstraintValue = "LY"
	GeoMatchConstraintValueLi GeoMatchConstraintValue = "LI"
	GeoMatchConstraintValueLt GeoMatchConstraintValue = "LT"
	GeoMatchConstraintValueLu GeoMatchConstraintValue = "LU"
	GeoMatchConstraintValueMo GeoMatchConstraintValue = "MO"
	GeoMatchConstraintValueMk GeoMatchConstraintValue = "MK"
	GeoMatchConstraintValueMg GeoMatchConstraintValue = "MG"
	GeoMatchConstraintValueMw GeoMatchConstraintValue = "MW"
	GeoMatchConstraintValueMy GeoMatchConstraintValue = "MY"
	GeoMatchConstraintValueMv GeoMatchConstraintValue = "MV"
	GeoMatchConstraintValueMl GeoMatchConstraintValue = "ML"
	GeoMatchConstraintValueMt GeoMatchConstraintValue = "MT"
	GeoMatchConstraintValueMh GeoMatchConstraintValue = "MH"
	GeoMatchConstraintValueMq GeoMatchConstraintValue = "MQ"
	GeoMatchConstraintValueMr GeoMatchConstraintValue = "MR"
	GeoMatchConstraintValueMu GeoMatchConstraintValue = "MU"
	GeoMatchConstraintValueYt GeoMatchConstraintValue = "YT"
	GeoMatchConstraintValueMx GeoMatchConstraintValue = "MX"
	GeoMatchConstraintValueFm GeoMatchConstraintValue = "FM"
	GeoMatchConstraintValueMd GeoMatchConstraintValue = "MD"
	GeoMatchConstraintValueMc GeoMatchConstraintValue = "MC"
	GeoMatchConstraintValueMn GeoMatchConstraintValue = "MN"
	GeoMatchConstraintValueMe GeoMatchConstraintValue = "ME"
	GeoMatchConstraintValueMs GeoMatchConstraintValue = "MS"
	GeoMatchConstraintValueMa GeoMatchConstraintValue = "MA"
	GeoMatchConstraintValueMz GeoMatchConstraintValue = "MZ"
	GeoMatchConstraintValueMm GeoMatchConstraintValue = "MM"
	GeoMatchConstraintValueNa GeoMatchConstraintValue = "NA"
	GeoMatchConstraintValueNr GeoMatchConstraintValue = "NR"
	GeoMatchConstraintValueNp GeoMatchConstraintValue = "NP"
	GeoMatchConstraintValueNl GeoMatchConstraintValue = "NL"
	GeoMatchConstraintValueNc GeoMatchConstraintValue = "NC"
	GeoMatchConstraintValueNz GeoMatchConstraintValue = "NZ"
	GeoMatchConstraintValueNi GeoMatchConstraintValue = "NI"
	GeoMatchConstraintValueNe GeoMatchConstraintValue = "NE"
	GeoMatchConstraintValueNg GeoMatchConstraintValue = "NG"
	GeoMatchConstraintValueNu GeoMatchConstraintValue = "NU"
	GeoMatchConstraintValueNf GeoMatchConstraintValue = "NF"
	GeoMatchConstraintValueMp GeoMatchConstraintValue = "MP"
	GeoMatchConstraintValueNo GeoMatchConstraintValue = "NO"
	GeoMatchConstraintValueOm GeoMatchConstraintValue = "OM"
	GeoMatchConstraintValuePk GeoMatchConstraintValue = "PK"
	GeoMatchConstraintValuePw GeoMatchConstraintValue = "PW"
	GeoMatchConstraintValuePs GeoMatchConstraintValue = "PS"
	GeoMatchConstraintValuePa GeoMatchConstraintValue = "PA"
	GeoMatchConstraintValuePg GeoMatchConstraintValue = "PG"
	GeoMatchConstraintValuePy GeoMatchConstraintValue = "PY"
	GeoMatchConstraintValuePe GeoMatchConstraintValue = "PE"
	GeoMatchConstraintValuePh GeoMatchConstraintValue = "PH"
	GeoMatchConstraintValuePn GeoMatchConstraintValue = "PN"
	GeoMatchConstraintValuePl GeoMatchConstraintValue = "PL"
	GeoMatchConstraintValuePt GeoMatchConstraintValue = "PT"
	GeoMatchConstraintValuePr GeoMatchConstraintValue = "PR"
	GeoMatchConstraintValueQa GeoMatchConstraintValue = "QA"
	GeoMatchConstraintValueRe GeoMatchConstraintValue = "RE"
	GeoMatchConstraintValueRo GeoMatchConstraintValue = "RO"
	GeoMatchConstraintValueRu GeoMatchConstraintValue = "RU"
	GeoMatchConstraintValueRw GeoMatchConstraintValue = "RW"
	GeoMatchConstraintValueBl GeoMatchConstraintValue = "BL"
	GeoMatchConstraintValueSh GeoMatchConstraintValue = "SH"
	GeoMatchConstraintValueKn GeoMatchConstraintValue = "KN"
	GeoMatchConstraintValueLc GeoMatchConstraintValue = "LC"
	GeoMatchConstraintValueMf GeoMatchConstraintValue = "MF"
	GeoMatchConstraintValuePm GeoMatchConstraintValue = "PM"
	GeoMatchConstraintValueVc GeoMatchConstraintValue = "VC"
	GeoMatchConstraintValueWs GeoMatchConstraintValue = "WS"
	GeoMatchConstraintValueSm GeoMatchConstraintValue = "SM"
	GeoMatchConstraintValueSt GeoMatchConstraintValue = "ST"
	GeoMatchConstraintValueSa GeoMatchConstraintValue = "SA"
	GeoMatchConstraintValueSn GeoMatchConstraintValue = "SN"
	GeoMatchConstraintValueRs GeoMatchConstraintValue = "RS"
	GeoMatchConstraintValueSc GeoMatchConstraintValue = "SC"
	GeoMatchConstraintValueSl GeoMatchConstraintValue = "SL"
	GeoMatchConstraintValueSg GeoMatchConstraintValue = "SG"
	GeoMatchConstraintValueSx GeoMatchConstraintValue = "SX"
	GeoMatchConstraintValueSk GeoMatchConstraintValue = "SK"
	GeoMatchConstraintValueSi GeoMatchConstraintValue = "SI"
	GeoMatchConstraintValueSb GeoMatchConstraintValue = "SB"
	GeoMatchConstraintValueSo GeoMatchConstraintValue = "SO"
	GeoMatchConstraintValueZa GeoMatchConstraintValue = "ZA"
	GeoMatchConstraintValueGs GeoMatchConstraintValue = "GS"
	GeoMatchConstraintValueSs GeoMatchConstraintValue = "SS"
	GeoMatchConstraintValueEs GeoMatchConstraintValue = "ES"
	GeoMatchConstraintValueLk GeoMatchConstraintValue = "LK"
	GeoMatchConstraintValueSd GeoMatchConstraintValue = "SD"
	GeoMatchConstraintValueSr GeoMatchConstraintValue = "SR"
	GeoMatchConstraintValueSj GeoMatchConstraintValue = "SJ"
	GeoMatchConstraintValueSz GeoMatchConstraintValue = "SZ"
	GeoMatchConstraintValueSe GeoMatchConstraintValue = "SE"
	GeoMatchConstraintValueCh GeoMatchConstraintValue = "CH"
	GeoMatchConstraintValueSy GeoMatchConstraintValue = "SY"
	GeoMatchConstraintValueTw GeoMatchConstraintValue = "TW"
	GeoMatchConstraintValueTj GeoMatchConstraintValue = "TJ"
	GeoMatchConstraintValueTz GeoMatchConstraintValue = "TZ"
	GeoMatchConstraintValueTh GeoMatchConstraintValue = "TH"
	GeoMatchConstraintValueTl GeoMatchConstraintValue = "TL"
	GeoMatchConstraintValueTg GeoMatchConstraintValue = "TG"
	GeoMatchConstraintValueTk GeoMatchConstraintValue = "TK"
	GeoMatchConstraintValueTo GeoMatchConstraintValue = "TO"
	GeoMatchConstraintValueTt GeoMatchConstraintValue = "TT"
	GeoMatchConstraintValueTn GeoMatchConstraintValue = "TN"
	GeoMatchConstraintValueTr GeoMatchConstraintValue = "TR"
	GeoMatchConstraintValueTm GeoMatchConstraintValue = "TM"
	GeoMatchConstraintValueTc GeoMatchConstraintValue = "TC"
	GeoMatchConstraintValueTv GeoMatchConstraintValue = "TV"
	GeoMatchConstraintValueUg GeoMatchConstraintValue = "UG"
	GeoMatchConstraintValueUa GeoMatchConstraintValue = "UA"
	GeoMatchConstraintValueAe GeoMatchConstraintValue = "AE"
	GeoMatchConstraintValueGb GeoMatchConstraintValue = "GB"
	GeoMatchConstraintValueUs GeoMatchConstraintValue = "US"
	GeoMatchConstraintValueUm GeoMatchConstraintValue = "UM"
	GeoMatchConstraintValueUy GeoMatchConstraintValue = "UY"
	GeoMatchConstraintValueUz GeoMatchConstraintValue = "UZ"
	GeoMatchConstraintValueVu GeoMatchConstraintValue = "VU"
	GeoMatchConstraintValueVe GeoMatchConstraintValue = "VE"
	GeoMatchConstraintValueVn GeoMatchConstraintValue = "VN"
	GeoMatchConstraintValueVg GeoMatchConstraintValue = "VG"
	GeoMatchConstraintValueVi GeoMatchConstraintValue = "VI"
	GeoMatchConstraintValueWf GeoMatchConstraintValue = "WF"
	GeoMatchConstraintValueEh GeoMatchConstraintValue = "EH"
	GeoMatchConstraintValueYe GeoMatchConstraintValue = "YE"
	GeoMatchConstraintValueZm GeoMatchConstraintValue = "ZM"
	GeoMatchConstraintValueZw GeoMatchConstraintValue = "ZW"
)

Enum values for GeoMatchConstraintValue

func (GeoMatchConstraintValue) MarshalValue added in v0.3.0

func (enum GeoMatchConstraintValue) MarshalValue() (string, error)

func (GeoMatchConstraintValue) MarshalValueBuf added in v0.3.0

func (enum GeoMatchConstraintValue) MarshalValueBuf(b []byte) ([]byte, error)

type GeoMatchSet added in v0.2.0

type GeoMatchSet struct {

	// An array of GeoMatchConstraint objects, which contain the country that you
	// want AWS WAF to search for.
	//
	// GeoMatchConstraints is a required field
	GeoMatchConstraints []GeoMatchConstraint `type:"list" required:"true"`

	// The GeoMatchSetId for an GeoMatchSet. You use GeoMatchSetId to get information
	// about a GeoMatchSet (see GeoMatchSet), update a GeoMatchSet (see UpdateGeoMatchSet),
	// insert a GeoMatchSet into a Rule or delete one from a Rule (see UpdateRule),
	// and delete a GeoMatchSet from AWS WAF (see DeleteGeoMatchSet).
	//
	// GeoMatchSetId is returned by CreateGeoMatchSet and by ListGeoMatchSets.
	//
	// GeoMatchSetId is a required field
	GeoMatchSetId *string `min:"1" type:"string" required:"true"`

	// A friendly name or description of the GeoMatchSet. You can't change the name
	// of an GeoMatchSet after you create it.
	Name *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Contains one or more countries that AWS WAF will search for.

func (GeoMatchSet) String added in v0.2.0

func (s GeoMatchSet) String() string

String returns the string representation

type GeoMatchSetSummary added in v0.2.0

type GeoMatchSetSummary struct {

	// The GeoMatchSetId for an GeoMatchSet. You can use GeoMatchSetId in a GetGeoMatchSet
	// request to get detailed information about an GeoMatchSet.
	//
	// GeoMatchSetId is a required field
	GeoMatchSetId *string `min:"1" type:"string" required:"true"`

	// A friendly name or description of the GeoMatchSet. You can't change the name
	// of an GeoMatchSet after you create it.
	//
	// Name is a required field
	Name *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Contains the identifier and the name of the GeoMatchSet.

func (GeoMatchSetSummary) String added in v0.2.0

func (s GeoMatchSetSummary) String() string

String returns the string representation

type GeoMatchSetUpdate added in v0.2.0

type GeoMatchSetUpdate struct {

	// Specifies whether to insert or delete a country with UpdateGeoMatchSet.
	//
	// Action is a required field
	Action ChangeAction `type:"string" required:"true" enum:"true"`

	// The country from which web requests originate that you want AWS WAF to search
	// for.
	//
	// GeoMatchConstraint is a required field
	GeoMatchConstraint *GeoMatchConstraint `type:"structure" required:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Specifies the type of update to perform to an GeoMatchSet with UpdateGeoMatchSet.

func (GeoMatchSetUpdate) String added in v0.2.0

func (s GeoMatchSetUpdate) String() string

String returns the string representation

func (*GeoMatchSetUpdate) Validate added in v0.2.0

func (s *GeoMatchSetUpdate) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type GetByteMatchSetInput

type GetByteMatchSetInput struct {

	// The ByteMatchSetId of the ByteMatchSet that you want to get. ByteMatchSetId
	// is returned by CreateByteMatchSet and by ListByteMatchSets.
	//
	// ByteMatchSetId is a required field
	ByteMatchSetId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetByteMatchSetInput) String

func (s GetByteMatchSetInput) String() string

String returns the string representation

func (*GetByteMatchSetInput) Validate

func (s *GetByteMatchSetInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type GetByteMatchSetOutput

type GetByteMatchSetOutput struct {

	// Information about the ByteMatchSet that you specified in the GetByteMatchSet
	// request. For more information, see the following topics:
	//
	//    * ByteMatchSet: Contains ByteMatchSetId, ByteMatchTuples, and Name
	//
	//    * ByteMatchTuples: Contains an array of ByteMatchTuple objects. Each ByteMatchTuple
	//    object contains FieldToMatch, PositionalConstraint, TargetString, and
	//    TextTransformation
	//
	//    * FieldToMatch: Contains Data and Type
	ByteMatchSet *ByteMatchSet `type:"structure"`
	// contains filtered or unexported fields
}

func (GetByteMatchSetOutput) String

func (s GetByteMatchSetOutput) String() string

String returns the string representation

type GetByteMatchSetRequest

type GetByteMatchSetRequest struct {
	*aws.Request
	Input *GetByteMatchSetInput
	Copy  func(*GetByteMatchSetInput) GetByteMatchSetRequest
}

GetByteMatchSetRequest is the request type for the GetByteMatchSet API operation.

func (GetByteMatchSetRequest) Send

Send marshals and sends the GetByteMatchSet API request.

type GetByteMatchSetResponse added in v0.9.0

type GetByteMatchSetResponse struct {
	*GetByteMatchSetOutput
	// contains filtered or unexported fields
}

GetByteMatchSetResponse is the response type for the GetByteMatchSet API operation.

func (*GetByteMatchSetResponse) SDKResponseMetdata added in v0.9.0

func (r *GetByteMatchSetResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the GetByteMatchSet request.

type GetChangeTokenInput

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

func (GetChangeTokenInput) String

func (s GetChangeTokenInput) String() string

String returns the string representation

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 `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (GetChangeTokenOutput) String

func (s GetChangeTokenOutput) String() string

String returns the string representation

type GetChangeTokenRequest

type GetChangeTokenRequest struct {
	*aws.Request
	Input *GetChangeTokenInput
	Copy  func(*GetChangeTokenInput) GetChangeTokenRequest
}

GetChangeTokenRequest is the request type for the GetChangeToken API operation.

func (GetChangeTokenRequest) Send

Send marshals and sends the GetChangeToken API request.

type GetChangeTokenResponse added in v0.9.0

type GetChangeTokenResponse struct {
	*GetChangeTokenOutput
	// contains filtered or unexported fields
}

GetChangeTokenResponse is the response type for the GetChangeToken API operation.

func (*GetChangeTokenResponse) SDKResponseMetdata added in v0.9.0

func (r *GetChangeTokenResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the GetChangeToken request.

type GetChangeTokenStatusInput

type GetChangeTokenStatusInput struct {

	// The change token for which you want to get the status. This change token
	// was previously returned in the GetChangeToken response.
	//
	// ChangeToken is a required field
	ChangeToken *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetChangeTokenStatusInput) String

func (s GetChangeTokenStatusInput) String() string

String returns the string representation

func (*GetChangeTokenStatusInput) Validate

func (s *GetChangeTokenStatusInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type GetChangeTokenStatusOutput

type GetChangeTokenStatusOutput struct {

	// The status of the change token.
	ChangeTokenStatus ChangeTokenStatus `type:"string" enum:"true"`
	// contains filtered or unexported fields
}

func (GetChangeTokenStatusOutput) String

String returns the string representation

type GetChangeTokenStatusRequest

type GetChangeTokenStatusRequest struct {
	*aws.Request
	Input *GetChangeTokenStatusInput
	Copy  func(*GetChangeTokenStatusInput) GetChangeTokenStatusRequest
}

GetChangeTokenStatusRequest is the request type for the GetChangeTokenStatus API operation.

func (GetChangeTokenStatusRequest) Send

Send marshals and sends the GetChangeTokenStatus API request.

type GetChangeTokenStatusResponse added in v0.9.0

type GetChangeTokenStatusResponse struct {
	*GetChangeTokenStatusOutput
	// contains filtered or unexported fields
}

GetChangeTokenStatusResponse is the response type for the GetChangeTokenStatus API operation.

func (*GetChangeTokenStatusResponse) SDKResponseMetdata added in v0.9.0

func (r *GetChangeTokenStatusResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the GetChangeTokenStatus request.

type GetGeoMatchSetInput added in v0.2.0

type GetGeoMatchSetInput struct {

	// The GeoMatchSetId of the GeoMatchSet that you want to get. GeoMatchSetId
	// is returned by CreateGeoMatchSet and by ListGeoMatchSets.
	//
	// GeoMatchSetId is a required field
	GeoMatchSetId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetGeoMatchSetInput) String added in v0.2.0

func (s GetGeoMatchSetInput) String() string

String returns the string representation

func (*GetGeoMatchSetInput) Validate added in v0.2.0

func (s *GetGeoMatchSetInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type GetGeoMatchSetOutput added in v0.2.0

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 *GeoMatchSet `type:"structure"`
	// contains filtered or unexported fields
}

func (GetGeoMatchSetOutput) String added in v0.2.0

func (s GetGeoMatchSetOutput) String() string

String returns the string representation

type GetGeoMatchSetRequest added in v0.2.0

type GetGeoMatchSetRequest struct {
	*aws.Request
	Input *GetGeoMatchSetInput
	Copy  func(*GetGeoMatchSetInput) GetGeoMatchSetRequest
}

GetGeoMatchSetRequest is the request type for the GetGeoMatchSet API operation.

func (GetGeoMatchSetRequest) Send added in v0.2.0

Send marshals and sends the GetGeoMatchSet API request.

type GetGeoMatchSetResponse added in v0.9.0

type GetGeoMatchSetResponse struct {
	*GetGeoMatchSetOutput
	// contains filtered or unexported fields
}

GetGeoMatchSetResponse is the response type for the GetGeoMatchSet API operation.

func (*GetGeoMatchSetResponse) SDKResponseMetdata added in v0.9.0

func (r *GetGeoMatchSetResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the GetGeoMatchSet request.

type GetIPSetInput

type GetIPSetInput struct {

	// The IPSetId of the IPSet that you want to get. IPSetId is returned by CreateIPSet
	// and by ListIPSets.
	//
	// IPSetId is a required field
	IPSetId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetIPSetInput) String

func (s GetIPSetInput) String() string

String returns the string representation

func (*GetIPSetInput) Validate

func (s *GetIPSetInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type GetIPSetOutput

type GetIPSetOutput struct {

	// Information about the IPSet that you specified in the GetIPSet request. For
	// more information, see the following topics:
	//
	//    * IPSet: Contains IPSetDescriptors, IPSetId, and Name
	//
	//    * IPSetDescriptors: Contains an array of IPSetDescriptor objects. Each
	//    IPSetDescriptor object contains Type and Value
	IPSet *IPSet `type:"structure"`
	// contains filtered or unexported fields
}

func (GetIPSetOutput) String

func (s GetIPSetOutput) String() string

String returns the string representation

type GetIPSetRequest

type GetIPSetRequest struct {
	*aws.Request
	Input *GetIPSetInput
	Copy  func(*GetIPSetInput) GetIPSetRequest
}

GetIPSetRequest is the request type for the GetIPSet API operation.

func (GetIPSetRequest) Send

Send marshals and sends the GetIPSet API request.

type GetIPSetResponse added in v0.9.0

type GetIPSetResponse struct {
	*GetIPSetOutput
	// contains filtered or unexported fields
}

GetIPSetResponse is the response type for the GetIPSet API operation.

func (*GetIPSetResponse) SDKResponseMetdata added in v0.9.0

func (r *GetIPSetResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the GetIPSet request.

type GetLoggingConfigurationInput added in v0.5.0

type GetLoggingConfigurationInput struct {

	// The Amazon Resource Name (ARN) of the web ACL for which you want to get the
	// LoggingConfiguration.
	//
	// ResourceArn is a required field
	ResourceArn *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetLoggingConfigurationInput) String added in v0.5.0

String returns the string representation

func (*GetLoggingConfigurationInput) Validate added in v0.5.0

func (s *GetLoggingConfigurationInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type GetLoggingConfigurationOutput added in v0.5.0

type GetLoggingConfigurationOutput struct {

	// The LoggingConfiguration for the specified web ACL.
	LoggingConfiguration *LoggingConfiguration `type:"structure"`
	// contains filtered or unexported fields
}

func (GetLoggingConfigurationOutput) String added in v0.5.0

String returns the string representation

type GetLoggingConfigurationRequest added in v0.5.0

type GetLoggingConfigurationRequest struct {
	*aws.Request
	Input *GetLoggingConfigurationInput
	Copy  func(*GetLoggingConfigurationInput) GetLoggingConfigurationRequest
}

GetLoggingConfigurationRequest is the request type for the GetLoggingConfiguration API operation.

func (GetLoggingConfigurationRequest) Send added in v0.5.0

Send marshals and sends the GetLoggingConfiguration API request.

type GetLoggingConfigurationResponse added in v0.9.0

type GetLoggingConfigurationResponse struct {
	*GetLoggingConfigurationOutput
	// contains filtered or unexported fields
}

GetLoggingConfigurationResponse is the response type for the GetLoggingConfiguration API operation.

func (*GetLoggingConfigurationResponse) SDKResponseMetdata added in v0.9.0

func (r *GetLoggingConfigurationResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the GetLoggingConfiguration request.

type GetPermissionPolicyInput added in v0.3.0

type GetPermissionPolicyInput struct {

	// The Amazon Resource Name (ARN) of the RuleGroup for which you want to get
	// the policy.
	//
	// ResourceArn is a required field
	ResourceArn *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetPermissionPolicyInput) String added in v0.3.0

func (s GetPermissionPolicyInput) String() string

String returns the string representation

func (*GetPermissionPolicyInput) Validate added in v0.3.0

func (s *GetPermissionPolicyInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type GetPermissionPolicyOutput added in v0.3.0

type GetPermissionPolicyOutput struct {

	// The IAM policy attached to the specified RuleGroup.
	Policy *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (GetPermissionPolicyOutput) String added in v0.3.0

func (s GetPermissionPolicyOutput) String() string

String returns the string representation

type GetPermissionPolicyRequest added in v0.3.0

type GetPermissionPolicyRequest struct {
	*aws.Request
	Input *GetPermissionPolicyInput
	Copy  func(*GetPermissionPolicyInput) GetPermissionPolicyRequest
}

GetPermissionPolicyRequest is the request type for the GetPermissionPolicy API operation.

func (GetPermissionPolicyRequest) Send added in v0.3.0

Send marshals and sends the GetPermissionPolicy API request.

type GetPermissionPolicyResponse added in v0.9.0

type GetPermissionPolicyResponse struct {
	*GetPermissionPolicyOutput
	// contains filtered or unexported fields
}

GetPermissionPolicyResponse is the response type for the GetPermissionPolicy API operation.

func (*GetPermissionPolicyResponse) SDKResponseMetdata added in v0.9.0

func (r *GetPermissionPolicyResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the GetPermissionPolicy request.

type GetRateBasedRuleInput

type GetRateBasedRuleInput struct {

	// The RuleId of the RateBasedRule that you want to get. RuleId is returned
	// by CreateRateBasedRule and by ListRateBasedRules.
	//
	// RuleId is a required field
	RuleId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetRateBasedRuleInput) String

func (s GetRateBasedRuleInput) String() string

String returns the string representation

func (*GetRateBasedRuleInput) Validate

func (s *GetRateBasedRuleInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type GetRateBasedRuleManagedKeysInput

type GetRateBasedRuleManagedKeysInput struct {

	// A null value and not currently used. Do not include this in your request.
	NextMarker *string `min:"1" type:"string"`

	// The RuleId of the RateBasedRule for which you want to get a list of ManagedKeys.
	// RuleId is returned by CreateRateBasedRule and by ListRateBasedRules.
	//
	// RuleId is a required field
	RuleId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetRateBasedRuleManagedKeysInput) String

String returns the string representation

func (*GetRateBasedRuleManagedKeysInput) Validate

Validate inspects the fields of the type to determine if they are valid.

type GetRateBasedRuleManagedKeysOutput

type GetRateBasedRuleManagedKeysOutput struct {

	// An array of IP addresses that currently are blocked by the specified RateBasedRule.
	ManagedKeys []string `type:"list"`

	// A null value and not currently used.
	NextMarker *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (GetRateBasedRuleManagedKeysOutput) String

String returns the string representation

type GetRateBasedRuleManagedKeysRequest

type GetRateBasedRuleManagedKeysRequest struct {
	*aws.Request
	Input *GetRateBasedRuleManagedKeysInput
	Copy  func(*GetRateBasedRuleManagedKeysInput) GetRateBasedRuleManagedKeysRequest
}

GetRateBasedRuleManagedKeysRequest is the request type for the GetRateBasedRuleManagedKeys API operation.

func (GetRateBasedRuleManagedKeysRequest) Send

Send marshals and sends the GetRateBasedRuleManagedKeys API request.

type GetRateBasedRuleManagedKeysResponse added in v0.9.0

type GetRateBasedRuleManagedKeysResponse struct {
	*GetRateBasedRuleManagedKeysOutput
	// contains filtered or unexported fields
}

GetRateBasedRuleManagedKeysResponse is the response type for the GetRateBasedRuleManagedKeys API operation.

func (*GetRateBasedRuleManagedKeysResponse) SDKResponseMetdata added in v0.9.0

func (r *GetRateBasedRuleManagedKeysResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the GetRateBasedRuleManagedKeys request.

type GetRateBasedRuleOutput

type GetRateBasedRuleOutput struct {

	// Information about the RateBasedRule that you specified in the GetRateBasedRule
	// request.
	Rule *RateBasedRule `type:"structure"`
	// contains filtered or unexported fields
}

func (GetRateBasedRuleOutput) String

func (s GetRateBasedRuleOutput) String() string

String returns the string representation

type GetRateBasedRuleRequest

type GetRateBasedRuleRequest struct {
	*aws.Request
	Input *GetRateBasedRuleInput
	Copy  func(*GetRateBasedRuleInput) GetRateBasedRuleRequest
}

GetRateBasedRuleRequest is the request type for the GetRateBasedRule API operation.

func (GetRateBasedRuleRequest) Send

Send marshals and sends the GetRateBasedRule API request.

type GetRateBasedRuleResponse added in v0.9.0

type GetRateBasedRuleResponse struct {
	*GetRateBasedRuleOutput
	// contains filtered or unexported fields
}

GetRateBasedRuleResponse is the response type for the GetRateBasedRule API operation.

func (*GetRateBasedRuleResponse) SDKResponseMetdata added in v0.9.0

func (r *GetRateBasedRuleResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the GetRateBasedRule request.

type GetRegexMatchSetInput added in v0.2.0

type GetRegexMatchSetInput struct {

	// The RegexMatchSetId of the RegexMatchSet that you want to get. RegexMatchSetId
	// is returned by CreateRegexMatchSet and by ListRegexMatchSets.
	//
	// RegexMatchSetId is a required field
	RegexMatchSetId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetRegexMatchSetInput) String added in v0.2.0

func (s GetRegexMatchSetInput) String() string

String returns the string representation

func (*GetRegexMatchSetInput) Validate added in v0.2.0

func (s *GetRegexMatchSetInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type GetRegexMatchSetOutput added in v0.2.0

type GetRegexMatchSetOutput struct {

	// Information about the RegexMatchSet that you specified in the GetRegexMatchSet
	// request. For more information, see RegexMatchTuple.
	RegexMatchSet *RegexMatchSet `type:"structure"`
	// contains filtered or unexported fields
}

func (GetRegexMatchSetOutput) String added in v0.2.0

func (s GetRegexMatchSetOutput) String() string

String returns the string representation

type GetRegexMatchSetRequest added in v0.2.0

type GetRegexMatchSetRequest struct {
	*aws.Request
	Input *GetRegexMatchSetInput
	Copy  func(*GetRegexMatchSetInput) GetRegexMatchSetRequest
}

GetRegexMatchSetRequest is the request type for the GetRegexMatchSet API operation.

func (GetRegexMatchSetRequest) Send added in v0.2.0

Send marshals and sends the GetRegexMatchSet API request.

type GetRegexMatchSetResponse added in v0.9.0

type GetRegexMatchSetResponse struct {
	*GetRegexMatchSetOutput
	// contains filtered or unexported fields
}

GetRegexMatchSetResponse is the response type for the GetRegexMatchSet API operation.

func (*GetRegexMatchSetResponse) SDKResponseMetdata added in v0.9.0

func (r *GetRegexMatchSetResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the GetRegexMatchSet request.

type GetRegexPatternSetInput added in v0.2.0

type GetRegexPatternSetInput struct {

	// The RegexPatternSetId of the RegexPatternSet that you want to get. RegexPatternSetId
	// is returned by CreateRegexPatternSet and by ListRegexPatternSets.
	//
	// RegexPatternSetId is a required field
	RegexPatternSetId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetRegexPatternSetInput) String added in v0.2.0

func (s GetRegexPatternSetInput) String() string

String returns the string representation

func (*GetRegexPatternSetInput) Validate added in v0.2.0

func (s *GetRegexPatternSetInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type GetRegexPatternSetOutput added in v0.2.0

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 *RegexPatternSet `type:"structure"`
	// contains filtered or unexported fields
}

func (GetRegexPatternSetOutput) String added in v0.2.0

func (s GetRegexPatternSetOutput) String() string

String returns the string representation

type GetRegexPatternSetRequest added in v0.2.0

type GetRegexPatternSetRequest struct {
	*aws.Request
	Input *GetRegexPatternSetInput
	Copy  func(*GetRegexPatternSetInput) GetRegexPatternSetRequest
}

GetRegexPatternSetRequest is the request type for the GetRegexPatternSet API operation.

func (GetRegexPatternSetRequest) Send added in v0.2.0

Send marshals and sends the GetRegexPatternSet API request.

type GetRegexPatternSetResponse added in v0.9.0

type GetRegexPatternSetResponse struct {
	*GetRegexPatternSetOutput
	// contains filtered or unexported fields
}

GetRegexPatternSetResponse is the response type for the GetRegexPatternSet API operation.

func (*GetRegexPatternSetResponse) SDKResponseMetdata added in v0.9.0

func (r *GetRegexPatternSetResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the GetRegexPatternSet request.

type GetRuleGroupInput added in v0.2.0

type GetRuleGroupInput struct {

	// The RuleGroupId of the RuleGroup that you want to get. RuleGroupId is returned
	// by CreateRuleGroup and by ListRuleGroups.
	//
	// RuleGroupId is a required field
	RuleGroupId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetRuleGroupInput) String added in v0.2.0

func (s GetRuleGroupInput) String() string

String returns the string representation

func (*GetRuleGroupInput) Validate added in v0.2.0

func (s *GetRuleGroupInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type GetRuleGroupOutput added in v0.2.0

type GetRuleGroupOutput struct {

	// Information about the RuleGroup that you specified in the GetRuleGroup request.
	RuleGroup *RuleGroup `type:"structure"`
	// contains filtered or unexported fields
}

func (GetRuleGroupOutput) String added in v0.2.0

func (s GetRuleGroupOutput) String() string

String returns the string representation

type GetRuleGroupRequest added in v0.2.0

type GetRuleGroupRequest struct {
	*aws.Request
	Input *GetRuleGroupInput
	Copy  func(*GetRuleGroupInput) GetRuleGroupRequest
}

GetRuleGroupRequest is the request type for the GetRuleGroup API operation.

func (GetRuleGroupRequest) Send added in v0.2.0

Send marshals and sends the GetRuleGroup API request.

type GetRuleGroupResponse added in v0.9.0

type GetRuleGroupResponse struct {
	*GetRuleGroupOutput
	// contains filtered or unexported fields
}

GetRuleGroupResponse is the response type for the GetRuleGroup API operation.

func (*GetRuleGroupResponse) SDKResponseMetdata added in v0.9.0

func (r *GetRuleGroupResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the GetRuleGroup request.

type GetRuleInput

type GetRuleInput struct {

	// The RuleId of the Rule that you want to get. RuleId is returned by CreateRule
	// and by ListRules.
	//
	// RuleId is a required field
	RuleId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetRuleInput) String

func (s GetRuleInput) String() string

String returns the string representation

func (*GetRuleInput) Validate

func (s *GetRuleInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

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 *Rule `type:"structure"`
	// contains filtered or unexported fields
}

func (GetRuleOutput) String

func (s GetRuleOutput) String() string

String returns the string representation

type GetRuleRequest

type GetRuleRequest struct {
	*aws.Request
	Input *GetRuleInput
	Copy  func(*GetRuleInput) GetRuleRequest
}

GetRuleRequest is the request type for the GetRule API operation.

func (GetRuleRequest) Send

Send marshals and sends the GetRule API request.

type GetRuleResponse added in v0.9.0

type GetRuleResponse struct {
	*GetRuleOutput
	// contains filtered or unexported fields
}

GetRuleResponse is the response type for the GetRule API operation.

func (*GetRuleResponse) SDKResponseMetdata added in v0.9.0

func (r *GetRuleResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the GetRule request.

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.
	//
	// MaxItems is a required field
	MaxItems *int64 `min:"1" type:"long" required:"true"`

	// RuleId is one of three values:
	//
	//    * The RuleId of the Rule or the RuleGroupId of the RuleGroup for which
	//    you want GetSampledRequests to return a sample of requests.
	//
	//    * Default_Action, which causes GetSampledRequests to return a sample of
	//    the requests that didn't match any of the rules in the specified WebACL.
	//
	// RuleId is a required field
	RuleId *string `min:"1" type:"string" required:"true"`

	// The start date and time and the end date and time of the range for which
	// you want GetSampledRequests to return a sample of requests. You must specify
	// the times in Coordinated Universal Time (UTC) format. UTC format includes
	// the special designator, Z. For example, "2016-09-27T14:50Z". You can specify
	// any time range in the previous three hours.
	//
	// TimeWindow is a required field
	TimeWindow *TimeWindow `type:"structure" required:"true"`

	// The WebACLId of the WebACL for which you want GetSampledRequests to return
	// a sample of requests.
	//
	// WebAclId is a required field
	WebAclId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetSampledRequestsInput) String

func (s GetSampledRequestsInput) String() string

String returns the string representation

func (*GetSampledRequestsInput) Validate

func (s *GetSampledRequestsInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

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 `type:"long"`

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

	// 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 *TimeWindow `type:"structure"`
	// contains filtered or unexported fields
}

func (GetSampledRequestsOutput) String

func (s GetSampledRequestsOutput) String() string

String returns the string representation

type GetSampledRequestsRequest

type GetSampledRequestsRequest struct {
	*aws.Request
	Input *GetSampledRequestsInput
	Copy  func(*GetSampledRequestsInput) GetSampledRequestsRequest
}

GetSampledRequestsRequest is the request type for the GetSampledRequests API operation.

func (GetSampledRequestsRequest) Send

Send marshals and sends the GetSampledRequests API request.

type GetSampledRequestsResponse added in v0.9.0

type GetSampledRequestsResponse struct {
	*GetSampledRequestsOutput
	// contains filtered or unexported fields
}

GetSampledRequestsResponse is the response type for the GetSampledRequests API operation.

func (*GetSampledRequestsResponse) SDKResponseMetdata added in v0.9.0

func (r *GetSampledRequestsResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the GetSampledRequests request.

type GetSizeConstraintSetInput

type GetSizeConstraintSetInput struct {

	// The SizeConstraintSetId of the SizeConstraintSet that you want to get. SizeConstraintSetId
	// is returned by CreateSizeConstraintSet and by ListSizeConstraintSets.
	//
	// SizeConstraintSetId is a required field
	SizeConstraintSetId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetSizeConstraintSetInput) String

func (s GetSizeConstraintSetInput) String() string

String returns the string representation

func (*GetSizeConstraintSetInput) Validate

func (s *GetSizeConstraintSetInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type GetSizeConstraintSetOutput

type GetSizeConstraintSetOutput struct {

	// Information about the SizeConstraintSet that you specified in the GetSizeConstraintSet
	// request. For more information, see the following topics:
	//
	//    * SizeConstraintSet: Contains SizeConstraintSetId, SizeConstraints, and
	//    Name
	//
	//    * SizeConstraints: Contains an array of SizeConstraint objects. Each SizeConstraint
	//    object contains FieldToMatch, TextTransformation, ComparisonOperator,
	//    and Size
	//
	//    * FieldToMatch: Contains Data and Type
	SizeConstraintSet *SizeConstraintSet `type:"structure"`
	// contains filtered or unexported fields
}

func (GetSizeConstraintSetOutput) String

String returns the string representation

type GetSizeConstraintSetRequest

type GetSizeConstraintSetRequest struct {
	*aws.Request
	Input *GetSizeConstraintSetInput
	Copy  func(*GetSizeConstraintSetInput) GetSizeConstraintSetRequest
}

GetSizeConstraintSetRequest is the request type for the GetSizeConstraintSet API operation.

func (GetSizeConstraintSetRequest) Send

Send marshals and sends the GetSizeConstraintSet API request.

type GetSizeConstraintSetResponse added in v0.9.0

type GetSizeConstraintSetResponse struct {
	*GetSizeConstraintSetOutput
	// contains filtered or unexported fields
}

GetSizeConstraintSetResponse is the response type for the GetSizeConstraintSet API operation.

func (*GetSizeConstraintSetResponse) SDKResponseMetdata added in v0.9.0

func (r *GetSizeConstraintSetResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the GetSizeConstraintSet request.

type GetSqlInjectionMatchSetInput

type GetSqlInjectionMatchSetInput struct {

	// The SqlInjectionMatchSetId of the SqlInjectionMatchSet that you want to get.
	// SqlInjectionMatchSetId is returned by CreateSqlInjectionMatchSet and by ListSqlInjectionMatchSets.
	//
	// SqlInjectionMatchSetId is a required field
	SqlInjectionMatchSetId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

A request to get a SqlInjectionMatchSet.

func (GetSqlInjectionMatchSetInput) String

String returns the string representation

func (*GetSqlInjectionMatchSetInput) Validate

func (s *GetSqlInjectionMatchSetInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

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 *SqlInjectionMatchSet `type:"structure"`
	// contains filtered or unexported fields
}

The response to a GetSqlInjectionMatchSet request.

func (GetSqlInjectionMatchSetOutput) String

String returns the string representation

type GetSqlInjectionMatchSetRequest

type GetSqlInjectionMatchSetRequest struct {
	*aws.Request
	Input *GetSqlInjectionMatchSetInput
	Copy  func(*GetSqlInjectionMatchSetInput) GetSqlInjectionMatchSetRequest
}

GetSqlInjectionMatchSetRequest is the request type for the GetSqlInjectionMatchSet API operation.

func (GetSqlInjectionMatchSetRequest) Send

Send marshals and sends the GetSqlInjectionMatchSet API request.

type GetSqlInjectionMatchSetResponse added in v0.9.0

type GetSqlInjectionMatchSetResponse struct {
	*GetSqlInjectionMatchSetOutput
	// contains filtered or unexported fields
}

GetSqlInjectionMatchSetResponse is the response type for the GetSqlInjectionMatchSet API operation.

func (*GetSqlInjectionMatchSetResponse) SDKResponseMetdata added in v0.9.0

func (r *GetSqlInjectionMatchSetResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the GetSqlInjectionMatchSet request.

type GetWebACLInput

type GetWebACLInput struct {

	// The WebACLId of the WebACL that you want to get. WebACLId is returned by
	// CreateWebACL and by ListWebACLs.
	//
	// WebACLId is a required field
	WebACLId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetWebACLInput) String

func (s GetWebACLInput) String() string

String returns the string representation

func (*GetWebACLInput) Validate

func (s *GetWebACLInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

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 *WebACL `type:"structure"`
	// contains filtered or unexported fields
}

func (GetWebACLOutput) String

func (s GetWebACLOutput) String() string

String returns the string representation

type GetWebACLRequest

type GetWebACLRequest struct {
	*aws.Request
	Input *GetWebACLInput
	Copy  func(*GetWebACLInput) GetWebACLRequest
}

GetWebACLRequest is the request type for the GetWebACL API operation.

func (GetWebACLRequest) Send

Send marshals and sends the GetWebACL API request.

type GetWebACLResponse added in v0.9.0

type GetWebACLResponse struct {
	*GetWebACLOutput
	// contains filtered or unexported fields
}

GetWebACLResponse is the response type for the GetWebACL API operation.

func (*GetWebACLResponse) SDKResponseMetdata added in v0.9.0

func (r *GetWebACLResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the GetWebACL request.

type GetXssMatchSetInput

type GetXssMatchSetInput struct {

	// The XssMatchSetId of the XssMatchSet that you want to get. XssMatchSetId
	// is returned by CreateXssMatchSet and by ListXssMatchSets.
	//
	// XssMatchSetId is a required field
	XssMatchSetId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

A request to get an XssMatchSet.

func (GetXssMatchSetInput) String

func (s GetXssMatchSetInput) String() string

String returns the string representation

func (*GetXssMatchSetInput) Validate

func (s *GetXssMatchSetInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

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 *XssMatchSet `type:"structure"`
	// contains filtered or unexported fields
}

The response to a GetXssMatchSet request.

func (GetXssMatchSetOutput) String

func (s GetXssMatchSetOutput) String() string

String returns the string representation

type GetXssMatchSetRequest

type GetXssMatchSetRequest struct {
	*aws.Request
	Input *GetXssMatchSetInput
	Copy  func(*GetXssMatchSetInput) GetXssMatchSetRequest
}

GetXssMatchSetRequest is the request type for the GetXssMatchSet API operation.

func (GetXssMatchSetRequest) Send

Send marshals and sends the GetXssMatchSet API request.

type GetXssMatchSetResponse added in v0.9.0

type GetXssMatchSetResponse struct {
	*GetXssMatchSetOutput
	// contains filtered or unexported fields
}

GetXssMatchSetResponse is the response type for the GetXssMatchSet API operation.

func (*GetXssMatchSetResponse) SDKResponseMetdata added in v0.9.0

func (r *GetXssMatchSetResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the GetXssMatchSet request.

type HTTPHeader

type HTTPHeader struct {

	// The name of one of the headers in the sampled web request.
	Name *string `type:"string"`

	// The value of one of the headers in the sampled web request.
	Value *string `type:"string"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

The response from a GetSampledRequests request includes an HTTPHeader complex type that appears as Headers in the response syntax. HTTPHeader contains the names and values of all of the headers that appear in one of the web requests that were returned by GetSampledRequests.

func (HTTPHeader) String

func (s HTTPHeader) String() string

String returns the string representation

type HTTPRequest

type HTTPRequest struct {

	// The IP address that the request originated from. If the WebACL is associated
	// with a CloudFront distribution, this is the value of one of the following
	// fields in CloudFront access logs:
	//
	//    * c-ip, if the viewer did not use an HTTP proxy or a load balancer to
	//    send the request
	//
	//    * x-forwarded-for, if the viewer did use an HTTP proxy or a load balancer
	//    to send the request
	ClientIP *string `type:"string"`

	// The two-letter country code for the country that the request originated from.
	// For a current list of country codes, see the Wikipedia entry ISO 3166-1 alpha-2
	// (https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2).
	Country *string `type:"string"`

	// The HTTP version specified in the sampled web request, for example, HTTP/1.1.
	HTTPVersion *string `type:"string"`

	// A complex type that contains two values for each header in the sampled web
	// request: the name of the header and the value of the header.
	Headers []HTTPHeader `type:"list"`

	// The HTTP method specified in the sampled web request. CloudFront supports
	// the following methods: DELETE, GET, HEAD, OPTIONS, PATCH, POST, and PUT.
	Method *string `type:"string"`

	// The part of a web request that identifies the resource, for example, /images/daily-ad.jpg.
	URI *string `type:"string"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

The response from a GetSampledRequests request includes an HTTPRequest complex type that appears as Request in the response syntax. HTTPRequest contains information about one of the web requests that were returned by GetSampledRequests.

func (HTTPRequest) String

func (s HTTPRequest) String() string

String returns the string representation

type IPSet

type IPSet struct {

	// The IP address type (IPV4 or IPV6) and the IP address range (in CIDR notation)
	// that web requests originate from. If the WebACL is associated with a CloudFront
	// distribution and the viewer did not use an HTTP proxy or a load balancer
	// to send the request, this is the value of the c-ip field in the CloudFront
	// access logs.
	//
	// IPSetDescriptors is a required field
	IPSetDescriptors []IPSetDescriptor `type:"list" required:"true"`

	// The IPSetId for an IPSet. You use IPSetId to get information about an IPSet
	// (see GetIPSet), update an IPSet (see UpdateIPSet), insert an IPSet into a
	// Rule or delete one from a Rule (see UpdateRule), and delete an IPSet from
	// AWS WAF (see DeleteIPSet).
	//
	// IPSetId is returned by CreateIPSet and by ListIPSets.
	//
	// IPSetId is a required field
	IPSetId *string `min:"1" type:"string" required:"true"`

	// A friendly name or description of the IPSet. You can't change the name of
	// an IPSet after you create it.
	Name *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Contains one or more IP addresses or blocks of IP addresses specified in Classless Inter-Domain Routing (CIDR) notation. 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.

To specify an individual IP address, you specify the four-part IP address followed by a /32, for example, 192.0.2.0/32. To block a range of IP addresses, you can specify /8 or any range between /16 through /32 (for IPv4) or /24, /32, /48, /56, /64, or /128 (for IPv6). For more information about CIDR notation, see the Wikipedia entry Classless Inter-Domain Routing (https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing).

func (IPSet) String

func (s IPSet) String() string

String returns the string representation

type IPSetDescriptor

type IPSetDescriptor struct {

	// Specify IPV4 or IPV6.
	//
	// Type is a required field
	Type IPSetDescriptorType `type:"string" required:"true" enum:"true"`

	// Specify an IPv4 address by using CIDR notation. For example:
	//
	//    * To configure AWS WAF to allow, block, or count requests that originated
	//    from the IP address 192.0.2.44, specify 192.0.2.44/32.
	//
	//    * To configure AWS WAF to allow, block, or count requests that originated
	//    from IP addresses from 192.0.2.0 to 192.0.2.255, specify 192.0.2.0/24.
	//
	// For more information about CIDR notation, see the Wikipedia entry Classless
	// Inter-Domain Routing (https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing).
	//
	// Specify an IPv6 address by using CIDR notation. For example:
	//
	//    * To configure AWS WAF to allow, block, or count requests that originated
	//    from the IP address 1111:0000:0000:0000:0000:0000:0000:0111, specify 1111:0000:0000:0000:0000:0000:0000:0111/128.
	//
	//    * To configure AWS WAF to allow, block, or count requests that originated
	//    from IP addresses 1111:0000:0000:0000:0000:0000:0000:0000 to 1111:0000:0000:0000:ffff:ffff:ffff:ffff,
	//    specify 1111:0000:0000:0000:0000:0000:0000:0000/64.
	//
	// Value is a required field
	Value *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Specifies the IP address type (IPV4 or IPV6) and the IP address range (in CIDR format) that web requests originate from.

func (IPSetDescriptor) String

func (s IPSetDescriptor) String() string

String returns the string representation

func (*IPSetDescriptor) Validate

func (s *IPSetDescriptor) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type IPSetDescriptorType

type IPSetDescriptorType string
const (
	IPSetDescriptorTypeIpv4 IPSetDescriptorType = "IPV4"
	IPSetDescriptorTypeIpv6 IPSetDescriptorType = "IPV6"
)

Enum values for IPSetDescriptorType

func (IPSetDescriptorType) MarshalValue added in v0.3.0

func (enum IPSetDescriptorType) MarshalValue() (string, error)

func (IPSetDescriptorType) MarshalValueBuf added in v0.3.0

func (enum IPSetDescriptorType) MarshalValueBuf(b []byte) ([]byte, error)

type IPSetSummary

type IPSetSummary struct {

	// The IPSetId for an IPSet. You can use IPSetId in a GetIPSet request to get
	// detailed information about an IPSet.
	//
	// IPSetId is a required field
	IPSetId *string `min:"1" type:"string" required:"true"`

	// A friendly name or description of the IPSet. You can't change the name of
	// an IPSet after you create it.
	//
	// Name is a required field
	Name *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Contains the identifier and the name of the IPSet.

func (IPSetSummary) String

func (s IPSetSummary) String() string

String returns the string representation

type IPSetUpdate

type IPSetUpdate struct {

	// Specifies whether to insert or delete an IP address with UpdateIPSet.
	//
	// Action is a required field
	Action ChangeAction `type:"string" required:"true" enum:"true"`

	// The IP address type (IPV4 or IPV6) and the IP address range (in CIDR notation)
	// that web requests originate from.
	//
	// IPSetDescriptor is a required field
	IPSetDescriptor *IPSetDescriptor `type:"structure" required:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Specifies the type of update to perform to an IPSet with UpdateIPSet.

func (IPSetUpdate) String

func (s IPSetUpdate) String() string

String returns the string representation

func (*IPSetUpdate) Validate

func (s *IPSetUpdate) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type ListActivatedRulesInRuleGroupInput added in v0.2.0

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 *int64 `type:"integer"`

	// 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 `min:"1" type:"string"`

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

func (ListActivatedRulesInRuleGroupInput) String added in v0.2.0

String returns the string representation

func (*ListActivatedRulesInRuleGroupInput) Validate added in v0.2.0

Validate inspects the fields of the type to determine if they are valid.

type ListActivatedRulesInRuleGroupOutput added in v0.2.0

type ListActivatedRulesInRuleGroupOutput struct {

	// An array of ActivatedRules objects.
	ActivatedRules []ActivatedRule `type:"list"`

	// 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 `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (ListActivatedRulesInRuleGroupOutput) String added in v0.2.0

String returns the string representation

type ListActivatedRulesInRuleGroupRequest added in v0.2.0

type ListActivatedRulesInRuleGroupRequest struct {
	*aws.Request
	Input *ListActivatedRulesInRuleGroupInput
	Copy  func(*ListActivatedRulesInRuleGroupInput) ListActivatedRulesInRuleGroupRequest
}

ListActivatedRulesInRuleGroupRequest is the request type for the ListActivatedRulesInRuleGroup API operation.

func (ListActivatedRulesInRuleGroupRequest) Send added in v0.2.0

Send marshals and sends the ListActivatedRulesInRuleGroup API request.

type ListActivatedRulesInRuleGroupResponse added in v0.9.0

type ListActivatedRulesInRuleGroupResponse struct {
	*ListActivatedRulesInRuleGroupOutput
	// contains filtered or unexported fields
}

ListActivatedRulesInRuleGroupResponse is the response type for the ListActivatedRulesInRuleGroup API operation.

func (*ListActivatedRulesInRuleGroupResponse) SDKResponseMetdata added in v0.9.0

func (r *ListActivatedRulesInRuleGroupResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the ListActivatedRulesInRuleGroup request.

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 *int64 `type:"integer"`

	// 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 `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (ListByteMatchSetsInput) String

func (s ListByteMatchSetsInput) String() string

String returns the string representation

func (*ListByteMatchSetsInput) Validate

func (s *ListByteMatchSetsInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type ListByteMatchSetsOutput

type ListByteMatchSetsOutput struct {

	// An array of ByteMatchSetSummary objects.
	ByteMatchSets []ByteMatchSetSummary `type:"list"`

	// 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 `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (ListByteMatchSetsOutput) String

func (s ListByteMatchSetsOutput) String() string

String returns the string representation

type ListByteMatchSetsRequest

type ListByteMatchSetsRequest struct {
	*aws.Request
	Input *ListByteMatchSetsInput
	Copy  func(*ListByteMatchSetsInput) ListByteMatchSetsRequest
}

ListByteMatchSetsRequest is the request type for the ListByteMatchSets API operation.

func (ListByteMatchSetsRequest) Send

Send marshals and sends the ListByteMatchSets API request.

type ListByteMatchSetsResponse added in v0.9.0

type ListByteMatchSetsResponse struct {
	*ListByteMatchSetsOutput
	// contains filtered or unexported fields
}

ListByteMatchSetsResponse is the response type for the ListByteMatchSets API operation.

func (*ListByteMatchSetsResponse) SDKResponseMetdata added in v0.9.0

func (r *ListByteMatchSetsResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the ListByteMatchSets request.

type ListGeoMatchSetsInput added in v0.2.0

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 *int64 `type:"integer"`

	// If you specify a value for Limit and you have more GeoMatchSets than the
	// value of Limit, AWS WAF returns a NextMarker value in the response that allows
	// you to list another group of GeoMatchSet objects. For the second and subsequent
	// ListGeoMatchSets requests, specify the value of NextMarker from the previous
	// response to get information about another batch of GeoMatchSet objects.
	NextMarker *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (ListGeoMatchSetsInput) String added in v0.2.0

func (s ListGeoMatchSetsInput) String() string

String returns the string representation

func (*ListGeoMatchSetsInput) Validate added in v0.2.0

func (s *ListGeoMatchSetsInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type ListGeoMatchSetsOutput added in v0.2.0

type ListGeoMatchSetsOutput struct {

	// An array of GeoMatchSetSummary objects.
	GeoMatchSets []GeoMatchSetSummary `type:"list"`

	// 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 `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (ListGeoMatchSetsOutput) String added in v0.2.0

func (s ListGeoMatchSetsOutput) String() string

String returns the string representation

type ListGeoMatchSetsRequest added in v0.2.0

type ListGeoMatchSetsRequest struct {
	*aws.Request
	Input *ListGeoMatchSetsInput
	Copy  func(*ListGeoMatchSetsInput) ListGeoMatchSetsRequest
}

ListGeoMatchSetsRequest is the request type for the ListGeoMatchSets API operation.

func (ListGeoMatchSetsRequest) Send added in v0.2.0

Send marshals and sends the ListGeoMatchSets API request.

type ListGeoMatchSetsResponse added in v0.9.0

type ListGeoMatchSetsResponse struct {
	*ListGeoMatchSetsOutput
	// contains filtered or unexported fields
}

ListGeoMatchSetsResponse is the response type for the ListGeoMatchSets API operation.

func (*ListGeoMatchSetsResponse) SDKResponseMetdata added in v0.9.0

func (r *ListGeoMatchSetsResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the ListGeoMatchSets request.

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 *int64 `type:"integer"`

	// 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 `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (ListIPSetsInput) String

func (s ListIPSetsInput) String() string

String returns the string representation

func (*ListIPSetsInput) Validate

func (s *ListIPSetsInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type ListIPSetsOutput

type ListIPSetsOutput struct {

	// An array of IPSetSummary objects.
	IPSets []IPSetSummary `type:"list"`

	// 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 `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (ListIPSetsOutput) String

func (s ListIPSetsOutput) String() string

String returns the string representation

type ListIPSetsRequest

type ListIPSetsRequest struct {
	*aws.Request
	Input *ListIPSetsInput
	Copy  func(*ListIPSetsInput) ListIPSetsRequest
}

ListIPSetsRequest is the request type for the ListIPSets API operation.

func (ListIPSetsRequest) Send

Send marshals and sends the ListIPSets API request.

type ListIPSetsResponse added in v0.9.0

type ListIPSetsResponse struct {
	*ListIPSetsOutput
	// contains filtered or unexported fields
}

ListIPSetsResponse is the response type for the ListIPSets API operation.

func (*ListIPSetsResponse) SDKResponseMetdata added in v0.9.0

func (r *ListIPSetsResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the ListIPSets request.

type ListLoggingConfigurationsInput added in v0.5.0

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 *int64 `type:"integer"`

	// 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 `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (ListLoggingConfigurationsInput) String added in v0.5.0

String returns the string representation

func (*ListLoggingConfigurationsInput) Validate added in v0.5.0

func (s *ListLoggingConfigurationsInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type ListLoggingConfigurationsOutput added in v0.5.0

type ListLoggingConfigurationsOutput struct {

	// An array of LoggingConfiguration objects.
	LoggingConfigurations []LoggingConfiguration `type:"list"`

	// 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 `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (ListLoggingConfigurationsOutput) String added in v0.5.0

String returns the string representation

type ListLoggingConfigurationsRequest added in v0.5.0

type ListLoggingConfigurationsRequest struct {
	*aws.Request
	Input *ListLoggingConfigurationsInput
	Copy  func(*ListLoggingConfigurationsInput) ListLoggingConfigurationsRequest
}

ListLoggingConfigurationsRequest is the request type for the ListLoggingConfigurations API operation.

func (ListLoggingConfigurationsRequest) Send added in v0.5.0

Send marshals and sends the ListLoggingConfigurations API request.

type ListLoggingConfigurationsResponse added in v0.9.0

type ListLoggingConfigurationsResponse struct {
	*ListLoggingConfigurationsOutput
	// contains filtered or unexported fields
}

ListLoggingConfigurationsResponse is the response type for the ListLoggingConfigurations API operation.

func (*ListLoggingConfigurationsResponse) SDKResponseMetdata added in v0.9.0

func (r *ListLoggingConfigurationsResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the ListLoggingConfigurations request.

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 *int64 `type:"integer"`

	// 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 `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (ListRateBasedRulesInput) String

func (s ListRateBasedRulesInput) String() string

String returns the string representation

func (*ListRateBasedRulesInput) Validate

func (s *ListRateBasedRulesInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

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 `min:"1" type:"string"`

	// An array of RuleSummary objects.
	Rules []RuleSummary `type:"list"`
	// contains filtered or unexported fields
}

func (ListRateBasedRulesOutput) String

func (s ListRateBasedRulesOutput) String() string

String returns the string representation

type ListRateBasedRulesRequest

type ListRateBasedRulesRequest struct {
	*aws.Request
	Input *ListRateBasedRulesInput
	Copy  func(*ListRateBasedRulesInput) ListRateBasedRulesRequest
}

ListRateBasedRulesRequest is the request type for the ListRateBasedRules API operation.

func (ListRateBasedRulesRequest) Send

Send marshals and sends the ListRateBasedRules API request.

type ListRateBasedRulesResponse added in v0.9.0

type ListRateBasedRulesResponse struct {
	*ListRateBasedRulesOutput
	// contains filtered or unexported fields
}

ListRateBasedRulesResponse is the response type for the ListRateBasedRules API operation.

func (*ListRateBasedRulesResponse) SDKResponseMetdata added in v0.9.0

func (r *ListRateBasedRulesResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the ListRateBasedRules request.

type ListRegexMatchSetsInput added in v0.2.0

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 *int64 `type:"integer"`

	// 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 `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (ListRegexMatchSetsInput) String added in v0.2.0

func (s ListRegexMatchSetsInput) String() string

String returns the string representation

func (*ListRegexMatchSetsInput) Validate added in v0.2.0

func (s *ListRegexMatchSetsInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type ListRegexMatchSetsOutput added in v0.2.0

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 `min:"1" type:"string"`

	// An array of RegexMatchSetSummary objects.
	RegexMatchSets []RegexMatchSetSummary `type:"list"`
	// contains filtered or unexported fields
}

func (ListRegexMatchSetsOutput) String added in v0.2.0

func (s ListRegexMatchSetsOutput) String() string

String returns the string representation

type ListRegexMatchSetsRequest added in v0.2.0

type ListRegexMatchSetsRequest struct {
	*aws.Request
	Input *ListRegexMatchSetsInput
	Copy  func(*ListRegexMatchSetsInput) ListRegexMatchSetsRequest
}

ListRegexMatchSetsRequest is the request type for the ListRegexMatchSets API operation.

func (ListRegexMatchSetsRequest) Send added in v0.2.0

Send marshals and sends the ListRegexMatchSets API request.

type ListRegexMatchSetsResponse added in v0.9.0

type ListRegexMatchSetsResponse struct {
	*ListRegexMatchSetsOutput
	// contains filtered or unexported fields
}

ListRegexMatchSetsResponse is the response type for the ListRegexMatchSets API operation.

func (*ListRegexMatchSetsResponse) SDKResponseMetdata added in v0.9.0

func (r *ListRegexMatchSetsResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the ListRegexMatchSets request.

type ListRegexPatternSetsInput added in v0.2.0

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 *int64 `type:"integer"`

	// 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 `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (ListRegexPatternSetsInput) String added in v0.2.0

func (s ListRegexPatternSetsInput) String() string

String returns the string representation

func (*ListRegexPatternSetsInput) Validate added in v0.2.0

func (s *ListRegexPatternSetsInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type ListRegexPatternSetsOutput added in v0.2.0

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 `min:"1" type:"string"`

	// An array of RegexPatternSetSummary objects.
	RegexPatternSets []RegexPatternSetSummary `type:"list"`
	// contains filtered or unexported fields
}

func (ListRegexPatternSetsOutput) String added in v0.2.0

String returns the string representation

type ListRegexPatternSetsRequest added in v0.2.0

type ListRegexPatternSetsRequest struct {
	*aws.Request
	Input *ListRegexPatternSetsInput
	Copy  func(*ListRegexPatternSetsInput) ListRegexPatternSetsRequest
}

ListRegexPatternSetsRequest is the request type for the ListRegexPatternSets API operation.

func (ListRegexPatternSetsRequest) Send added in v0.2.0

Send marshals and sends the ListRegexPatternSets API request.

type ListRegexPatternSetsResponse added in v0.9.0

type ListRegexPatternSetsResponse struct {
	*ListRegexPatternSetsOutput
	// contains filtered or unexported fields
}

ListRegexPatternSetsResponse is the response type for the ListRegexPatternSets API operation.

func (*ListRegexPatternSetsResponse) SDKResponseMetdata added in v0.9.0

func (r *ListRegexPatternSetsResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the ListRegexPatternSets request.

type ListRuleGroupsInput added in v0.2.0

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 *int64 `type:"integer"`

	// 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 `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (ListRuleGroupsInput) String added in v0.2.0

func (s ListRuleGroupsInput) String() string

String returns the string representation

func (*ListRuleGroupsInput) Validate added in v0.2.0

func (s *ListRuleGroupsInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type ListRuleGroupsOutput added in v0.2.0

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 `min:"1" type:"string"`

	// An array of RuleGroup objects.
	RuleGroups []RuleGroupSummary `type:"list"`
	// contains filtered or unexported fields
}

func (ListRuleGroupsOutput) String added in v0.2.0

func (s ListRuleGroupsOutput) String() string

String returns the string representation

type ListRuleGroupsRequest added in v0.2.0

type ListRuleGroupsRequest struct {
	*aws.Request
	Input *ListRuleGroupsInput
	Copy  func(*ListRuleGroupsInput) ListRuleGroupsRequest
}

ListRuleGroupsRequest is the request type for the ListRuleGroups API operation.

func (ListRuleGroupsRequest) Send added in v0.2.0

Send marshals and sends the ListRuleGroups API request.

type ListRuleGroupsResponse added in v0.9.0

type ListRuleGroupsResponse struct {
	*ListRuleGroupsOutput
	// contains filtered or unexported fields
}

ListRuleGroupsResponse is the response type for the ListRuleGroups API operation.

func (*ListRuleGroupsResponse) SDKResponseMetdata added in v0.9.0

func (r *ListRuleGroupsResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the ListRuleGroups request.

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 *int64 `type:"integer"`

	// 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 `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (ListRulesInput) String

func (s ListRulesInput) String() string

String returns the string representation

func (*ListRulesInput) Validate

func (s *ListRulesInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

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 `min:"1" type:"string"`

	// An array of RuleSummary objects.
	Rules []RuleSummary `type:"list"`
	// contains filtered or unexported fields
}

func (ListRulesOutput) String

func (s ListRulesOutput) String() string

String returns the string representation

type ListRulesRequest

type ListRulesRequest struct {
	*aws.Request
	Input *ListRulesInput
	Copy  func(*ListRulesInput) ListRulesRequest
}

ListRulesRequest is the request type for the ListRules API operation.

func (ListRulesRequest) Send

Send marshals and sends the ListRules API request.

type ListRulesResponse added in v0.9.0

type ListRulesResponse struct {
	*ListRulesOutput
	// contains filtered or unexported fields
}

ListRulesResponse is the response type for the ListRules API operation.

func (*ListRulesResponse) SDKResponseMetdata added in v0.9.0

func (r *ListRulesResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the ListRules request.

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 *int64 `type:"integer"`

	// 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 `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (ListSizeConstraintSetsInput) String

String returns the string representation

func (*ListSizeConstraintSetsInput) Validate

func (s *ListSizeConstraintSetsInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

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 `min:"1" type:"string"`

	// An array of SizeConstraintSetSummary objects.
	SizeConstraintSets []SizeConstraintSetSummary `type:"list"`
	// contains filtered or unexported fields
}

func (ListSizeConstraintSetsOutput) String

String returns the string representation

type ListSizeConstraintSetsRequest

type ListSizeConstraintSetsRequest struct {
	*aws.Request
	Input *ListSizeConstraintSetsInput
	Copy  func(*ListSizeConstraintSetsInput) ListSizeConstraintSetsRequest
}

ListSizeConstraintSetsRequest is the request type for the ListSizeConstraintSets API operation.

func (ListSizeConstraintSetsRequest) Send

Send marshals and sends the ListSizeConstraintSets API request.

type ListSizeConstraintSetsResponse added in v0.9.0

type ListSizeConstraintSetsResponse struct {
	*ListSizeConstraintSetsOutput
	// contains filtered or unexported fields
}

ListSizeConstraintSetsResponse is the response type for the ListSizeConstraintSets API operation.

func (*ListSizeConstraintSetsResponse) SDKResponseMetdata added in v0.9.0

func (r *ListSizeConstraintSetsResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the ListSizeConstraintSets request.

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 *int64 `type:"integer"`

	// 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 `min:"1" type:"string"`
	// contains filtered or unexported fields
}

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

func (ListSqlInjectionMatchSetsInput) String

String returns the string representation

func (*ListSqlInjectionMatchSetsInput) Validate

func (s *ListSqlInjectionMatchSetsInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

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 `min:"1" type:"string"`

	// An array of SqlInjectionMatchSetSummary objects.
	SqlInjectionMatchSets []SqlInjectionMatchSetSummary `type:"list"`
	// contains filtered or unexported fields
}

The response to a ListSqlInjectionMatchSets request.

func (ListSqlInjectionMatchSetsOutput) String

String returns the string representation

type ListSqlInjectionMatchSetsRequest

type ListSqlInjectionMatchSetsRequest struct {
	*aws.Request
	Input *ListSqlInjectionMatchSetsInput
	Copy  func(*ListSqlInjectionMatchSetsInput) ListSqlInjectionMatchSetsRequest
}

ListSqlInjectionMatchSetsRequest is the request type for the ListSqlInjectionMatchSets API operation.

func (ListSqlInjectionMatchSetsRequest) Send

Send marshals and sends the ListSqlInjectionMatchSets API request.

type ListSqlInjectionMatchSetsResponse added in v0.9.0

type ListSqlInjectionMatchSetsResponse struct {
	*ListSqlInjectionMatchSetsOutput
	// contains filtered or unexported fields
}

ListSqlInjectionMatchSetsResponse is the response type for the ListSqlInjectionMatchSets API operation.

func (*ListSqlInjectionMatchSetsResponse) SDKResponseMetdata added in v0.9.0

func (r *ListSqlInjectionMatchSetsResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the ListSqlInjectionMatchSets request.

type ListSubscribedRuleGroupsInput added in v0.2.0

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 *int64 `type:"integer"`

	// If you specify a value for Limit and you have more ByteMatchSetssubscribed
	// rule groups than the value of Limit, AWS WAF returns a NextMarker value in
	// the response that allows you to list another group of subscribed rule groups.
	// For the second and subsequent ListSubscribedRuleGroupsRequest requests, specify
	// the value of NextMarker from the previous response to get information about
	// another batch of subscribed rule groups.
	NextMarker *string `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (ListSubscribedRuleGroupsInput) String added in v0.2.0

String returns the string representation

func (*ListSubscribedRuleGroupsInput) Validate added in v0.2.0

func (s *ListSubscribedRuleGroupsInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type ListSubscribedRuleGroupsOutput added in v0.2.0

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 `min:"1" type:"string"`

	// An array of RuleGroup objects.
	RuleGroups []SubscribedRuleGroupSummary `type:"list"`
	// contains filtered or unexported fields
}

func (ListSubscribedRuleGroupsOutput) String added in v0.2.0

String returns the string representation

type ListSubscribedRuleGroupsRequest added in v0.2.0

type ListSubscribedRuleGroupsRequest struct {
	*aws.Request
	Input *ListSubscribedRuleGroupsInput
	Copy  func(*ListSubscribedRuleGroupsInput) ListSubscribedRuleGroupsRequest
}

ListSubscribedRuleGroupsRequest is the request type for the ListSubscribedRuleGroups API operation.

func (ListSubscribedRuleGroupsRequest) Send added in v0.2.0

Send marshals and sends the ListSubscribedRuleGroups API request.

type ListSubscribedRuleGroupsResponse added in v0.9.0

type ListSubscribedRuleGroupsResponse struct {
	*ListSubscribedRuleGroupsOutput
	// contains filtered or unexported fields
}

ListSubscribedRuleGroupsResponse is the response type for the ListSubscribedRuleGroups API operation.

func (*ListSubscribedRuleGroupsResponse) SDKResponseMetdata added in v0.9.0

func (r *ListSubscribedRuleGroupsResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the ListSubscribedRuleGroups request.

type ListTagsForResourceInput added in v0.10.0

type ListTagsForResourceInput struct {
	Limit *int64 `type:"integer"`

	NextMarker *string `min:"1" type:"string"`

	// ResourceARN is a required field
	ResourceARN *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (ListTagsForResourceInput) String added in v0.10.0

func (s ListTagsForResourceInput) String() string

String returns the string representation

func (*ListTagsForResourceInput) Validate added in v0.10.0

func (s *ListTagsForResourceInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type ListTagsForResourceOutput added in v0.10.0

type ListTagsForResourceOutput struct {
	NextMarker *string `min:"1" type:"string"`

	//
	// This is AWS WAF Classic documentation. For more information, see AWS WAF
	// Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html)
	// in the developer guide.
	//
	// For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS
	// WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html).
	// With the latest version, AWS WAF has a single set of endpoints for regional
	// and global use.
	//
	// Information for a tag associated with an 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.
	TagInfoForResource *TagInfoForResource `type:"structure"`
	// contains filtered or unexported fields
}

func (ListTagsForResourceOutput) String added in v0.10.0

func (s ListTagsForResourceOutput) String() string

String returns the string representation

type ListTagsForResourceRequest added in v0.10.0

type ListTagsForResourceRequest struct {
	*aws.Request
	Input *ListTagsForResourceInput
	Copy  func(*ListTagsForResourceInput) ListTagsForResourceRequest
}

ListTagsForResourceRequest is the request type for the ListTagsForResource API operation.

func (ListTagsForResourceRequest) Send added in v0.10.0

Send marshals and sends the ListTagsForResource API request.

type ListTagsForResourceResponse added in v0.10.0

type ListTagsForResourceResponse struct {
	*ListTagsForResourceOutput
	// contains filtered or unexported fields
}

ListTagsForResourceResponse is the response type for the ListTagsForResource API operation.

func (*ListTagsForResourceResponse) SDKResponseMetdata added in v0.10.0

func (r *ListTagsForResourceResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the ListTagsForResource request.

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 *int64 `type:"integer"`

	// 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 `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (ListWebACLsInput) String

func (s ListWebACLsInput) String() string

String returns the string representation

func (*ListWebACLsInput) Validate

func (s *ListWebACLsInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

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 `min:"1" type:"string"`

	// An array of WebACLSummary objects.
	WebACLs []WebACLSummary `type:"list"`
	// contains filtered or unexported fields
}

func (ListWebACLsOutput) String

func (s ListWebACLsOutput) String() string

String returns the string representation

type ListWebACLsRequest

type ListWebACLsRequest struct {
	*aws.Request
	Input *ListWebACLsInput
	Copy  func(*ListWebACLsInput) ListWebACLsRequest
}

ListWebACLsRequest is the request type for the ListWebACLs API operation.

func (ListWebACLsRequest) Send

Send marshals and sends the ListWebACLs API request.

type ListWebACLsResponse added in v0.9.0

type ListWebACLsResponse struct {
	*ListWebACLsOutput
	// contains filtered or unexported fields
}

ListWebACLsResponse is the response type for the ListWebACLs API operation.

func (*ListWebACLsResponse) SDKResponseMetdata added in v0.9.0

func (r *ListWebACLsResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the ListWebACLs request.

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 *int64 `type:"integer"`

	// 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 `min:"1" type:"string"`
	// contains filtered or unexported fields
}

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

func (ListXssMatchSetsInput) String

func (s ListXssMatchSetsInput) String() string

String returns the string representation

func (*ListXssMatchSetsInput) Validate

func (s *ListXssMatchSetsInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

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 `min:"1" type:"string"`

	// An array of XssMatchSetSummary objects.
	XssMatchSets []XssMatchSetSummary `type:"list"`
	// contains filtered or unexported fields
}

The response to a ListXssMatchSets request.

func (ListXssMatchSetsOutput) String

func (s ListXssMatchSetsOutput) String() string

String returns the string representation

type ListXssMatchSetsRequest

type ListXssMatchSetsRequest struct {
	*aws.Request
	Input *ListXssMatchSetsInput
	Copy  func(*ListXssMatchSetsInput) ListXssMatchSetsRequest
}

ListXssMatchSetsRequest is the request type for the ListXssMatchSets API operation.

func (ListXssMatchSetsRequest) Send

Send marshals and sends the ListXssMatchSets API request.

type ListXssMatchSetsResponse added in v0.9.0

type ListXssMatchSetsResponse struct {
	*ListXssMatchSetsOutput
	// contains filtered or unexported fields
}

ListXssMatchSetsResponse is the response type for the ListXssMatchSets API operation.

func (*ListXssMatchSetsResponse) SDKResponseMetdata added in v0.9.0

func (r *ListXssMatchSetsResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the ListXssMatchSets request.

type LoggingConfiguration added in v0.5.0

type LoggingConfiguration struct {

	// An array of Amazon Kinesis Data Firehose ARNs.
	//
	// LogDestinationConfigs is a required field
	LogDestinationConfigs []string `min:"1" type:"list" required:"true"`

	// The parts of the request that you want redacted from the logs. For example,
	// if you redact the cookie field, the cookie field in the firehose will be
	// xxx.
	RedactedFields []FieldToMatch `type:"list"`

	// The Amazon Resource Name (ARN) of the web ACL that you want to associate
	// with LogDestinationConfigs.
	//
	// ResourceArn is a required field
	ResourceArn *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

The Amazon Kinesis Data Firehose, RedactedFields information, and the web ACL Amazon Resource Name (ARN).

func (LoggingConfiguration) String added in v0.5.0

func (s LoggingConfiguration) String() string

String returns the string representation

func (*LoggingConfiguration) Validate added in v0.5.0

func (s *LoggingConfiguration) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type MatchFieldType

type MatchFieldType string
const (
	MatchFieldTypeUri            MatchFieldType = "URI"
	MatchFieldTypeQueryString    MatchFieldType = "QUERY_STRING"
	MatchFieldTypeHeader         MatchFieldType = "HEADER"
	MatchFieldTypeMethod         MatchFieldType = "METHOD"
	MatchFieldTypeBody           MatchFieldType = "BODY"
	MatchFieldTypeSingleQueryArg MatchFieldType = "SINGLE_QUERY_ARG"
	MatchFieldTypeAllQueryArgs   MatchFieldType = "ALL_QUERY_ARGS"
)

Enum values for MatchFieldType

func (MatchFieldType) MarshalValue added in v0.3.0

func (enum MatchFieldType) MarshalValue() (string, error)

func (MatchFieldType) MarshalValueBuf added in v0.3.0

func (enum MatchFieldType) MarshalValueBuf(b []byte) ([]byte, error)

type MigrationErrorType added in v0.23.0

type MigrationErrorType string
const (
	MigrationErrorTypeEntityNotSupported    MigrationErrorType = "ENTITY_NOT_SUPPORTED"
	MigrationErrorTypeEntityNotFound        MigrationErrorType = "ENTITY_NOT_FOUND"
	MigrationErrorTypeS3BucketNoPermission  MigrationErrorType = "S3_BUCKET_NO_PERMISSION"
	MigrationErrorTypeS3BucketNotAccessible MigrationErrorType = "S3_BUCKET_NOT_ACCESSIBLE"
	MigrationErrorTypeS3BucketNotFound      MigrationErrorType = "S3_BUCKET_NOT_FOUND"
	MigrationErrorTypeS3BucketInvalidRegion MigrationErrorType = "S3_BUCKET_INVALID_REGION"
	MigrationErrorTypeS3InternalError       MigrationErrorType = "S3_INTERNAL_ERROR"
)

Enum values for MigrationErrorType

func (MigrationErrorType) MarshalValue added in v0.23.0

func (enum MigrationErrorType) MarshalValue() (string, error)

func (MigrationErrorType) MarshalValueBuf added in v0.23.0

func (enum MigrationErrorType) MarshalValueBuf(b []byte) ([]byte, error)

type ParameterExceptionField

type ParameterExceptionField string
const (
	ParameterExceptionFieldChangeAction                     ParameterExceptionField = "CHANGE_ACTION"
	ParameterExceptionFieldWafAction                        ParameterExceptionField = "WAF_ACTION"
	ParameterExceptionFieldWafOverrideAction                ParameterExceptionField = "WAF_OVERRIDE_ACTION"
	ParameterExceptionFieldPredicateType                    ParameterExceptionField = "PREDICATE_TYPE"
	ParameterExceptionFieldIpsetType                        ParameterExceptionField = "IPSET_TYPE"
	ParameterExceptionFieldByteMatchFieldType               ParameterExceptionField = "BYTE_MATCH_FIELD_TYPE"
	ParameterExceptionFieldSqlInjectionMatchFieldType       ParameterExceptionField = "SQL_INJECTION_MATCH_FIELD_TYPE"
	ParameterExceptionFieldByteMatchTextTransformation      ParameterExceptionField = "BYTE_MATCH_TEXT_TRANSFORMATION"
	ParameterExceptionFieldByteMatchPositionalConstraint    ParameterExceptionField = "BYTE_MATCH_POSITIONAL_CONSTRAINT"
	ParameterExceptionFieldSizeConstraintComparisonOperator ParameterExceptionField = "SIZE_CONSTRAINT_COMPARISON_OPERATOR"
	ParameterExceptionFieldGeoMatchLocationType             ParameterExceptionField = "GEO_MATCH_LOCATION_TYPE"
	ParameterExceptionFieldGeoMatchLocationValue            ParameterExceptionField = "GEO_MATCH_LOCATION_VALUE"
	ParameterExceptionFieldRateKey                          ParameterExceptionField = "RATE_KEY"
	ParameterExceptionFieldRuleType                         ParameterExceptionField = "RULE_TYPE"
	ParameterExceptionFieldNextMarker                       ParameterExceptionField = "NEXT_MARKER"
	ParameterExceptionFieldResourceArn                      ParameterExceptionField = "RESOURCE_ARN"
	ParameterExceptionFieldTags                             ParameterExceptionField = "TAGS"
	ParameterExceptionFieldTagKeys                          ParameterExceptionField = "TAG_KEYS"
)

Enum values for ParameterExceptionField

func (ParameterExceptionField) MarshalValue added in v0.3.0

func (enum ParameterExceptionField) MarshalValue() (string, error)

func (ParameterExceptionField) MarshalValueBuf added in v0.3.0

func (enum ParameterExceptionField) MarshalValueBuf(b []byte) ([]byte, error)

type ParameterExceptionReason

type ParameterExceptionReason string
const (
	ParameterExceptionReasonInvalidOption      ParameterExceptionReason = "INVALID_OPTION"
	ParameterExceptionReasonIllegalCombination ParameterExceptionReason = "ILLEGAL_COMBINATION"
	ParameterExceptionReasonIllegalArgument    ParameterExceptionReason = "ILLEGAL_ARGUMENT"
	ParameterExceptionReasonInvalidTagKey      ParameterExceptionReason = "INVALID_TAG_KEY"
)

Enum values for ParameterExceptionReason

func (ParameterExceptionReason) MarshalValue added in v0.3.0

func (enum ParameterExceptionReason) MarshalValue() (string, error)

func (ParameterExceptionReason) MarshalValueBuf added in v0.3.0

func (enum ParameterExceptionReason) MarshalValueBuf(b []byte) ([]byte, error)

type PositionalConstraint

type PositionalConstraint string
const (
	PositionalConstraintExactly      PositionalConstraint = "EXACTLY"
	PositionalConstraintStartsWith   PositionalConstraint = "STARTS_WITH"
	PositionalConstraintEndsWith     PositionalConstraint = "ENDS_WITH"
	PositionalConstraintContains     PositionalConstraint = "CONTAINS"
	PositionalConstraintContainsWord PositionalConstraint = "CONTAINS_WORD"
)

Enum values for PositionalConstraint

func (PositionalConstraint) MarshalValue added in v0.3.0

func (enum PositionalConstraint) MarshalValue() (string, error)

func (PositionalConstraint) MarshalValueBuf added in v0.3.0

func (enum PositionalConstraint) MarshalValueBuf(b []byte) ([]byte, error)

type Predicate

type Predicate struct {

	// A unique identifier for a predicate in a Rule, such as ByteMatchSetId or
	// IPSetId. The ID is returned by the corresponding Create or List command.
	//
	// DataId is a required field
	DataId *string `min:"1" type:"string" required:"true"`

	// Set Negated to False if you want AWS WAF to allow, block, or count requests
	// based on the settings in the specified ByteMatchSet, IPSet, SqlInjectionMatchSet,
	// XssMatchSet, RegexMatchSet, GeoMatchSet, or SizeConstraintSet. For example,
	// if an IPSet includes the IP address 192.0.2.44, AWS WAF will allow or block
	// requests based on that IP address.
	//
	// Set Negated to True if you want AWS WAF to allow or block a request based
	// on the negation of the settings in the ByteMatchSet, IPSet, SqlInjectionMatchSet,
	// XssMatchSet, RegexMatchSet, GeoMatchSet, or SizeConstraintSet. For example,
	// if an IPSet includes the IP address 192.0.2.44, AWS WAF will allow, block,
	// or count requests based on all IP addresses except 192.0.2.44.
	//
	// Negated is a required field
	Negated *bool `type:"boolean" required:"true"`

	// The type of predicate in a Rule, such as ByteMatch or IPSet.
	//
	// Type is a required field
	Type PredicateType `type:"string" required:"true" enum:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Specifies the ByteMatchSet, IPSet, SqlInjectionMatchSet, XssMatchSet, RegexMatchSet, GeoMatchSet, and SizeConstraintSet objects that you want to add to a Rule and, for each object, indicates whether you want to negate the settings, for example, requests that do NOT originate from the IP address 192.0.2.44.

func (Predicate) String

func (s Predicate) String() string

String returns the string representation

func (*Predicate) Validate

func (s *Predicate) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type PredicateType

type PredicateType string
const (
	PredicateTypeIpmatch           PredicateType = "IPMatch"
	PredicateTypeByteMatch         PredicateType = "ByteMatch"
	PredicateTypeSqlInjectionMatch PredicateType = "SqlInjectionMatch"
	PredicateTypeGeoMatch          PredicateType = "GeoMatch"
	PredicateTypeSizeConstraint    PredicateType = "SizeConstraint"
	PredicateTypeXssMatch          PredicateType = "XssMatch"
	PredicateTypeRegexMatch        PredicateType = "RegexMatch"
)

Enum values for PredicateType

func (PredicateType) MarshalValue added in v0.3.0

func (enum PredicateType) MarshalValue() (string, error)

func (PredicateType) MarshalValueBuf added in v0.3.0

func (enum PredicateType) MarshalValueBuf(b []byte) ([]byte, error)

type PutLoggingConfigurationInput added in v0.5.0

type PutLoggingConfigurationInput struct {

	// The Amazon Kinesis Data Firehose that contains the inspected traffic information,
	// the redacted fields details, and the Amazon Resource Name (ARN) of the web
	// ACL to monitor.
	//
	// When specifying Type in RedactedFields, you must use one of the following
	// values: URI, QUERY_STRING, HEADER, or METHOD.
	//
	// LoggingConfiguration is a required field
	LoggingConfiguration *LoggingConfiguration `type:"structure" required:"true"`
	// contains filtered or unexported fields
}

func (PutLoggingConfigurationInput) String added in v0.5.0

String returns the string representation

func (*PutLoggingConfigurationInput) Validate added in v0.5.0

func (s *PutLoggingConfigurationInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type PutLoggingConfigurationOutput added in v0.5.0

type PutLoggingConfigurationOutput struct {

	// The LoggingConfiguration that you submitted in the request.
	LoggingConfiguration *LoggingConfiguration `type:"structure"`
	// contains filtered or unexported fields
}

func (PutLoggingConfigurationOutput) String added in v0.5.0

String returns the string representation

type PutLoggingConfigurationRequest added in v0.5.0

type PutLoggingConfigurationRequest struct {
	*aws.Request
	Input *PutLoggingConfigurationInput
	Copy  func(*PutLoggingConfigurationInput) PutLoggingConfigurationRequest
}

PutLoggingConfigurationRequest is the request type for the PutLoggingConfiguration API operation.

func (PutLoggingConfigurationRequest) Send added in v0.5.0

Send marshals and sends the PutLoggingConfiguration API request.

type PutLoggingConfigurationResponse added in v0.9.0

type PutLoggingConfigurationResponse struct {
	*PutLoggingConfigurationOutput
	// contains filtered or unexported fields
}

PutLoggingConfigurationResponse is the response type for the PutLoggingConfiguration API operation.

func (*PutLoggingConfigurationResponse) SDKResponseMetdata added in v0.9.0

func (r *PutLoggingConfigurationResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the PutLoggingConfiguration request.

type PutPermissionPolicyInput added in v0.3.0

type PutPermissionPolicyInput struct {

	// The policy to attach to the specified RuleGroup.
	//
	// Policy is a required field
	Policy *string `min:"1" type:"string" required:"true"`

	// The Amazon Resource Name (ARN) of the RuleGroup to which you want to attach
	// the policy.
	//
	// ResourceArn is a required field
	ResourceArn *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (PutPermissionPolicyInput) String added in v0.3.0

func (s PutPermissionPolicyInput) String() string

String returns the string representation

func (*PutPermissionPolicyInput) Validate added in v0.3.0

func (s *PutPermissionPolicyInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type PutPermissionPolicyOutput added in v0.3.0

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

func (PutPermissionPolicyOutput) String added in v0.3.0

func (s PutPermissionPolicyOutput) String() string

String returns the string representation

type PutPermissionPolicyRequest added in v0.3.0

type PutPermissionPolicyRequest struct {
	*aws.Request
	Input *PutPermissionPolicyInput
	Copy  func(*PutPermissionPolicyInput) PutPermissionPolicyRequest
}

PutPermissionPolicyRequest is the request type for the PutPermissionPolicy API operation.

func (PutPermissionPolicyRequest) Send added in v0.3.0

Send marshals and sends the PutPermissionPolicy API request.

type PutPermissionPolicyResponse added in v0.9.0

type PutPermissionPolicyResponse struct {
	*PutPermissionPolicyOutput
	// contains filtered or unexported fields
}

PutPermissionPolicyResponse is the response type for the PutPermissionPolicy API operation.

func (*PutPermissionPolicyResponse) SDKResponseMetdata added in v0.9.0

func (r *PutPermissionPolicyResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the PutPermissionPolicy request.

type RateBasedRule

type RateBasedRule struct {

	// The Predicates object contains one Predicate element for each ByteMatchSet,
	// IPSet, or SqlInjectionMatchSet object that you want to include in a RateBasedRule.
	//
	// MatchPredicates is a required field
	MatchPredicates []Predicate `type:"list" required:"true"`

	// A friendly name or description for the metrics for a RateBasedRule. The name
	// can contain only alphanumeric characters (A-Z, a-z, 0-9), with maximum length
	// 128 and minimum length one. It can't contain whitespace or metric names reserved
	// for AWS WAF, including "All" and "Default_Action." You can't change the name
	// of the metric after you create the RateBasedRule.
	MetricName *string `min:"1" type:"string"`

	// A friendly name or description for a RateBasedRule. You can't change the
	// name of a RateBasedRule after you create it.
	Name *string `min:"1" type:"string"`

	// The field that AWS WAF uses to determine if requests are likely arriving
	// from single source and thus subject to rate monitoring. The only valid value
	// for RateKey is IP. IP indicates that requests arriving from the same IP address
	// are subject to the RateLimit that is specified in the RateBasedRule.
	//
	// RateKey is a required field
	RateKey RateKey `type:"string" required:"true" enum:"true"`

	// The maximum number of requests, which have an identical value in the field
	// specified by the RateKey, allowed in a five-minute period. If the number
	// of requests exceeds the RateLimit and the other predicates specified in the
	// rule are also met, AWS WAF triggers the action that is specified for this
	// rule.
	//
	// RateLimit is a required field
	RateLimit *int64 `min:"100" type:"long" required:"true"`

	// A unique identifier for a RateBasedRule. You use RuleId to get more information
	// about a RateBasedRule (see GetRateBasedRule), update a RateBasedRule (see
	// UpdateRateBasedRule), insert a RateBasedRule into a WebACL or delete one
	// from a WebACL (see UpdateWebACL), or delete a RateBasedRule from AWS WAF
	// (see DeleteRateBasedRule).
	//
	// RuleId is a required field
	RuleId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

A RateBasedRule is identical to a regular Rule, with one addition: a RateBasedRule counts the number of requests that arrive from a specified IP address every five minutes. For example, based on recent requests that you've seen from an attacker, you might create a RateBasedRule that includes the following conditions:

  • The requests come from 192.0.2.44.

  • They contain the value BadBot in the User-Agent header.

In the rule, you also define the rate limit as 1,000.

Requests that meet both of these conditions and exceed 1,000 requests every five minutes trigger the rule's action (block or count), which is defined in the web ACL.

func (RateBasedRule) String

func (s RateBasedRule) String() string

String returns the string representation

type RateKey

type RateKey string
const (
	RateKeyIp RateKey = "IP"
)

Enum values for RateKey

func (RateKey) MarshalValue added in v0.3.0

func (enum RateKey) MarshalValue() (string, error)

func (RateKey) MarshalValueBuf added in v0.3.0

func (enum RateKey) MarshalValueBuf(b []byte) ([]byte, error)

type RegexMatchSet added in v0.2.0

type RegexMatchSet struct {

	// A friendly name or description of the RegexMatchSet. You can't change Name
	// after you create a RegexMatchSet.
	Name *string `min:"1" type:"string"`

	// The RegexMatchSetId for a RegexMatchSet. You use RegexMatchSetId to get information
	// about a RegexMatchSet (see GetRegexMatchSet), update a RegexMatchSet (see
	// UpdateRegexMatchSet), insert a RegexMatchSet into a Rule or delete one from
	// a Rule (see UpdateRule), and delete a RegexMatchSet from AWS WAF (see DeleteRegexMatchSet).
	//
	// RegexMatchSetId is returned by CreateRegexMatchSet and by ListRegexMatchSets.
	RegexMatchSetId *string `min:"1" type:"string"`

	// Contains an array of RegexMatchTuple objects. Each RegexMatchTuple object
	// contains:
	//
	//    * 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 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.
	RegexMatchTuples []RegexMatchTuple `type:"list"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

In a GetRegexMatchSet request, RegexMatchSet is a complex type that contains the RegexMatchSetId and Name of a RegexMatchSet, and the values that you specified when you updated the RegexMatchSet.

The values are contained in a RegexMatchTuple object, which specify the parts of web requests that you want AWS WAF to inspect and the values that you want AWS WAF to search for. If a RegexMatchSet contains more than one RegexMatchTuple object, a request needs to match the settings in only one ByteMatchTuple to be considered a match.

func (RegexMatchSet) String added in v0.2.0

func (s RegexMatchSet) String() string

String returns the string representation

type RegexMatchSetSummary added in v0.2.0

type RegexMatchSetSummary struct {

	// A friendly name or description of the RegexMatchSet. You can't change Name
	// after you create a RegexMatchSet.
	//
	// Name is a required field
	Name *string `min:"1" type:"string" required:"true"`

	// The RegexMatchSetId for a RegexMatchSet. You use RegexMatchSetId to get information
	// about a RegexMatchSet, update a RegexMatchSet, remove a RegexMatchSet from
	// a Rule, and delete a RegexMatchSet from AWS WAF.
	//
	// RegexMatchSetId is returned by CreateRegexMatchSet and by ListRegexMatchSets.
	//
	// RegexMatchSetId is a required field
	RegexMatchSetId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Returned by ListRegexMatchSets. Each RegexMatchSetSummary object includes the Name and RegexMatchSetId for one RegexMatchSet.

func (RegexMatchSetSummary) String added in v0.2.0

func (s RegexMatchSetSummary) String() string

String returns the string representation

type RegexMatchSetUpdate added in v0.2.0

type RegexMatchSetUpdate struct {

	// Specifies whether to insert or delete a RegexMatchTuple.
	//
	// Action is a required field
	Action ChangeAction `type:"string" required:"true" enum:"true"`

	// Information about the part of a web request that you want AWS WAF to inspect
	// and the identifier of the regular expression (regex) pattern that you want
	// AWS WAF to search for. If you specify DELETE for the value of Action, the
	// RegexMatchTuple values must exactly match the values in the RegexMatchTuple
	// that you want to delete from the RegexMatchSet.
	//
	// RegexMatchTuple is a required field
	RegexMatchTuple *RegexMatchTuple `type:"structure" required:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

In an UpdateRegexMatchSet request, RegexMatchSetUpdate specifies whether to insert or delete a RegexMatchTuple and includes the settings for the RegexMatchTuple.

func (RegexMatchSetUpdate) String added in v0.2.0

func (s RegexMatchSetUpdate) String() string

String returns the string representation

func (*RegexMatchSetUpdate) Validate added in v0.2.0

func (s *RegexMatchSetUpdate) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type RegexMatchTuple added in v0.2.0

type RegexMatchTuple struct {

	// Specifies where in a web request to look for the RegexPatternSet.
	//
	// FieldToMatch is a required field
	FieldToMatch *FieldToMatch `type:"structure" required:"true"`

	// The RegexPatternSetId for a RegexPatternSet. You use RegexPatternSetId to
	// get information about a RegexPatternSet (see GetRegexPatternSet), update
	// a RegexPatternSet (see UpdateRegexPatternSet), insert a RegexPatternSet into
	// a RegexMatchSet or delete one from a RegexMatchSet (see UpdateRegexMatchSet),
	// and delete an RegexPatternSet from AWS WAF (see DeleteRegexPatternSet).
	//
	// RegexPatternSetId is returned by CreateRegexPatternSet and by ListRegexPatternSets.
	//
	// RegexPatternSetId is a required field
	RegexPatternSetId *string `min:"1" type:"string" required:"true"`

	// Text transformations eliminate some of the unusual formatting that attackers
	// use in web requests in an effort to bypass AWS WAF. If you specify a transformation,
	// AWS WAF performs the transformation on RegexPatternSet before inspecting
	// a request for a match.
	//
	// You can only specify a single type of TextTransformation.
	//
	// CMD_LINE
	//
	// When you're concerned that attackers are injecting an operating system commandline
	// command and using unusual formatting to disguise some or all of the command,
	// use this option to perform the following transformations:
	//
	//    * Delete the following characters: \ " ' ^
	//
	//    * Delete spaces before the following characters: / (
	//
	//    * Replace the following characters with a space: , ;
	//
	//    * Replace multiple spaces with one space
	//
	//    * Convert uppercase letters (A-Z) to lowercase (a-z)
	//
	// COMPRESS_WHITE_SPACE
	//
	// Use this option to replace the following characters with a space character
	// (decimal 32):
	//
	//    * \f, formfeed, decimal 12
	//
	//    * \t, tab, decimal 9
	//
	//    * \n, newline, decimal 10
	//
	//    * \r, carriage return, decimal 13
	//
	//    * \v, vertical tab, decimal 11
	//
	//    * non-breaking space, decimal 160
	//
	// COMPRESS_WHITE_SPACE also replaces multiple spaces with one space.
	//
	// HTML_ENTITY_DECODE
	//
	// Use this option to replace HTML-encoded characters with unencoded characters.
	// HTML_ENTITY_DECODE performs the following operations:
	//
	//    * Replaces (ampersand)quot; with "
	//
	//    * Replaces (ampersand)nbsp; with a non-breaking space, decimal 160
	//
	//    * Replaces (ampersand)lt; with a "less than" symbol
	//
	//    * Replaces (ampersand)gt; with >
	//
	//    * Replaces characters that are represented in hexadecimal format, (ampersand)#xhhhh;,
	//    with the corresponding characters
	//
	//    * Replaces characters that are represented in decimal format, (ampersand)#nnnn;,
	//    with the corresponding characters
	//
	// LOWERCASE
	//
	// Use this option to convert uppercase letters (A-Z) to lowercase (a-z).
	//
	// URL_DECODE
	//
	// Use this option to decode a URL-encoded value.
	//
	// NONE
	//
	// Specify NONE if you don't want to perform any text transformations.
	//
	// TextTransformation is a required field
	TextTransformation TextTransformation `type:"string" required:"true" enum:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

The regular expression pattern that you want AWS WAF to search for in web requests, the location in requests that you want AWS WAF to search, and other settings. Each RegexMatchTuple object contains:

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

func (RegexMatchTuple) String added in v0.2.0

func (s RegexMatchTuple) String() string

String returns the string representation

func (*RegexMatchTuple) Validate added in v0.2.0

func (s *RegexMatchTuple) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type RegexPatternSet added in v0.2.0

type RegexPatternSet struct {

	// A friendly name or description of the RegexPatternSet. You can't change Name
	// after you create a RegexPatternSet.
	Name *string `min:"1" type:"string"`

	// The identifier for the RegexPatternSet. You use RegexPatternSetId to get
	// information about a RegexPatternSet, update a RegexPatternSet, remove a RegexPatternSet
	// from a RegexMatchSet, and delete a RegexPatternSet from AWS WAF.
	//
	// RegexMatchSetId is returned by CreateRegexPatternSet and by ListRegexPatternSets.
	//
	// RegexPatternSetId is a required field
	RegexPatternSetId *string `min:"1" type:"string" required:"true"`

	// Specifies the regular expression (regex) patterns that you want AWS WAF to
	// search for, such as B[a@]dB[o0]t.
	//
	// RegexPatternStrings is a required field
	RegexPatternStrings []string `type:"list" required:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

The RegexPatternSet specifies 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.

func (RegexPatternSet) String added in v0.2.0

func (s RegexPatternSet) String() string

String returns the string representation

type RegexPatternSetSummary added in v0.2.0

type RegexPatternSetSummary struct {

	// A friendly name or description of the RegexPatternSet. You can't change Name
	// after you create a RegexPatternSet.
	//
	// Name is a required field
	Name *string `min:"1" type:"string" required:"true"`

	// The RegexPatternSetId for a RegexPatternSet. You use RegexPatternSetId to
	// get information about a RegexPatternSet, update a RegexPatternSet, remove
	// a RegexPatternSet from a RegexMatchSet, and delete a RegexPatternSet from
	// AWS WAF.
	//
	// RegexPatternSetId is returned by CreateRegexPatternSet and by ListRegexPatternSets.
	//
	// RegexPatternSetId is a required field
	RegexPatternSetId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Returned by ListRegexPatternSets. Each RegexPatternSetSummary object includes the Name and RegexPatternSetId for one RegexPatternSet.

func (RegexPatternSetSummary) String added in v0.2.0

func (s RegexPatternSetSummary) String() string

String returns the string representation

type RegexPatternSetUpdate added in v0.2.0

type RegexPatternSetUpdate struct {

	// Specifies whether to insert or delete a RegexPatternString.
	//
	// Action is a required field
	Action ChangeAction `type:"string" required:"true" enum:"true"`

	// Specifies the regular expression (regex) pattern that you want AWS WAF to
	// search for, such as B[a@]dB[o0]t.
	//
	// RegexPatternString is a required field
	RegexPatternString *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

In an UpdateRegexPatternSet request, RegexPatternSetUpdate specifies whether to insert or delete a RegexPatternString and includes the settings for the RegexPatternString.

func (RegexPatternSetUpdate) String added in v0.2.0

func (s RegexPatternSetUpdate) String() string

String returns the string representation

func (*RegexPatternSetUpdate) Validate added in v0.2.0

func (s *RegexPatternSetUpdate) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type Rule

type Rule struct {

	// 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 MetricName
	// after you create the Rule.
	MetricName *string `min:"1" type:"string"`

	// The friendly name or description for the Rule. You can't change the name
	// of a Rule after you create it.
	Name *string `min:"1" type:"string"`

	// The Predicates object contains one Predicate element for each ByteMatchSet,
	// IPSet, or SqlInjectionMatchSet object that you want to include in a Rule.
	//
	// Predicates is a required field
	Predicates []Predicate `type:"list" required:"true"`

	// A unique identifier for a Rule. You use RuleId to get more information about
	// a Rule (see GetRule), update a Rule (see UpdateRule), insert a Rule into
	// a WebACL or delete a one from a WebACL (see UpdateWebACL), or delete a Rule
	// from AWS WAF (see DeleteRule).
	//
	// RuleId is returned by CreateRule and by ListRules.
	//
	// RuleId is a required field
	RuleId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

A combination of ByteMatchSet, IPSet, and/or SqlInjectionMatchSet objects that identify the web requests that you want to allow, block, or count. For example, you might create a Rule that includes the following predicates:

  • An IPSet that causes AWS WAF to search for web requests that originate from the IP address 192.0.2.44

  • A ByteMatchSet that causes AWS WAF to search for web requests for which the value of the User-Agent header is BadBot.

To match the settings in this Rule, a request must originate from 192.0.2.44 AND include a User-Agent header for which the value is BadBot.

func (Rule) String

func (s Rule) String() string

String returns the string representation

type RuleGroup added in v0.2.0

type RuleGroup struct {

	// A friendly name or description for the metrics for this RuleGroup. The name
	// can contain only alphanumeric characters (A-Z, a-z, 0-9), with maximum length
	// 128 and minimum length one. It can't contain whitespace or metric names reserved
	// for AWS WAF, including "All" and "Default_Action." You can't change the name
	// of the metric after you create the RuleGroup.
	MetricName *string `min:"1" type:"string"`

	// The friendly name or description for the RuleGroup. You can't change the
	// name of a RuleGroup after you create it.
	Name *string `min:"1" type:"string"`

	// A unique identifier for a RuleGroup. You use RuleGroupId to get more information
	// about a RuleGroup (see GetRuleGroup), update a RuleGroup (see UpdateRuleGroup),
	// insert a RuleGroup into a WebACL or delete a one from a WebACL (see UpdateWebACL),
	// or delete a RuleGroup from AWS WAF (see DeleteRuleGroup).
	//
	// RuleGroupId is returned by CreateRuleGroup and by ListRuleGroups.
	//
	// RuleGroupId is a required field
	RuleGroupId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

A collection of predefined rules that you can add to a web ACL.

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.

func (RuleGroup) String added in v0.2.0

func (s RuleGroup) String() string

String returns the string representation

type RuleGroupSummary added in v0.2.0

type RuleGroupSummary struct {

	// A friendly name or description of the RuleGroup. You can't change the name
	// of a RuleGroup after you create it.
	//
	// Name is a required field
	Name *string `min:"1" type:"string" required:"true"`

	// A unique identifier for a RuleGroup. You use RuleGroupId to get more information
	// about a RuleGroup (see GetRuleGroup), update a RuleGroup (see UpdateRuleGroup),
	// insert a RuleGroup into a WebACL or delete one from a WebACL (see UpdateWebACL),
	// or delete a RuleGroup from AWS WAF (see DeleteRuleGroup).
	//
	// RuleGroupId is returned by CreateRuleGroup and by ListRuleGroups.
	//
	// RuleGroupId is a required field
	RuleGroupId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Contains the identifier and the friendly name or description of the RuleGroup.

func (RuleGroupSummary) String added in v0.2.0

func (s RuleGroupSummary) String() string

String returns the string representation

type RuleGroupUpdate added in v0.2.0

type RuleGroupUpdate struct {

	// Specify INSERT to add an ActivatedRule to a RuleGroup. Use DELETE to remove
	// an ActivatedRule from a RuleGroup.
	//
	// Action is a required field
	Action ChangeAction `type:"string" required:"true" enum:"true"`

	// The ActivatedRule object specifies a Rule that you want to insert or delete,
	// the priority of the Rule in the WebACL, and the action that you want AWS
	// WAF to take when a web request matches the Rule (ALLOW, BLOCK, or COUNT).
	//
	// ActivatedRule is a required field
	ActivatedRule *ActivatedRule `type:"structure" required:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Specifies an ActivatedRule and indicates whether you want to add it to a RuleGroup or delete it from a RuleGroup.

func (RuleGroupUpdate) String added in v0.2.0

func (s RuleGroupUpdate) String() string

String returns the string representation

func (*RuleGroupUpdate) Validate added in v0.2.0

func (s *RuleGroupUpdate) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type RuleSummary

type RuleSummary struct {

	// A friendly name or description of the Rule. You can't change the name of
	// a Rule after you create it.
	//
	// Name is a required field
	Name *string `min:"1" type:"string" required:"true"`

	// A unique identifier for a Rule. You use RuleId to get more information about
	// a Rule (see GetRule), update a Rule (see UpdateRule), insert a Rule into
	// a WebACL or delete one from a WebACL (see UpdateWebACL), or delete a Rule
	// from AWS WAF (see DeleteRule).
	//
	// RuleId is returned by CreateRule and by ListRules.
	//
	// RuleId is a required field
	RuleId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Contains the identifier and the friendly name or description of the Rule.

func (RuleSummary) String

func (s RuleSummary) String() string

String returns the string representation

type RuleUpdate

type RuleUpdate struct {

	// Specify INSERT to add a Predicate to a Rule. Use DELETE to remove a Predicate
	// from a Rule.
	//
	// Action is a required field
	Action ChangeAction `type:"string" required:"true" enum:"true"`

	// The ID of the Predicate (such as an IPSet) that you want to add to a Rule.
	//
	// Predicate is a required field
	Predicate *Predicate `type:"structure" required:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Specifies a Predicate (such as an IPSet) and indicates whether you want to add it to a Rule or delete it from a Rule.

func (RuleUpdate) String

func (s RuleUpdate) String() string

String returns the string representation

func (*RuleUpdate) Validate

func (s *RuleUpdate) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type SampledHTTPRequest

type SampledHTTPRequest struct {

	// The action for the Rule that the request matched: ALLOW, BLOCK, or COUNT.
	Action *string `type:"string"`

	// A complex type that contains detailed information about the request.
	//
	// Request is a required field
	Request *HTTPRequest `type:"structure" required:"true"`

	// This value is returned if the GetSampledRequests request specifies the ID
	// of a RuleGroup rather than the ID of an individual rule. RuleWithinRuleGroup
	// is the rule within the specified RuleGroup that matched the request listed
	// in the response.
	RuleWithinRuleGroup *string `min:"1" type:"string"`

	// The time at which AWS WAF received the request from your AWS resource, in
	// Unix time format (in seconds).
	Timestamp *time.Time `type:"timestamp"`

	// A value that indicates how one result in the response relates proportionally
	// to other results in the response. A result that has a weight of 2 represents
	// roughly twice as many CloudFront web requests as a result that has a weight
	// of 1.
	//
	// Weight is a required field
	Weight *int64 `type:"long" required:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

The response from a GetSampledRequests request includes a SampledHTTPRequests complex type that appears as SampledRequests in the response syntax. SampledHTTPRequests contains one SampledHTTPRequest object for each web request that is returned by GetSampledRequests.

func (SampledHTTPRequest) String

func (s SampledHTTPRequest) String() string

String returns the string representation

type SizeConstraint

type SizeConstraint struct {

	// The type of comparison you want AWS WAF to perform. AWS WAF uses this in
	// combination with the provided Size and FieldToMatch to build an expression
	// in the form of "Size ComparisonOperator size in bytes of FieldToMatch". If
	// that expression is true, the SizeConstraint is considered to match.
	//
	// EQ: Used to test if the Size is equal to the size of the FieldToMatch
	//
	// NE: Used to test if the Size is not equal to the size of the FieldToMatch
	//
	// LE: Used to test if the Size is less than or equal to the size of the FieldToMatch
	//
	// LT: Used to test if the Size is strictly less than the size of the FieldToMatch
	//
	// GE: Used to test if the Size is greater than or equal to the size of the
	// FieldToMatch
	//
	// GT: Used to test if the Size is strictly greater than the size of the FieldToMatch
	//
	// ComparisonOperator is a required field
	ComparisonOperator ComparisonOperator `type:"string" required:"true" enum:"true"`

	// Specifies where in a web request to look for the size constraint.
	//
	// FieldToMatch is a required field
	FieldToMatch *FieldToMatch `type:"structure" required:"true"`

	// The size in bytes that you want AWS WAF to compare against the size of the
	// specified FieldToMatch. AWS WAF uses this in combination with ComparisonOperator
	// and FieldToMatch to build an expression in the form of "Size ComparisonOperator
	// size in bytes of FieldToMatch". If that expression is true, the SizeConstraint
	// is considered to match.
	//
	// Valid values for size are 0 - 21474836480 bytes (0 - 20 GB).
	//
	// If you specify URI for the value of Type, the / in the URI counts as one
	// character. For example, the URI /logo.jpg is nine characters long.
	//
	// Size is a required field
	Size *int64 `type:"long" required:"true"`

	// Text transformations eliminate some of the unusual formatting that attackers
	// use in web requests in an effort to bypass AWS WAF. If you specify a transformation,
	// AWS WAF performs the transformation on FieldToMatch before inspecting it
	// for a match.
	//
	// You can only specify a single type of TextTransformation.
	//
	// Note that if you choose BODY for the value of Type, you must choose NONE
	// for TextTransformation because CloudFront forwards only the first 8192 bytes
	// for inspection.
	//
	// NONE
	//
	// Specify NONE if you don't want to perform any text transformations.
	//
	// CMD_LINE
	//
	// When you're concerned that attackers are injecting an operating system command
	// line command and using unusual formatting to disguise some or all of the
	// command, use this option to perform the following transformations:
	//
	//    * Delete the following characters: \ " ' ^
	//
	//    * Delete spaces before the following characters: / (
	//
	//    * Replace the following characters with a space: , ;
	//
	//    * Replace multiple spaces with one space
	//
	//    * Convert uppercase letters (A-Z) to lowercase (a-z)
	//
	// COMPRESS_WHITE_SPACE
	//
	// Use this option to replace the following characters with a space character
	// (decimal 32):
	//
	//    * \f, formfeed, decimal 12
	//
	//    * \t, tab, decimal 9
	//
	//    * \n, newline, decimal 10
	//
	//    * \r, carriage return, decimal 13
	//
	//    * \v, vertical tab, decimal 11
	//
	//    * non-breaking space, decimal 160
	//
	// COMPRESS_WHITE_SPACE also replaces multiple spaces with one space.
	//
	// HTML_ENTITY_DECODE
	//
	// Use this option to replace HTML-encoded characters with unencoded characters.
	// HTML_ENTITY_DECODE performs the following operations:
	//
	//    * Replaces (ampersand)quot; with "
	//
	//    * Replaces (ampersand)nbsp; with a non-breaking space, decimal 160
	//
	//    * Replaces (ampersand)lt; with a "less than" symbol
	//
	//    * Replaces (ampersand)gt; with >
	//
	//    * Replaces characters that are represented in hexadecimal format, (ampersand)#xhhhh;,
	//    with the corresponding characters
	//
	//    * Replaces characters that are represented in decimal format, (ampersand)#nnnn;,
	//    with the corresponding characters
	//
	// LOWERCASE
	//
	// Use this option to convert uppercase letters (A-Z) to lowercase (a-z).
	//
	// URL_DECODE
	//
	// Use this option to decode a URL-encoded value.
	//
	// TextTransformation is a required field
	TextTransformation TextTransformation `type:"string" required:"true" enum:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Specifies a constraint on the size of a part of the web request. AWS WAF uses the Size, ComparisonOperator, and FieldToMatch to build an expression in the form of "Size ComparisonOperator size in bytes of FieldToMatch". If that expression is true, the SizeConstraint is considered to match.

func (SizeConstraint) String

func (s SizeConstraint) String() string

String returns the string representation

func (*SizeConstraint) Validate

func (s *SizeConstraint) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type SizeConstraintSet

type SizeConstraintSet struct {

	// The name, if any, of the SizeConstraintSet.
	Name *string `min:"1" type:"string"`

	// A unique identifier for a SizeConstraintSet. You use SizeConstraintSetId
	// to get information about a SizeConstraintSet (see GetSizeConstraintSet),
	// update a SizeConstraintSet (see UpdateSizeConstraintSet), insert a SizeConstraintSet
	// into a Rule or delete one from a Rule (see UpdateRule), and delete a SizeConstraintSet
	// from AWS WAF (see DeleteSizeConstraintSet).
	//
	// SizeConstraintSetId is returned by CreateSizeConstraintSet and by ListSizeConstraintSets.
	//
	// SizeConstraintSetId is a required field
	SizeConstraintSetId *string `min:"1" type:"string" required:"true"`

	// Specifies the parts of web requests that you want to inspect the size of.
	//
	// SizeConstraints is a required field
	SizeConstraints []SizeConstraint `type:"list" required:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

A complex type that contains SizeConstraint objects, which specify the parts of web requests that you want AWS WAF to inspect the size of. If a SizeConstraintSet contains more than one SizeConstraint object, a request only needs to match one constraint to be considered a match.

func (SizeConstraintSet) String

func (s SizeConstraintSet) String() string

String returns the string representation

type SizeConstraintSetSummary

type SizeConstraintSetSummary struct {

	// The name of the SizeConstraintSet, if any.
	//
	// Name is a required field
	Name *string `min:"1" type:"string" required:"true"`

	// A unique identifier for a SizeConstraintSet. You use SizeConstraintSetId
	// to get information about a SizeConstraintSet (see GetSizeConstraintSet),
	// update a SizeConstraintSet (see UpdateSizeConstraintSet), insert a SizeConstraintSet
	// into a Rule or delete one from a Rule (see UpdateRule), and delete a SizeConstraintSet
	// from AWS WAF (see DeleteSizeConstraintSet).
	//
	// SizeConstraintSetId is returned by CreateSizeConstraintSet and by ListSizeConstraintSets.
	//
	// SizeConstraintSetId is a required field
	SizeConstraintSetId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

The Id and Name of a SizeConstraintSet.

func (SizeConstraintSetSummary) String

func (s SizeConstraintSetSummary) String() string

String returns the string representation

type SizeConstraintSetUpdate

type SizeConstraintSetUpdate struct {

	// Specify INSERT to add a SizeConstraintSetUpdate to a SizeConstraintSet. Use
	// DELETE to remove a SizeConstraintSetUpdate from a SizeConstraintSet.
	//
	// Action is a required field
	Action ChangeAction `type:"string" required:"true" enum:"true"`

	// Specifies a constraint on the size of a part of the web request. AWS WAF
	// uses the Size, ComparisonOperator, and FieldToMatch to build an expression
	// in the form of "Size ComparisonOperator size in bytes of FieldToMatch". If
	// that expression is true, the SizeConstraint is considered to match.
	//
	// SizeConstraint is a required field
	SizeConstraint *SizeConstraint `type:"structure" required:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Specifies the part of a web request that you want to inspect the size of and indicates whether you want to add the specification to a SizeConstraintSet or delete it from a SizeConstraintSet.

func (SizeConstraintSetUpdate) String

func (s SizeConstraintSetUpdate) String() string

String returns the string representation

func (*SizeConstraintSetUpdate) Validate

func (s *SizeConstraintSetUpdate) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type SqlInjectionMatchSet

type SqlInjectionMatchSet struct {

	// The name, if any, of the SqlInjectionMatchSet.
	Name *string `min:"1" type:"string"`

	// A unique identifier for a SqlInjectionMatchSet. You use SqlInjectionMatchSetId
	// to get information about a SqlInjectionMatchSet (see GetSqlInjectionMatchSet),
	// update a SqlInjectionMatchSet (see UpdateSqlInjectionMatchSet), insert a
	// SqlInjectionMatchSet into a Rule or delete one from a Rule (see UpdateRule),
	// and delete a SqlInjectionMatchSet from AWS WAF (see DeleteSqlInjectionMatchSet).
	//
	// SqlInjectionMatchSetId is returned by CreateSqlInjectionMatchSet and by ListSqlInjectionMatchSets.
	//
	// SqlInjectionMatchSetId is a required field
	SqlInjectionMatchSetId *string `min:"1" type:"string" required:"true"`

	// Specifies the parts of web requests that you want to inspect for snippets
	// of malicious SQL code.
	//
	// SqlInjectionMatchTuples is a required field
	SqlInjectionMatchTuples []SqlInjectionMatchTuple `type:"list" required:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

A complex type that contains SqlInjectionMatchTuple objects, which specify the parts of web requests that you want AWS WAF to inspect for snippets of malicious SQL code and, if you want AWS WAF to inspect a header, the name of the header. If a SqlInjectionMatchSet contains more than one SqlInjectionMatchTuple object, a request needs to include snippets of SQL code in only one of the specified parts of the request to be considered a match.

func (SqlInjectionMatchSet) String

func (s SqlInjectionMatchSet) String() string

String returns the string representation

type SqlInjectionMatchSetSummary

type SqlInjectionMatchSetSummary struct {

	// The name of the SqlInjectionMatchSet, if any, specified by Id.
	//
	// Name is a required field
	Name *string `min:"1" type:"string" required:"true"`

	// A unique identifier for a SqlInjectionMatchSet. You use SqlInjectionMatchSetId
	// to get information about a SqlInjectionMatchSet (see GetSqlInjectionMatchSet),
	// update a SqlInjectionMatchSet (see UpdateSqlInjectionMatchSet), insert a
	// SqlInjectionMatchSet into a Rule or delete one from a Rule (see UpdateRule),
	// and delete a SqlInjectionMatchSet from AWS WAF (see DeleteSqlInjectionMatchSet).
	//
	// SqlInjectionMatchSetId is returned by CreateSqlInjectionMatchSet and by ListSqlInjectionMatchSets.
	//
	// SqlInjectionMatchSetId is a required field
	SqlInjectionMatchSetId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

The Id and Name of a SqlInjectionMatchSet.

func (SqlInjectionMatchSetSummary) String

String returns the string representation

type SqlInjectionMatchSetUpdate

type SqlInjectionMatchSetUpdate struct {

	// Specify INSERT to add a SqlInjectionMatchSetUpdate to a SqlInjectionMatchSet.
	// Use DELETE to remove a SqlInjectionMatchSetUpdate from a SqlInjectionMatchSet.
	//
	// Action is a required field
	Action ChangeAction `type:"string" required:"true" enum:"true"`

	// Specifies the part of a web request that you want AWS WAF to inspect for
	// snippets of malicious SQL code and, if you want AWS WAF to inspect a header,
	// the name of the header.
	//
	// SqlInjectionMatchTuple is a required field
	SqlInjectionMatchTuple *SqlInjectionMatchTuple `type:"structure" required:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Specifies the part of a web request that you want to inspect for snippets of malicious SQL code and indicates whether you want to add the specification to a SqlInjectionMatchSet or delete it from a SqlInjectionMatchSet.

func (SqlInjectionMatchSetUpdate) String

String returns the string representation

func (*SqlInjectionMatchSetUpdate) Validate

func (s *SqlInjectionMatchSetUpdate) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type SqlInjectionMatchTuple

type SqlInjectionMatchTuple struct {

	// Specifies where in a web request to look for snippets of malicious SQL code.
	//
	// FieldToMatch is a required field
	FieldToMatch *FieldToMatch `type:"structure" required:"true"`

	// Text transformations eliminate some of the unusual formatting that attackers
	// use in web requests in an effort to bypass AWS WAF. If you specify a transformation,
	// AWS WAF performs the transformation on FieldToMatch before inspecting it
	// for a match.
	//
	// You can only specify a single type of TextTransformation.
	//
	// CMD_LINE
	//
	// When you're concerned that attackers are injecting an operating system command
	// line command and using unusual formatting to disguise some or all of the
	// command, use this option to perform the following transformations:
	//
	//    * Delete the following characters: \ " ' ^
	//
	//    * Delete spaces before the following characters: / (
	//
	//    * Replace the following characters with a space: , ;
	//
	//    * Replace multiple spaces with one space
	//
	//    * Convert uppercase letters (A-Z) to lowercase (a-z)
	//
	// COMPRESS_WHITE_SPACE
	//
	// Use this option to replace the following characters with a space character
	// (decimal 32):
	//
	//    * \f, formfeed, decimal 12
	//
	//    * \t, tab, decimal 9
	//
	//    * \n, newline, decimal 10
	//
	//    * \r, carriage return, decimal 13
	//
	//    * \v, vertical tab, decimal 11
	//
	//    * non-breaking space, decimal 160
	//
	// COMPRESS_WHITE_SPACE also replaces multiple spaces with one space.
	//
	// HTML_ENTITY_DECODE
	//
	// Use this option to replace HTML-encoded characters with unencoded characters.
	// HTML_ENTITY_DECODE performs the following operations:
	//
	//    * Replaces (ampersand)quot; with "
	//
	//    * Replaces (ampersand)nbsp; with a non-breaking space, decimal 160
	//
	//    * Replaces (ampersand)lt; with a "less than" symbol
	//
	//    * Replaces (ampersand)gt; with >
	//
	//    * Replaces characters that are represented in hexadecimal format, (ampersand)#xhhhh;,
	//    with the corresponding characters
	//
	//    * Replaces characters that are represented in decimal format, (ampersand)#nnnn;,
	//    with the corresponding characters
	//
	// LOWERCASE
	//
	// Use this option to convert uppercase letters (A-Z) to lowercase (a-z).
	//
	// URL_DECODE
	//
	// Use this option to decode a URL-encoded value.
	//
	// NONE
	//
	// Specify NONE if you don't want to perform any text transformations.
	//
	// TextTransformation is a required field
	TextTransformation TextTransformation `type:"string" required:"true" enum:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Specifies the part of a web request that you want AWS WAF to inspect for snippets of malicious SQL code and, if you want AWS WAF to inspect a header, the name of the header.

func (SqlInjectionMatchTuple) String

func (s SqlInjectionMatchTuple) String() string

String returns the string representation

func (*SqlInjectionMatchTuple) Validate

func (s *SqlInjectionMatchTuple) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type SubscribedRuleGroupSummary added in v0.2.0

type SubscribedRuleGroupSummary struct {

	// A friendly name or description for the metrics for this RuleGroup. The name
	// can contain only alphanumeric characters (A-Z, a-z, 0-9), with maximum length
	// 128 and minimum length one. It can't contain whitespace or metric names reserved
	// for AWS WAF, including "All" and "Default_Action." You can't change the name
	// of the metric after you create the RuleGroup.
	//
	// MetricName is a required field
	MetricName *string `min:"1" type:"string" required:"true"`

	// A friendly name or description of the RuleGroup. You can't change the name
	// of a RuleGroup after you create it.
	//
	// Name is a required field
	Name *string `min:"1" type:"string" required:"true"`

	// A unique identifier for a RuleGroup.
	//
	// RuleGroupId is a required field
	RuleGroupId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

A summary of the rule groups you are subscribed to.

func (SubscribedRuleGroupSummary) String added in v0.2.0

String returns the string representation

type Tag added in v0.10.0

type Tag struct {

	// Key is a required field
	Key *string `min:"1" type:"string" required:"true"`

	// Value is a required field
	Value *string `type:"string" required:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

A tag associated with an 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 (Tag) String added in v0.10.0

func (s Tag) String() string

String returns the string representation

func (*Tag) Validate added in v0.10.0

func (s *Tag) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type TagInfoForResource added in v0.10.0

type TagInfoForResource struct {
	ResourceARN *string `min:"1" type:"string"`

	TagList []Tag `min:"1" type:"list"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Information for a tag associated with an 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 (TagInfoForResource) String added in v0.10.0

func (s TagInfoForResource) String() string

String returns the string representation

type TagResourceInput added in v0.10.0

type TagResourceInput struct {

	// ResourceARN is a required field
	ResourceARN *string `min:"1" type:"string" required:"true"`

	// Tags is a required field
	Tags []Tag `min:"1" type:"list" required:"true"`
	// contains filtered or unexported fields
}

func (TagResourceInput) String added in v0.10.0

func (s TagResourceInput) String() string

String returns the string representation

func (*TagResourceInput) Validate added in v0.10.0

func (s *TagResourceInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type TagResourceOutput added in v0.10.0

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

func (TagResourceOutput) String added in v0.10.0

func (s TagResourceOutput) String() string

String returns the string representation

type TagResourceRequest added in v0.10.0

type TagResourceRequest struct {
	*aws.Request
	Input *TagResourceInput
	Copy  func(*TagResourceInput) TagResourceRequest
}

TagResourceRequest is the request type for the TagResource API operation.

func (TagResourceRequest) Send added in v0.10.0

Send marshals and sends the TagResource API request.

type TagResourceResponse added in v0.10.0

type TagResourceResponse struct {
	*TagResourceOutput
	// contains filtered or unexported fields
}

TagResourceResponse is the response type for the TagResource API operation.

func (*TagResourceResponse) SDKResponseMetdata added in v0.10.0

func (r *TagResourceResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the TagResource request.

type TextTransformation

type TextTransformation string
const (
	TextTransformationNone               TextTransformation = "NONE"
	TextTransformationCompressWhiteSpace TextTransformation = "COMPRESS_WHITE_SPACE"
	TextTransformationHtmlEntityDecode   TextTransformation = "HTML_ENTITY_DECODE"
	TextTransformationLowercase          TextTransformation = "LOWERCASE"
	TextTransformationCmdLine            TextTransformation = "CMD_LINE"
	TextTransformationUrlDecode          TextTransformation = "URL_DECODE"
)

Enum values for TextTransformation

func (TextTransformation) MarshalValue added in v0.3.0

func (enum TextTransformation) MarshalValue() (string, error)

func (TextTransformation) MarshalValueBuf added in v0.3.0

func (enum TextTransformation) MarshalValueBuf(b []byte) ([]byte, error)

type TimeWindow

type TimeWindow struct {

	// The end of the time range from which you want GetSampledRequests to return
	// a sample of the requests that your AWS resource received. You must specify
	// the date and time 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.
	//
	// EndTime is a required field
	EndTime *time.Time `type:"timestamp" required:"true"`

	// The beginning of the time range from which you want GetSampledRequests to
	// return a sample of the requests that your AWS resource received. You must
	// specify the date and time 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.
	//
	// StartTime is a required field
	StartTime *time.Time `type:"timestamp" required:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

In a GetSampledRequests request, the StartTime and EndTime objects specify the time range for which you want AWS WAF to return a sample of web 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".

In a GetSampledRequests response, the StartTime and EndTime objects specify the time range for which AWS WAF actually returned a sample of web requests. AWS WAF gets the specified number of requests from among the first 5,000 requests that your AWS resource receives during the specified time period. If your resource receives more than 5,000 requests during that period, AWS WAF stops sampling after the 5,000th request. In that case, EndTime is the time that AWS WAF received the 5,000th request.

func (TimeWindow) String

func (s TimeWindow) String() string

String returns the string representation

func (*TimeWindow) Validate

func (s *TimeWindow) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type UntagResourceInput added in v0.10.0

type UntagResourceInput struct {

	// ResourceARN is a required field
	ResourceARN *string `min:"1" type:"string" required:"true"`

	// TagKeys is a required field
	TagKeys []string `min:"1" type:"list" required:"true"`
	// contains filtered or unexported fields
}

func (UntagResourceInput) String added in v0.10.0

func (s UntagResourceInput) String() string

String returns the string representation

func (*UntagResourceInput) Validate added in v0.10.0

func (s *UntagResourceInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type UntagResourceOutput added in v0.10.0

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

func (UntagResourceOutput) String added in v0.10.0

func (s UntagResourceOutput) String() string

String returns the string representation

type UntagResourceRequest added in v0.10.0

type UntagResourceRequest struct {
	*aws.Request
	Input *UntagResourceInput
	Copy  func(*UntagResourceInput) UntagResourceRequest
}

UntagResourceRequest is the request type for the UntagResource API operation.

func (UntagResourceRequest) Send added in v0.10.0

Send marshals and sends the UntagResource API request.

type UntagResourceResponse added in v0.10.0

type UntagResourceResponse struct {
	*UntagResourceOutput
	// contains filtered or unexported fields
}

UntagResourceResponse is the response type for the UntagResource API operation.

func (*UntagResourceResponse) SDKResponseMetdata added in v0.10.0

func (r *UntagResourceResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the UntagResource request.

type UpdateByteMatchSetInput

type UpdateByteMatchSetInput struct {

	// The ByteMatchSetId of the ByteMatchSet that you want to update. ByteMatchSetId
	// is returned by CreateByteMatchSet and by ListByteMatchSets.
	//
	// ByteMatchSetId is a required field
	ByteMatchSetId *string `min:"1" type:"string" required:"true"`

	// The value returned by the most recent call to GetChangeToken.
	//
	// ChangeToken is a required field
	ChangeToken *string `min:"1" type:"string" required:"true"`

	// An array of ByteMatchSetUpdate objects that you want to insert into or delete
	// from a ByteMatchSet. For more information, see the applicable data types:
	//
	//    * ByteMatchSetUpdate: Contains Action and ByteMatchTuple
	//
	//    * ByteMatchTuple: Contains FieldToMatch, PositionalConstraint, TargetString,
	//    and TextTransformation
	//
	//    * FieldToMatch: Contains Data and Type
	//
	// Updates is a required field
	Updates []ByteMatchSetUpdate `min:"1" type:"list" required:"true"`
	// contains filtered or unexported fields
}

func (UpdateByteMatchSetInput) String

func (s UpdateByteMatchSetInput) String() string

String returns the string representation

func (*UpdateByteMatchSetInput) Validate

func (s *UpdateByteMatchSetInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

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 `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (UpdateByteMatchSetOutput) String

func (s UpdateByteMatchSetOutput) String() string

String returns the string representation

type UpdateByteMatchSetRequest

type UpdateByteMatchSetRequest struct {
	*aws.Request
	Input *UpdateByteMatchSetInput
	Copy  func(*UpdateByteMatchSetInput) UpdateByteMatchSetRequest
}

UpdateByteMatchSetRequest is the request type for the UpdateByteMatchSet API operation.

func (UpdateByteMatchSetRequest) Send

Send marshals and sends the UpdateByteMatchSet API request.

type UpdateByteMatchSetResponse added in v0.9.0

type UpdateByteMatchSetResponse struct {
	*UpdateByteMatchSetOutput
	// contains filtered or unexported fields
}

UpdateByteMatchSetResponse is the response type for the UpdateByteMatchSet API operation.

func (*UpdateByteMatchSetResponse) SDKResponseMetdata added in v0.9.0

func (r *UpdateByteMatchSetResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the UpdateByteMatchSet request.

type UpdateGeoMatchSetInput added in v0.2.0

type UpdateGeoMatchSetInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// ChangeToken is a required field
	ChangeToken *string `min:"1" type:"string" required:"true"`

	// The GeoMatchSetId of the GeoMatchSet that you want to update. GeoMatchSetId
	// is returned by CreateGeoMatchSet and by ListGeoMatchSets.
	//
	// GeoMatchSetId is a required field
	GeoMatchSetId *string `min:"1" type:"string" required:"true"`

	// An array of GeoMatchSetUpdate objects that you want to insert into or delete
	// from an GeoMatchSet. For more information, see the applicable data types:
	//
	//    * GeoMatchSetUpdate: Contains Action and GeoMatchConstraint
	//
	//    * GeoMatchConstraint: Contains Type and Value You can have only one Type
	//    and Value per GeoMatchConstraint. To add multiple countries, include multiple
	//    GeoMatchSetUpdate objects in your request.
	//
	// Updates is a required field
	Updates []GeoMatchSetUpdate `min:"1" type:"list" required:"true"`
	// contains filtered or unexported fields
}

func (UpdateGeoMatchSetInput) String added in v0.2.0

func (s UpdateGeoMatchSetInput) String() string

String returns the string representation

func (*UpdateGeoMatchSetInput) Validate added in v0.2.0

func (s *UpdateGeoMatchSetInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type UpdateGeoMatchSetOutput added in v0.2.0

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 `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (UpdateGeoMatchSetOutput) String added in v0.2.0

func (s UpdateGeoMatchSetOutput) String() string

String returns the string representation

type UpdateGeoMatchSetRequest added in v0.2.0

type UpdateGeoMatchSetRequest struct {
	*aws.Request
	Input *UpdateGeoMatchSetInput
	Copy  func(*UpdateGeoMatchSetInput) UpdateGeoMatchSetRequest
}

UpdateGeoMatchSetRequest is the request type for the UpdateGeoMatchSet API operation.

func (UpdateGeoMatchSetRequest) Send added in v0.2.0

Send marshals and sends the UpdateGeoMatchSet API request.

type UpdateGeoMatchSetResponse added in v0.9.0

type UpdateGeoMatchSetResponse struct {
	*UpdateGeoMatchSetOutput
	// contains filtered or unexported fields
}

UpdateGeoMatchSetResponse is the response type for the UpdateGeoMatchSet API operation.

func (*UpdateGeoMatchSetResponse) SDKResponseMetdata added in v0.9.0

func (r *UpdateGeoMatchSetResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the UpdateGeoMatchSet request.

type UpdateIPSetInput

type UpdateIPSetInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// ChangeToken is a required field
	ChangeToken *string `min:"1" type:"string" required:"true"`

	// The IPSetId of the IPSet that you want to update. IPSetId is returned by
	// CreateIPSet and by ListIPSets.
	//
	// IPSetId is a required field
	IPSetId *string `min:"1" type:"string" required:"true"`

	// An array of IPSetUpdate objects that you want to insert into or delete from
	// an IPSet. For more information, see the applicable data types:
	//
	//    * IPSetUpdate: Contains Action and IPSetDescriptor
	//
	//    * IPSetDescriptor: Contains Type and Value
	//
	// You can insert a maximum of 1000 addresses in a single request.
	//
	// Updates is a required field
	Updates []IPSetUpdate `min:"1" type:"list" required:"true"`
	// contains filtered or unexported fields
}

func (UpdateIPSetInput) String

func (s UpdateIPSetInput) String() string

String returns the string representation

func (*UpdateIPSetInput) Validate

func (s *UpdateIPSetInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

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 `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (UpdateIPSetOutput) String

func (s UpdateIPSetOutput) String() string

String returns the string representation

type UpdateIPSetRequest

type UpdateIPSetRequest struct {
	*aws.Request
	Input *UpdateIPSetInput
	Copy  func(*UpdateIPSetInput) UpdateIPSetRequest
}

UpdateIPSetRequest is the request type for the UpdateIPSet API operation.

func (UpdateIPSetRequest) Send

Send marshals and sends the UpdateIPSet API request.

type UpdateIPSetResponse added in v0.9.0

type UpdateIPSetResponse struct {
	*UpdateIPSetOutput
	// contains filtered or unexported fields
}

UpdateIPSetResponse is the response type for the UpdateIPSet API operation.

func (*UpdateIPSetResponse) SDKResponseMetdata added in v0.9.0

func (r *UpdateIPSetResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the UpdateIPSet request.

type UpdateRateBasedRuleInput

type UpdateRateBasedRuleInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// ChangeToken is a required field
	ChangeToken *string `min:"1" type:"string" required:"true"`

	// The maximum number of requests, which have an identical value in the field
	// specified by the RateKey, allowed in a five-minute period. If the number
	// of requests exceeds the RateLimit and the other predicates specified in the
	// rule are also met, AWS WAF triggers the action that is specified for this
	// rule.
	//
	// RateLimit is a required field
	RateLimit *int64 `min:"100" type:"long" required:"true"`

	// The RuleId of the RateBasedRule that you want to update. RuleId is returned
	// by CreateRateBasedRule and by ListRateBasedRules.
	//
	// RuleId is a required field
	RuleId *string `min:"1" type:"string" required:"true"`

	// An array of RuleUpdate objects that you want to insert into or delete from
	// a RateBasedRule.
	//
	// Updates is a required field
	Updates []RuleUpdate `type:"list" required:"true"`
	// contains filtered or unexported fields
}

func (UpdateRateBasedRuleInput) String

func (s UpdateRateBasedRuleInput) String() string

String returns the string representation

func (*UpdateRateBasedRuleInput) Validate

func (s *UpdateRateBasedRuleInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

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 `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (UpdateRateBasedRuleOutput) String

func (s UpdateRateBasedRuleOutput) String() string

String returns the string representation

type UpdateRateBasedRuleRequest

type UpdateRateBasedRuleRequest struct {
	*aws.Request
	Input *UpdateRateBasedRuleInput
	Copy  func(*UpdateRateBasedRuleInput) UpdateRateBasedRuleRequest
}

UpdateRateBasedRuleRequest is the request type for the UpdateRateBasedRule API operation.

func (UpdateRateBasedRuleRequest) Send

Send marshals and sends the UpdateRateBasedRule API request.

type UpdateRateBasedRuleResponse added in v0.9.0

type UpdateRateBasedRuleResponse struct {
	*UpdateRateBasedRuleOutput
	// contains filtered or unexported fields
}

UpdateRateBasedRuleResponse is the response type for the UpdateRateBasedRule API operation.

func (*UpdateRateBasedRuleResponse) SDKResponseMetdata added in v0.9.0

func (r *UpdateRateBasedRuleResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the UpdateRateBasedRule request.

type UpdateRegexMatchSetInput added in v0.2.0

type UpdateRegexMatchSetInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// ChangeToken is a required field
	ChangeToken *string `min:"1" type:"string" required:"true"`

	// The RegexMatchSetId of the RegexMatchSet that you want to update. RegexMatchSetId
	// is returned by CreateRegexMatchSet and by ListRegexMatchSets.
	//
	// RegexMatchSetId is a required field
	RegexMatchSetId *string `min:"1" type:"string" required:"true"`

	// An array of RegexMatchSetUpdate objects that you want to insert into or delete
	// from a RegexMatchSet. For more information, see RegexMatchTuple.
	//
	// Updates is a required field
	Updates []RegexMatchSetUpdate `min:"1" type:"list" required:"true"`
	// contains filtered or unexported fields
}

func (UpdateRegexMatchSetInput) String added in v0.2.0

func (s UpdateRegexMatchSetInput) String() string

String returns the string representation

func (*UpdateRegexMatchSetInput) Validate added in v0.2.0

func (s *UpdateRegexMatchSetInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type UpdateRegexMatchSetOutput added in v0.2.0

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 `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (UpdateRegexMatchSetOutput) String added in v0.2.0

func (s UpdateRegexMatchSetOutput) String() string

String returns the string representation

type UpdateRegexMatchSetRequest added in v0.2.0

type UpdateRegexMatchSetRequest struct {
	*aws.Request
	Input *UpdateRegexMatchSetInput
	Copy  func(*UpdateRegexMatchSetInput) UpdateRegexMatchSetRequest
}

UpdateRegexMatchSetRequest is the request type for the UpdateRegexMatchSet API operation.

func (UpdateRegexMatchSetRequest) Send added in v0.2.0

Send marshals and sends the UpdateRegexMatchSet API request.

type UpdateRegexMatchSetResponse added in v0.9.0

type UpdateRegexMatchSetResponse struct {
	*UpdateRegexMatchSetOutput
	// contains filtered or unexported fields
}

UpdateRegexMatchSetResponse is the response type for the UpdateRegexMatchSet API operation.

func (*UpdateRegexMatchSetResponse) SDKResponseMetdata added in v0.9.0

func (r *UpdateRegexMatchSetResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the UpdateRegexMatchSet request.

type UpdateRegexPatternSetInput added in v0.2.0

type UpdateRegexPatternSetInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// ChangeToken is a required field
	ChangeToken *string `min:"1" type:"string" required:"true"`

	// The RegexPatternSetId of the RegexPatternSet that you want to update. RegexPatternSetId
	// is returned by CreateRegexPatternSet and by ListRegexPatternSets.
	//
	// RegexPatternSetId is a required field
	RegexPatternSetId *string `min:"1" type:"string" required:"true"`

	// An array of RegexPatternSetUpdate objects that you want to insert into or
	// delete from a RegexPatternSet.
	//
	// Updates is a required field
	Updates []RegexPatternSetUpdate `min:"1" type:"list" required:"true"`
	// contains filtered or unexported fields
}

func (UpdateRegexPatternSetInput) String added in v0.2.0

String returns the string representation

func (*UpdateRegexPatternSetInput) Validate added in v0.2.0

func (s *UpdateRegexPatternSetInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type UpdateRegexPatternSetOutput added in v0.2.0

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 `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (UpdateRegexPatternSetOutput) String added in v0.2.0

String returns the string representation

type UpdateRegexPatternSetRequest added in v0.2.0

type UpdateRegexPatternSetRequest struct {
	*aws.Request
	Input *UpdateRegexPatternSetInput
	Copy  func(*UpdateRegexPatternSetInput) UpdateRegexPatternSetRequest
}

UpdateRegexPatternSetRequest is the request type for the UpdateRegexPatternSet API operation.

func (UpdateRegexPatternSetRequest) Send added in v0.2.0

Send marshals and sends the UpdateRegexPatternSet API request.

type UpdateRegexPatternSetResponse added in v0.9.0

type UpdateRegexPatternSetResponse struct {
	*UpdateRegexPatternSetOutput
	// contains filtered or unexported fields
}

UpdateRegexPatternSetResponse is the response type for the UpdateRegexPatternSet API operation.

func (*UpdateRegexPatternSetResponse) SDKResponseMetdata added in v0.9.0

func (r *UpdateRegexPatternSetResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the UpdateRegexPatternSet request.

type UpdateRuleGroupInput added in v0.2.0

type UpdateRuleGroupInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// ChangeToken is a required field
	ChangeToken *string `min:"1" type:"string" required:"true"`

	// The RuleGroupId of the RuleGroup that you want to update. RuleGroupId is
	// returned by CreateRuleGroup and by ListRuleGroups.
	//
	// RuleGroupId is a required field
	RuleGroupId *string `min:"1" type:"string" required:"true"`

	// An array of RuleGroupUpdate objects that you want to insert into or delete
	// from a RuleGroup.
	//
	// You can only insert REGULAR rules into a rule group.
	//
	// ActivatedRule|OverrideAction applies only when updating or adding a RuleGroup
	// to a WebACL. In this case you do not use ActivatedRule|Action. For all other
	// update requests, ActivatedRule|Action is used instead of ActivatedRule|OverrideAction.
	//
	// Updates is a required field
	Updates []RuleGroupUpdate `min:"1" type:"list" required:"true"`
	// contains filtered or unexported fields
}

func (UpdateRuleGroupInput) String added in v0.2.0

func (s UpdateRuleGroupInput) String() string

String returns the string representation

func (*UpdateRuleGroupInput) Validate added in v0.2.0

func (s *UpdateRuleGroupInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type UpdateRuleGroupOutput added in v0.2.0

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 `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (UpdateRuleGroupOutput) String added in v0.2.0

func (s UpdateRuleGroupOutput) String() string

String returns the string representation

type UpdateRuleGroupRequest added in v0.2.0

type UpdateRuleGroupRequest struct {
	*aws.Request
	Input *UpdateRuleGroupInput
	Copy  func(*UpdateRuleGroupInput) UpdateRuleGroupRequest
}

UpdateRuleGroupRequest is the request type for the UpdateRuleGroup API operation.

func (UpdateRuleGroupRequest) Send added in v0.2.0

Send marshals and sends the UpdateRuleGroup API request.

type UpdateRuleGroupResponse added in v0.9.0

type UpdateRuleGroupResponse struct {
	*UpdateRuleGroupOutput
	// contains filtered or unexported fields
}

UpdateRuleGroupResponse is the response type for the UpdateRuleGroup API operation.

func (*UpdateRuleGroupResponse) SDKResponseMetdata added in v0.9.0

func (r *UpdateRuleGroupResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the UpdateRuleGroup request.

type UpdateRuleInput

type UpdateRuleInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// ChangeToken is a required field
	ChangeToken *string `min:"1" type:"string" required:"true"`

	// The RuleId of the Rule that you want to update. RuleId is returned by CreateRule
	// and by ListRules.
	//
	// RuleId is a required field
	RuleId *string `min:"1" type:"string" required:"true"`

	// An array of RuleUpdate objects that you want to insert into or delete from
	// a Rule. For more information, see the applicable data types:
	//
	//    * RuleUpdate: Contains Action and Predicate
	//
	//    * Predicate: Contains DataId, Negated, and Type
	//
	//    * FieldToMatch: Contains Data and Type
	//
	// Updates is a required field
	Updates []RuleUpdate `type:"list" required:"true"`
	// contains filtered or unexported fields
}

func (UpdateRuleInput) String

func (s UpdateRuleInput) String() string

String returns the string representation

func (*UpdateRuleInput) Validate

func (s *UpdateRuleInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

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 `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (UpdateRuleOutput) String

func (s UpdateRuleOutput) String() string

String returns the string representation

type UpdateRuleRequest

type UpdateRuleRequest struct {
	*aws.Request
	Input *UpdateRuleInput
	Copy  func(*UpdateRuleInput) UpdateRuleRequest
}

UpdateRuleRequest is the request type for the UpdateRule API operation.

func (UpdateRuleRequest) Send

Send marshals and sends the UpdateRule API request.

type UpdateRuleResponse added in v0.9.0

type UpdateRuleResponse struct {
	*UpdateRuleOutput
	// contains filtered or unexported fields
}

UpdateRuleResponse is the response type for the UpdateRule API operation.

func (*UpdateRuleResponse) SDKResponseMetdata added in v0.9.0

func (r *UpdateRuleResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the UpdateRule request.

type UpdateSizeConstraintSetInput

type UpdateSizeConstraintSetInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// ChangeToken is a required field
	ChangeToken *string `min:"1" type:"string" required:"true"`

	// The SizeConstraintSetId of the SizeConstraintSet that you want to update.
	// SizeConstraintSetId is returned by CreateSizeConstraintSet and by ListSizeConstraintSets.
	//
	// SizeConstraintSetId is a required field
	SizeConstraintSetId *string `min:"1" type:"string" required:"true"`

	// An array of SizeConstraintSetUpdate objects that you want to insert into
	// or delete from a SizeConstraintSet. For more information, see the applicable
	// data types:
	//
	//    * SizeConstraintSetUpdate: Contains Action and SizeConstraint
	//
	//    * SizeConstraint: Contains FieldToMatch, TextTransformation, ComparisonOperator,
	//    and Size
	//
	//    * FieldToMatch: Contains Data and Type
	//
	// Updates is a required field
	Updates []SizeConstraintSetUpdate `min:"1" type:"list" required:"true"`
	// contains filtered or unexported fields
}

func (UpdateSizeConstraintSetInput) String

String returns the string representation

func (*UpdateSizeConstraintSetInput) Validate

func (s *UpdateSizeConstraintSetInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

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 `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (UpdateSizeConstraintSetOutput) String

String returns the string representation

type UpdateSizeConstraintSetRequest

type UpdateSizeConstraintSetRequest struct {
	*aws.Request
	Input *UpdateSizeConstraintSetInput
	Copy  func(*UpdateSizeConstraintSetInput) UpdateSizeConstraintSetRequest
}

UpdateSizeConstraintSetRequest is the request type for the UpdateSizeConstraintSet API operation.

func (UpdateSizeConstraintSetRequest) Send

Send marshals and sends the UpdateSizeConstraintSet API request.

type UpdateSizeConstraintSetResponse added in v0.9.0

type UpdateSizeConstraintSetResponse struct {
	*UpdateSizeConstraintSetOutput
	// contains filtered or unexported fields
}

UpdateSizeConstraintSetResponse is the response type for the UpdateSizeConstraintSet API operation.

func (*UpdateSizeConstraintSetResponse) SDKResponseMetdata added in v0.9.0

func (r *UpdateSizeConstraintSetResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the UpdateSizeConstraintSet request.

type UpdateSqlInjectionMatchSetInput

type UpdateSqlInjectionMatchSetInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// ChangeToken is a required field
	ChangeToken *string `min:"1" type:"string" required:"true"`

	// The SqlInjectionMatchSetId of the SqlInjectionMatchSet that you want to update.
	// SqlInjectionMatchSetId is returned by CreateSqlInjectionMatchSet and by ListSqlInjectionMatchSets.
	//
	// SqlInjectionMatchSetId is a required field
	SqlInjectionMatchSetId *string `min:"1" type:"string" required:"true"`

	// An array of SqlInjectionMatchSetUpdate objects that you want to insert into
	// or delete from a SqlInjectionMatchSet. For more information, see the applicable
	// data types:
	//
	//    * SqlInjectionMatchSetUpdate: Contains Action and SqlInjectionMatchTuple
	//
	//    * SqlInjectionMatchTuple: Contains FieldToMatch and TextTransformation
	//
	//    * FieldToMatch: Contains Data and Type
	//
	// Updates is a required field
	Updates []SqlInjectionMatchSetUpdate `min:"1" type:"list" required:"true"`
	// contains filtered or unexported fields
}

A request to update a SqlInjectionMatchSet.

func (UpdateSqlInjectionMatchSetInput) String

String returns the string representation

func (*UpdateSqlInjectionMatchSetInput) Validate

func (s *UpdateSqlInjectionMatchSetInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

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 `min:"1" type:"string"`
	// contains filtered or unexported fields
}

The response to an UpdateSqlInjectionMatchSets request.

func (UpdateSqlInjectionMatchSetOutput) String

String returns the string representation

type UpdateSqlInjectionMatchSetRequest

type UpdateSqlInjectionMatchSetRequest struct {
	*aws.Request
	Input *UpdateSqlInjectionMatchSetInput
	Copy  func(*UpdateSqlInjectionMatchSetInput) UpdateSqlInjectionMatchSetRequest
}

UpdateSqlInjectionMatchSetRequest is the request type for the UpdateSqlInjectionMatchSet API operation.

func (UpdateSqlInjectionMatchSetRequest) Send

Send marshals and sends the UpdateSqlInjectionMatchSet API request.

type UpdateSqlInjectionMatchSetResponse added in v0.9.0

type UpdateSqlInjectionMatchSetResponse struct {
	*UpdateSqlInjectionMatchSetOutput
	// contains filtered or unexported fields
}

UpdateSqlInjectionMatchSetResponse is the response type for the UpdateSqlInjectionMatchSet API operation.

func (*UpdateSqlInjectionMatchSetResponse) SDKResponseMetdata added in v0.9.0

func (r *UpdateSqlInjectionMatchSetResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the UpdateSqlInjectionMatchSet request.

type UpdateWebACLInput

type UpdateWebACLInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// ChangeToken is a required field
	ChangeToken *string `min:"1" type:"string" required:"true"`

	// 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 *WafAction `type:"structure"`

	// 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 []WebACLUpdate `type:"list"`

	// The WebACLId of the WebACL that you want to update. WebACLId is returned
	// by CreateWebACL and by ListWebACLs.
	//
	// WebACLId is a required field
	WebACLId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (UpdateWebACLInput) String

func (s UpdateWebACLInput) String() string

String returns the string representation

func (*UpdateWebACLInput) Validate

func (s *UpdateWebACLInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

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 `min:"1" type:"string"`
	// contains filtered or unexported fields
}

func (UpdateWebACLOutput) String

func (s UpdateWebACLOutput) String() string

String returns the string representation

type UpdateWebACLRequest

type UpdateWebACLRequest struct {
	*aws.Request
	Input *UpdateWebACLInput
	Copy  func(*UpdateWebACLInput) UpdateWebACLRequest
}

UpdateWebACLRequest is the request type for the UpdateWebACL API operation.

func (UpdateWebACLRequest) Send

Send marshals and sends the UpdateWebACL API request.

type UpdateWebACLResponse added in v0.9.0

type UpdateWebACLResponse struct {
	*UpdateWebACLOutput
	// contains filtered or unexported fields
}

UpdateWebACLResponse is the response type for the UpdateWebACL API operation.

func (*UpdateWebACLResponse) SDKResponseMetdata added in v0.9.0

func (r *UpdateWebACLResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the UpdateWebACL request.

type UpdateXssMatchSetInput

type UpdateXssMatchSetInput struct {

	// The value returned by the most recent call to GetChangeToken.
	//
	// ChangeToken is a required field
	ChangeToken *string `min:"1" type:"string" required:"true"`

	// An array of XssMatchSetUpdate objects that you want to insert into or delete
	// from an XssMatchSet. For more information, see the applicable data types:
	//
	//    * XssMatchSetUpdate: Contains Action and XssMatchTuple
	//
	//    * XssMatchTuple: Contains FieldToMatch and TextTransformation
	//
	//    * FieldToMatch: Contains Data and Type
	//
	// Updates is a required field
	Updates []XssMatchSetUpdate `min:"1" type:"list" required:"true"`

	// The XssMatchSetId of the XssMatchSet that you want to update. XssMatchSetId
	// is returned by CreateXssMatchSet and by ListXssMatchSets.
	//
	// XssMatchSetId is a required field
	XssMatchSetId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

A request to update an XssMatchSet.

func (UpdateXssMatchSetInput) String

func (s UpdateXssMatchSetInput) String() string

String returns the string representation

func (*UpdateXssMatchSetInput) Validate

func (s *UpdateXssMatchSetInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

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 `min:"1" type:"string"`
	// contains filtered or unexported fields
}

The response to an UpdateXssMatchSets request.

func (UpdateXssMatchSetOutput) String

func (s UpdateXssMatchSetOutput) String() string

String returns the string representation

type UpdateXssMatchSetRequest

type UpdateXssMatchSetRequest struct {
	*aws.Request
	Input *UpdateXssMatchSetInput
	Copy  func(*UpdateXssMatchSetInput) UpdateXssMatchSetRequest
}

UpdateXssMatchSetRequest is the request type for the UpdateXssMatchSet API operation.

func (UpdateXssMatchSetRequest) Send

Send marshals and sends the UpdateXssMatchSet API request.

type UpdateXssMatchSetResponse added in v0.9.0

type UpdateXssMatchSetResponse struct {
	*UpdateXssMatchSetOutput
	// contains filtered or unexported fields
}

UpdateXssMatchSetResponse is the response type for the UpdateXssMatchSet API operation.

func (*UpdateXssMatchSetResponse) SDKResponseMetdata added in v0.9.0

func (r *UpdateXssMatchSetResponse) SDKResponseMetdata() *aws.Response

SDKResponseMetdata returns the response metadata for the UpdateXssMatchSet request.

type WafAction

type WafAction struct {

	// Specifies how you want AWS WAF to respond to requests that match the settings
	// in a Rule. Valid settings include the following:
	//
	//    * ALLOW: AWS WAF allows requests
	//
	//    * BLOCK: AWS WAF blocks requests
	//
	//    * COUNT: AWS WAF increments a counter of the requests that match all of
	//    the conditions in the rule. AWS WAF then continues to inspect the web
	//    request based on the remaining rules in the web ACL. You can't specify
	//    COUNT for the default action for a WebACL.
	//
	// Type is a required field
	Type WafActionType `type:"string" required:"true" enum:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

For the action that is associated with a rule in a WebACL, specifies the action that you want AWS WAF to perform when a web request matches all of the conditions in a rule. For the default action in a WebACL, specifies the action that you want AWS WAF to take when a web request doesn't match all of the conditions in any of the rules in a WebACL.

func (WafAction) String

func (s WafAction) String() string

String returns the string representation

func (*WafAction) Validate

func (s *WafAction) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type WafActionType

type WafActionType string
const (
	WafActionTypeBlock WafActionType = "BLOCK"
	WafActionTypeAllow WafActionType = "ALLOW"
	WafActionTypeCount WafActionType = "COUNT"
)

Enum values for WafActionType

func (WafActionType) MarshalValue added in v0.3.0

func (enum WafActionType) MarshalValue() (string, error)

func (WafActionType) MarshalValueBuf added in v0.3.0

func (enum WafActionType) MarshalValueBuf(b []byte) ([]byte, error)

type WafOverrideAction added in v0.2.0

type WafOverrideAction struct {

	// COUNT overrides the action specified by the individual rule within a RuleGroup
	// . If set to NONE, the rule's action will take place.
	//
	// Type is a required field
	Type WafOverrideActionType `type:"string" required:"true" enum:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

The action to take if any rule within the RuleGroup matches a request.

func (WafOverrideAction) String added in v0.2.0

func (s WafOverrideAction) String() string

String returns the string representation

func (*WafOverrideAction) Validate added in v0.2.0

func (s *WafOverrideAction) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type WafOverrideActionType added in v0.2.0

type WafOverrideActionType string
const (
	WafOverrideActionTypeNone  WafOverrideActionType = "NONE"
	WafOverrideActionTypeCount WafOverrideActionType = "COUNT"
)

Enum values for WafOverrideActionType

func (WafOverrideActionType) MarshalValue added in v0.3.0

func (enum WafOverrideActionType) MarshalValue() (string, error)

func (WafOverrideActionType) MarshalValueBuf added in v0.3.0

func (enum WafOverrideActionType) MarshalValueBuf(b []byte) ([]byte, error)

type WafRuleType

type WafRuleType string
const (
	WafRuleTypeRegular   WafRuleType = "REGULAR"
	WafRuleTypeRateBased WafRuleType = "RATE_BASED"
	WafRuleTypeGroup     WafRuleType = "GROUP"
)

Enum values for WafRuleType

func (WafRuleType) MarshalValue added in v0.3.0

func (enum WafRuleType) MarshalValue() (string, error)

func (WafRuleType) MarshalValueBuf added in v0.3.0

func (enum WafRuleType) MarshalValueBuf(b []byte) ([]byte, error)

type WebACL

type WebACL struct {

	// The action to perform if none of the Rules contained in the WebACL match.
	// The action is specified by the WafAction object.
	//
	// DefaultAction is a required field
	DefaultAction *WafAction `type:"structure" required:"true"`

	// A friendly name or description for the metrics for this WebACL. The name
	// can contain only alphanumeric characters (A-Z, a-z, 0-9), with maximum length
	// 128 and minimum length one. It can't contain whitespace or metric names reserved
	// for AWS WAF, including "All" and "Default_Action." You can't change MetricName
	// after you create the WebACL.
	MetricName *string `min:"1" type:"string"`

	// A friendly name or description of the WebACL. You can't change the name of
	// a WebACL after you create it.
	Name *string `min:"1" type:"string"`

	// An array that contains the action for each Rule in a WebACL, the priority
	// of the Rule, and the ID of the Rule.
	//
	// Rules is a required field
	Rules []ActivatedRule `type:"list" required:"true"`

	// Tha Amazon Resource Name (ARN) of the web ACL.
	WebACLArn *string `min:"1" type:"string"`

	// A unique identifier for a WebACL. You use WebACLId to get information about
	// a WebACL (see GetWebACL), update a WebACL (see UpdateWebACL), and delete
	// a WebACL from AWS WAF (see DeleteWebACL).
	//
	// WebACLId is returned by CreateWebACL and by ListWebACLs.
	//
	// WebACLId is a required field
	WebACLId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Contains the Rules that identify the requests that you want to allow, block, or count. In a WebACL, you also specify a default action (ALLOW or BLOCK), and the action for each Rule that you add to a WebACL, for example, block requests from specified IP addresses or block requests from specified referrers. You also associate the WebACL with a CloudFront distribution to identify the requests that you want AWS WAF to filter. If you add more than one Rule to a WebACL, a request needs to match only one of the specifications to be allowed, blocked, or counted. For more information, see UpdateWebACL.

func (WebACL) String

func (s WebACL) String() string

String returns the string representation

type WebACLSummary

type WebACLSummary struct {

	// A friendly name or description of the WebACL. You can't change the name of
	// a WebACL after you create it.
	//
	// Name is a required field
	Name *string `min:"1" type:"string" required:"true"`

	// A unique identifier for a WebACL. You use WebACLId to get information about
	// a WebACL (see GetWebACL), update a WebACL (see UpdateWebACL), and delete
	// a WebACL from AWS WAF (see DeleteWebACL).
	//
	// WebACLId is returned by CreateWebACL and by ListWebACLs.
	//
	// WebACLId is a required field
	WebACLId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Contains the identifier and the name or description of the WebACL.

func (WebACLSummary) String

func (s WebACLSummary) String() string

String returns the string representation

type WebACLUpdate

type WebACLUpdate struct {

	// Specifies whether to insert a Rule into or delete a Rule from a WebACL.
	//
	// Action is a required field
	Action ChangeAction `type:"string" required:"true" enum:"true"`

	// The ActivatedRule object in an UpdateWebACL request specifies a Rule that
	// you want to insert or delete, the priority of the Rule in the WebACL, and
	// the action that you want AWS WAF to take when a web request matches the Rule
	// (ALLOW, BLOCK, or COUNT).
	//
	// ActivatedRule is a required field
	ActivatedRule *ActivatedRule `type:"structure" required:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Specifies whether to insert a Rule into or delete a Rule from a WebACL.

func (WebACLUpdate) String

func (s WebACLUpdate) String() string

String returns the string representation

func (*WebACLUpdate) Validate

func (s *WebACLUpdate) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type XssMatchSet

type XssMatchSet struct {

	// The name, if any, of the XssMatchSet.
	Name *string `min:"1" type:"string"`

	// A unique identifier for an XssMatchSet. You use XssMatchSetId to get information
	// about an XssMatchSet (see GetXssMatchSet), update an XssMatchSet (see UpdateXssMatchSet),
	// insert an XssMatchSet into a Rule or delete one from a Rule (see UpdateRule),
	// and delete an XssMatchSet from AWS WAF (see DeleteXssMatchSet).
	//
	// XssMatchSetId is returned by CreateXssMatchSet and by ListXssMatchSets.
	//
	// XssMatchSetId is a required field
	XssMatchSetId *string `min:"1" type:"string" required:"true"`

	// Specifies the parts of web requests that you want to inspect for cross-site
	// scripting attacks.
	//
	// XssMatchTuples is a required field
	XssMatchTuples []XssMatchTuple `type:"list" required:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

A complex type that contains XssMatchTuple objects, which specify the parts of web requests that you want AWS WAF to inspect for cross-site scripting attacks and, if you want AWS WAF to inspect a header, the name of the header. If a XssMatchSet contains more than one XssMatchTuple object, a request needs to include cross-site scripting attacks in only one of the specified parts of the request to be considered a match.

func (XssMatchSet) String

func (s XssMatchSet) String() string

String returns the string representation

type XssMatchSetSummary

type XssMatchSetSummary struct {

	// The name of the XssMatchSet, if any, specified by Id.
	//
	// Name is a required field
	Name *string `min:"1" type:"string" required:"true"`

	// A unique identifier for an XssMatchSet. You use XssMatchSetId to get information
	// about a XssMatchSet (see GetXssMatchSet), update an XssMatchSet (see UpdateXssMatchSet),
	// insert an XssMatchSet into a Rule or delete one from a Rule (see UpdateRule),
	// and delete an XssMatchSet from AWS WAF (see DeleteXssMatchSet).
	//
	// XssMatchSetId is returned by CreateXssMatchSet and by ListXssMatchSets.
	//
	// XssMatchSetId is a required field
	XssMatchSetId *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

The Id and Name of an XssMatchSet.

func (XssMatchSetSummary) String

func (s XssMatchSetSummary) String() string

String returns the string representation

type XssMatchSetUpdate

type XssMatchSetUpdate struct {

	// Specify INSERT to add an XssMatchSetUpdate to an XssMatchSet. Use DELETE
	// to remove an XssMatchSetUpdate from an XssMatchSet.
	//
	// Action is a required field
	Action ChangeAction `type:"string" required:"true" enum:"true"`

	// Specifies the part of a web request that you want AWS WAF to inspect for
	// cross-site scripting attacks and, if you want AWS WAF to inspect a header,
	// the name of the header.
	//
	// XssMatchTuple is a required field
	XssMatchTuple *XssMatchTuple `type:"structure" required:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Specifies the part of a web request that you want to inspect for cross-site scripting attacks and indicates whether you want to add the specification to an XssMatchSet or delete it from an XssMatchSet.

func (XssMatchSetUpdate) String

func (s XssMatchSetUpdate) String() string

String returns the string representation

func (*XssMatchSetUpdate) Validate

func (s *XssMatchSetUpdate) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type XssMatchTuple

type XssMatchTuple struct {

	// Specifies where in a web request to look for cross-site scripting attacks.
	//
	// FieldToMatch is a required field
	FieldToMatch *FieldToMatch `type:"structure" required:"true"`

	// Text transformations eliminate some of the unusual formatting that attackers
	// use in web requests in an effort to bypass AWS WAF. If you specify a transformation,
	// AWS WAF performs the transformation on FieldToMatch before inspecting it
	// for a match.
	//
	// You can only specify a single type of TextTransformation.
	//
	// CMD_LINE
	//
	// When you're concerned that attackers are injecting an operating system command
	// line command and using unusual formatting to disguise some or all of the
	// command, use this option to perform the following transformations:
	//
	//    * Delete the following characters: \ " ' ^
	//
	//    * Delete spaces before the following characters: / (
	//
	//    * Replace the following characters with a space: , ;
	//
	//    * Replace multiple spaces with one space
	//
	//    * Convert uppercase letters (A-Z) to lowercase (a-z)
	//
	// COMPRESS_WHITE_SPACE
	//
	// Use this option to replace the following characters with a space character
	// (decimal 32):
	//
	//    * \f, formfeed, decimal 12
	//
	//    * \t, tab, decimal 9
	//
	//    * \n, newline, decimal 10
	//
	//    * \r, carriage return, decimal 13
	//
	//    * \v, vertical tab, decimal 11
	//
	//    * non-breaking space, decimal 160
	//
	// COMPRESS_WHITE_SPACE also replaces multiple spaces with one space.
	//
	// HTML_ENTITY_DECODE
	//
	// Use this option to replace HTML-encoded characters with unencoded characters.
	// HTML_ENTITY_DECODE performs the following operations:
	//
	//    * Replaces (ampersand)quot; with "
	//
	//    * Replaces (ampersand)nbsp; with a non-breaking space, decimal 160
	//
	//    * Replaces (ampersand)lt; with a "less than" symbol
	//
	//    * Replaces (ampersand)gt; with >
	//
	//    * Replaces characters that are represented in hexadecimal format, (ampersand)#xhhhh;,
	//    with the corresponding characters
	//
	//    * Replaces characters that are represented in decimal format, (ampersand)#nnnn;,
	//    with the corresponding characters
	//
	// LOWERCASE
	//
	// Use this option to convert uppercase letters (A-Z) to lowercase (a-z).
	//
	// URL_DECODE
	//
	// Use this option to decode a URL-encoded value.
	//
	// NONE
	//
	// Specify NONE if you don't want to perform any text transformations.
	//
	// TextTransformation is a required field
	TextTransformation TextTransformation `type:"string" required:"true" enum:"true"`
	// contains filtered or unexported fields
}

This is AWS WAF Classic documentation. For more information, see AWS WAF Classic (https://docs.aws.amazon.com/waf/latest/developerguide/classic-waf-chapter.html) in the developer guide.

For the latest version of AWS WAF, use the AWS WAFV2 API and see the AWS WAF Developer Guide (https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html). With the latest version, AWS WAF has a single set of endpoints for regional and global use.

Specifies the part of a web request that you want AWS WAF to inspect for cross-site scripting attacks and, if you want AWS WAF to inspect a header, the name of the header.

func (XssMatchTuple) String

func (s XssMatchTuple) String() string

String returns the string representation

func (*XssMatchTuple) Validate

func (s *XssMatchTuple) Validate() error

Validate inspects the fields of the type to determine if they are valid.

Source Files

Directories

Path Synopsis
Package wafiface provides an interface to enable mocking the AWS WAF service client for testing your code.
Package wafiface provides an interface to enable mocking the AWS WAF service client for testing your code.

Jump to

Keyboard shortcuts

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