waf

package
v3.38.1 Latest Latest
Warning

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

Go to latest
Published: Apr 13, 2021 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ByteMatchSet

type ByteMatchSet struct {
	pulumi.CustomResourceState

	// Specifies the bytes (typically a string that corresponds
	// with ASCII characters) that you want to search for in web requests,
	// the location in requests that you want to search, and other settings.
	ByteMatchTuples ByteMatchSetByteMatchTupleArrayOutput `pulumi:"byteMatchTuples"`
	// The name or description of the Byte Match Set.
	Name pulumi.StringOutput `pulumi:"name"`
}

Provides a WAF Byte Match Set Resource

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/waf"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := waf.NewByteMatchSet(ctx, "byteSet", &waf.ByteMatchSetArgs{
			ByteMatchTuples: waf.ByteMatchSetByteMatchTupleArray{
				&waf.ByteMatchSetByteMatchTupleArgs{
					FieldToMatch: &waf.ByteMatchSetByteMatchTupleFieldToMatchArgs{
						Data: pulumi.String("referer"),
						Type: pulumi.String("HEADER"),
					},
					PositionalConstraint: pulumi.String("CONTAINS"),
					TargetString:         pulumi.String("badrefer1"),
					TextTransformation:   pulumi.String("NONE"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

WAF Byte Match Set can be imported using the id, e.g.

```sh

$ pulumi import aws:waf/byteMatchSet:ByteMatchSet byte_set a1b2c3d4-d5f6-7777-8888-9999aaaabbbbcccc

```

func GetByteMatchSet

func GetByteMatchSet(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ByteMatchSetState, opts ...pulumi.ResourceOption) (*ByteMatchSet, error)

GetByteMatchSet gets an existing ByteMatchSet resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewByteMatchSet

func NewByteMatchSet(ctx *pulumi.Context,
	name string, args *ByteMatchSetArgs, opts ...pulumi.ResourceOption) (*ByteMatchSet, error)

NewByteMatchSet registers a new resource with the given unique name, arguments, and options.

func (*ByteMatchSet) ElementType added in v3.13.0

func (*ByteMatchSet) ElementType() reflect.Type

func (*ByteMatchSet) ToByteMatchSetOutput added in v3.13.0

func (i *ByteMatchSet) ToByteMatchSetOutput() ByteMatchSetOutput

func (*ByteMatchSet) ToByteMatchSetOutputWithContext added in v3.13.0

func (i *ByteMatchSet) ToByteMatchSetOutputWithContext(ctx context.Context) ByteMatchSetOutput

func (*ByteMatchSet) ToByteMatchSetPtrOutput added in v3.25.0

func (i *ByteMatchSet) ToByteMatchSetPtrOutput() ByteMatchSetPtrOutput

func (*ByteMatchSet) ToByteMatchSetPtrOutputWithContext added in v3.25.0

func (i *ByteMatchSet) ToByteMatchSetPtrOutputWithContext(ctx context.Context) ByteMatchSetPtrOutput

type ByteMatchSetArgs

type ByteMatchSetArgs struct {
	// Specifies the bytes (typically a string that corresponds
	// with ASCII characters) that you want to search for in web requests,
	// the location in requests that you want to search, and other settings.
	ByteMatchTuples ByteMatchSetByteMatchTupleArrayInput
	// The name or description of the Byte Match Set.
	Name pulumi.StringPtrInput
}

The set of arguments for constructing a ByteMatchSet resource.

func (ByteMatchSetArgs) ElementType

func (ByteMatchSetArgs) ElementType() reflect.Type

type ByteMatchSetArray added in v3.25.0

type ByteMatchSetArray []ByteMatchSetInput

func (ByteMatchSetArray) ElementType added in v3.25.0

func (ByteMatchSetArray) ElementType() reflect.Type

func (ByteMatchSetArray) ToByteMatchSetArrayOutput added in v3.25.0

func (i ByteMatchSetArray) ToByteMatchSetArrayOutput() ByteMatchSetArrayOutput

func (ByteMatchSetArray) ToByteMatchSetArrayOutputWithContext added in v3.25.0

func (i ByteMatchSetArray) ToByteMatchSetArrayOutputWithContext(ctx context.Context) ByteMatchSetArrayOutput

type ByteMatchSetArrayInput added in v3.25.0

type ByteMatchSetArrayInput interface {
	pulumi.Input

	ToByteMatchSetArrayOutput() ByteMatchSetArrayOutput
	ToByteMatchSetArrayOutputWithContext(context.Context) ByteMatchSetArrayOutput
}

ByteMatchSetArrayInput is an input type that accepts ByteMatchSetArray and ByteMatchSetArrayOutput values. You can construct a concrete instance of `ByteMatchSetArrayInput` via:

ByteMatchSetArray{ ByteMatchSetArgs{...} }

type ByteMatchSetArrayOutput added in v3.25.0

type ByteMatchSetArrayOutput struct{ *pulumi.OutputState }

func (ByteMatchSetArrayOutput) ElementType added in v3.25.0

func (ByteMatchSetArrayOutput) ElementType() reflect.Type

func (ByteMatchSetArrayOutput) Index added in v3.25.0

func (ByteMatchSetArrayOutput) ToByteMatchSetArrayOutput added in v3.25.0

func (o ByteMatchSetArrayOutput) ToByteMatchSetArrayOutput() ByteMatchSetArrayOutput

func (ByteMatchSetArrayOutput) ToByteMatchSetArrayOutputWithContext added in v3.25.0

func (o ByteMatchSetArrayOutput) ToByteMatchSetArrayOutputWithContext(ctx context.Context) ByteMatchSetArrayOutput

type ByteMatchSetByteMatchTuple

type ByteMatchSetByteMatchTuple struct {
	// The part of a web request that you want to search, such as a specified header or a query string.
	FieldToMatch ByteMatchSetByteMatchTupleFieldToMatch `pulumi:"fieldToMatch"`
	// Within the portion of a web request that you want to search
	// (for example, in the query string, if any), specify where you want to search.
	// e.g. `CONTAINS`, `CONTAINS_WORD` or `EXACTLY`.
	// See [docs](http://docs.aws.amazon.com/waf/latest/APIReference/API_ByteMatchTuple.html#WAF-Type-ByteMatchTuple-PositionalConstraint)
	// for all supported values.
	PositionalConstraint string `pulumi:"positionalConstraint"`
	// The value that you want to search for. e.g. `HEADER`, `METHOD` or `BODY`.
	// See [docs](http://docs.aws.amazon.com/waf/latest/APIReference/API_ByteMatchTuple.html#WAF-Type-ByteMatchTuple-TargetString)
	// for all supported values.
	TargetString *string `pulumi:"targetString"`
	// Text transformations used to eliminate 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 `targetString` before inspecting a request for a match.
	// e.g. `CMD_LINE`, `HTML_ENTITY_DECODE` or `NONE`.
	// See [docs](http://docs.aws.amazon.com/waf/latest/APIReference/API_ByteMatchTuple.html#WAF-Type-ByteMatchTuple-TextTransformation)
	// for all supported values.
	TextTransformation string `pulumi:"textTransformation"`
}

type ByteMatchSetByteMatchTupleArgs

type ByteMatchSetByteMatchTupleArgs struct {
	// The part of a web request that you want to search, such as a specified header or a query string.
	FieldToMatch ByteMatchSetByteMatchTupleFieldToMatchInput `pulumi:"fieldToMatch"`
	// Within the portion of a web request that you want to search
	// (for example, in the query string, if any), specify where you want to search.
	// e.g. `CONTAINS`, `CONTAINS_WORD` or `EXACTLY`.
	// See [docs](http://docs.aws.amazon.com/waf/latest/APIReference/API_ByteMatchTuple.html#WAF-Type-ByteMatchTuple-PositionalConstraint)
	// for all supported values.
	PositionalConstraint pulumi.StringInput `pulumi:"positionalConstraint"`
	// The value that you want to search for. e.g. `HEADER`, `METHOD` or `BODY`.
	// See [docs](http://docs.aws.amazon.com/waf/latest/APIReference/API_ByteMatchTuple.html#WAF-Type-ByteMatchTuple-TargetString)
	// for all supported values.
	TargetString pulumi.StringPtrInput `pulumi:"targetString"`
	// Text transformations used to eliminate 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 `targetString` before inspecting a request for a match.
	// e.g. `CMD_LINE`, `HTML_ENTITY_DECODE` or `NONE`.
	// See [docs](http://docs.aws.amazon.com/waf/latest/APIReference/API_ByteMatchTuple.html#WAF-Type-ByteMatchTuple-TextTransformation)
	// for all supported values.
	TextTransformation pulumi.StringInput `pulumi:"textTransformation"`
}

func (ByteMatchSetByteMatchTupleArgs) ElementType

func (ByteMatchSetByteMatchTupleArgs) ToByteMatchSetByteMatchTupleOutput

func (i ByteMatchSetByteMatchTupleArgs) ToByteMatchSetByteMatchTupleOutput() ByteMatchSetByteMatchTupleOutput

func (ByteMatchSetByteMatchTupleArgs) ToByteMatchSetByteMatchTupleOutputWithContext

func (i ByteMatchSetByteMatchTupleArgs) ToByteMatchSetByteMatchTupleOutputWithContext(ctx context.Context) ByteMatchSetByteMatchTupleOutput

type ByteMatchSetByteMatchTupleArray

type ByteMatchSetByteMatchTupleArray []ByteMatchSetByteMatchTupleInput

func (ByteMatchSetByteMatchTupleArray) ElementType

func (ByteMatchSetByteMatchTupleArray) ToByteMatchSetByteMatchTupleArrayOutput

func (i ByteMatchSetByteMatchTupleArray) ToByteMatchSetByteMatchTupleArrayOutput() ByteMatchSetByteMatchTupleArrayOutput

func (ByteMatchSetByteMatchTupleArray) ToByteMatchSetByteMatchTupleArrayOutputWithContext

func (i ByteMatchSetByteMatchTupleArray) ToByteMatchSetByteMatchTupleArrayOutputWithContext(ctx context.Context) ByteMatchSetByteMatchTupleArrayOutput

type ByteMatchSetByteMatchTupleArrayInput

type ByteMatchSetByteMatchTupleArrayInput interface {
	pulumi.Input

	ToByteMatchSetByteMatchTupleArrayOutput() ByteMatchSetByteMatchTupleArrayOutput
	ToByteMatchSetByteMatchTupleArrayOutputWithContext(context.Context) ByteMatchSetByteMatchTupleArrayOutput
}

ByteMatchSetByteMatchTupleArrayInput is an input type that accepts ByteMatchSetByteMatchTupleArray and ByteMatchSetByteMatchTupleArrayOutput values. You can construct a concrete instance of `ByteMatchSetByteMatchTupleArrayInput` via:

ByteMatchSetByteMatchTupleArray{ ByteMatchSetByteMatchTupleArgs{...} }

type ByteMatchSetByteMatchTupleArrayOutput

type ByteMatchSetByteMatchTupleArrayOutput struct{ *pulumi.OutputState }

func (ByteMatchSetByteMatchTupleArrayOutput) ElementType

func (ByteMatchSetByteMatchTupleArrayOutput) Index

func (ByteMatchSetByteMatchTupleArrayOutput) ToByteMatchSetByteMatchTupleArrayOutput

func (o ByteMatchSetByteMatchTupleArrayOutput) ToByteMatchSetByteMatchTupleArrayOutput() ByteMatchSetByteMatchTupleArrayOutput

func (ByteMatchSetByteMatchTupleArrayOutput) ToByteMatchSetByteMatchTupleArrayOutputWithContext

func (o ByteMatchSetByteMatchTupleArrayOutput) ToByteMatchSetByteMatchTupleArrayOutputWithContext(ctx context.Context) ByteMatchSetByteMatchTupleArrayOutput

type ByteMatchSetByteMatchTupleFieldToMatch

type ByteMatchSetByteMatchTupleFieldToMatch struct {
	// When `type` is `HEADER`, enter the name of the header that you want to search, e.g. `User-Agent` or `Referer`.
	// If `type` is any other value, omit this field.
	Data *string `pulumi:"data"`
	// The part of the web request that you want AWS WAF to search for a specified string.
	// e.g. `HEADER`, `METHOD` or `BODY`.
	// See [docs](http://docs.aws.amazon.com/waf/latest/APIReference/API_FieldToMatch.html)
	// for all supported values.
	Type string `pulumi:"type"`
}

type ByteMatchSetByteMatchTupleFieldToMatchArgs

type ByteMatchSetByteMatchTupleFieldToMatchArgs struct {
	// When `type` is `HEADER`, enter the name of the header that you want to search, e.g. `User-Agent` or `Referer`.
	// If `type` is any other value, omit this field.
	Data pulumi.StringPtrInput `pulumi:"data"`
	// The part of the web request that you want AWS WAF to search for a specified string.
	// e.g. `HEADER`, `METHOD` or `BODY`.
	// See [docs](http://docs.aws.amazon.com/waf/latest/APIReference/API_FieldToMatch.html)
	// for all supported values.
	Type pulumi.StringInput `pulumi:"type"`
}

func (ByteMatchSetByteMatchTupleFieldToMatchArgs) ElementType

func (ByteMatchSetByteMatchTupleFieldToMatchArgs) ToByteMatchSetByteMatchTupleFieldToMatchOutput

func (i ByteMatchSetByteMatchTupleFieldToMatchArgs) ToByteMatchSetByteMatchTupleFieldToMatchOutput() ByteMatchSetByteMatchTupleFieldToMatchOutput

func (ByteMatchSetByteMatchTupleFieldToMatchArgs) ToByteMatchSetByteMatchTupleFieldToMatchOutputWithContext

func (i ByteMatchSetByteMatchTupleFieldToMatchArgs) ToByteMatchSetByteMatchTupleFieldToMatchOutputWithContext(ctx context.Context) ByteMatchSetByteMatchTupleFieldToMatchOutput

type ByteMatchSetByteMatchTupleFieldToMatchInput

type ByteMatchSetByteMatchTupleFieldToMatchInput interface {
	pulumi.Input

	ToByteMatchSetByteMatchTupleFieldToMatchOutput() ByteMatchSetByteMatchTupleFieldToMatchOutput
	ToByteMatchSetByteMatchTupleFieldToMatchOutputWithContext(context.Context) ByteMatchSetByteMatchTupleFieldToMatchOutput
}

ByteMatchSetByteMatchTupleFieldToMatchInput is an input type that accepts ByteMatchSetByteMatchTupleFieldToMatchArgs and ByteMatchSetByteMatchTupleFieldToMatchOutput values. You can construct a concrete instance of `ByteMatchSetByteMatchTupleFieldToMatchInput` via:

ByteMatchSetByteMatchTupleFieldToMatchArgs{...}

type ByteMatchSetByteMatchTupleFieldToMatchOutput

type ByteMatchSetByteMatchTupleFieldToMatchOutput struct{ *pulumi.OutputState }

func (ByteMatchSetByteMatchTupleFieldToMatchOutput) Data

When `type` is `HEADER`, enter the name of the header that you want to search, e.g. `User-Agent` or `Referer`. If `type` is any other value, omit this field.

func (ByteMatchSetByteMatchTupleFieldToMatchOutput) ElementType

func (ByteMatchSetByteMatchTupleFieldToMatchOutput) ToByteMatchSetByteMatchTupleFieldToMatchOutput

func (o ByteMatchSetByteMatchTupleFieldToMatchOutput) ToByteMatchSetByteMatchTupleFieldToMatchOutput() ByteMatchSetByteMatchTupleFieldToMatchOutput

func (ByteMatchSetByteMatchTupleFieldToMatchOutput) ToByteMatchSetByteMatchTupleFieldToMatchOutputWithContext

func (o ByteMatchSetByteMatchTupleFieldToMatchOutput) ToByteMatchSetByteMatchTupleFieldToMatchOutputWithContext(ctx context.Context) ByteMatchSetByteMatchTupleFieldToMatchOutput

func (ByteMatchSetByteMatchTupleFieldToMatchOutput) Type

The part of the web request that you want AWS WAF to search for a specified string. e.g. `HEADER`, `METHOD` or `BODY`. See [docs](http://docs.aws.amazon.com/waf/latest/APIReference/API_FieldToMatch.html) for all supported values.

type ByteMatchSetByteMatchTupleInput

type ByteMatchSetByteMatchTupleInput interface {
	pulumi.Input

	ToByteMatchSetByteMatchTupleOutput() ByteMatchSetByteMatchTupleOutput
	ToByteMatchSetByteMatchTupleOutputWithContext(context.Context) ByteMatchSetByteMatchTupleOutput
}

ByteMatchSetByteMatchTupleInput is an input type that accepts ByteMatchSetByteMatchTupleArgs and ByteMatchSetByteMatchTupleOutput values. You can construct a concrete instance of `ByteMatchSetByteMatchTupleInput` via:

ByteMatchSetByteMatchTupleArgs{...}

type ByteMatchSetByteMatchTupleOutput

type ByteMatchSetByteMatchTupleOutput struct{ *pulumi.OutputState }

func (ByteMatchSetByteMatchTupleOutput) ElementType

func (ByteMatchSetByteMatchTupleOutput) FieldToMatch

The part of a web request that you want to search, such as a specified header or a query string.

func (ByteMatchSetByteMatchTupleOutput) PositionalConstraint

func (o ByteMatchSetByteMatchTupleOutput) PositionalConstraint() pulumi.StringOutput

Within the portion of a web request that you want to search (for example, in the query string, if any), specify where you want to search. e.g. `CONTAINS`, `CONTAINS_WORD` or `EXACTLY`. See [docs](http://docs.aws.amazon.com/waf/latest/APIReference/API_ByteMatchTuple.html#WAF-Type-ByteMatchTuple-PositionalConstraint) for all supported values.

func (ByteMatchSetByteMatchTupleOutput) TargetString

The value that you want to search for. e.g. `HEADER`, `METHOD` or `BODY`. See [docs](http://docs.aws.amazon.com/waf/latest/APIReference/API_ByteMatchTuple.html#WAF-Type-ByteMatchTuple-TargetString) for all supported values.

func (ByteMatchSetByteMatchTupleOutput) TextTransformation

func (o ByteMatchSetByteMatchTupleOutput) TextTransformation() pulumi.StringOutput

Text transformations used to eliminate 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 `targetString` before inspecting a request for a match. e.g. `CMD_LINE`, `HTML_ENTITY_DECODE` or `NONE`. See [docs](http://docs.aws.amazon.com/waf/latest/APIReference/API_ByteMatchTuple.html#WAF-Type-ByteMatchTuple-TextTransformation) for all supported values.

func (ByteMatchSetByteMatchTupleOutput) ToByteMatchSetByteMatchTupleOutput

func (o ByteMatchSetByteMatchTupleOutput) ToByteMatchSetByteMatchTupleOutput() ByteMatchSetByteMatchTupleOutput

func (ByteMatchSetByteMatchTupleOutput) ToByteMatchSetByteMatchTupleOutputWithContext

func (o ByteMatchSetByteMatchTupleOutput) ToByteMatchSetByteMatchTupleOutputWithContext(ctx context.Context) ByteMatchSetByteMatchTupleOutput

type ByteMatchSetInput added in v3.13.0

type ByteMatchSetInput interface {
	pulumi.Input

	ToByteMatchSetOutput() ByteMatchSetOutput
	ToByteMatchSetOutputWithContext(ctx context.Context) ByteMatchSetOutput
}

type ByteMatchSetMap added in v3.25.0

type ByteMatchSetMap map[string]ByteMatchSetInput

func (ByteMatchSetMap) ElementType added in v3.25.0

func (ByteMatchSetMap) ElementType() reflect.Type

func (ByteMatchSetMap) ToByteMatchSetMapOutput added in v3.25.0

func (i ByteMatchSetMap) ToByteMatchSetMapOutput() ByteMatchSetMapOutput

func (ByteMatchSetMap) ToByteMatchSetMapOutputWithContext added in v3.25.0

func (i ByteMatchSetMap) ToByteMatchSetMapOutputWithContext(ctx context.Context) ByteMatchSetMapOutput

type ByteMatchSetMapInput added in v3.25.0

type ByteMatchSetMapInput interface {
	pulumi.Input

	ToByteMatchSetMapOutput() ByteMatchSetMapOutput
	ToByteMatchSetMapOutputWithContext(context.Context) ByteMatchSetMapOutput
}

ByteMatchSetMapInput is an input type that accepts ByteMatchSetMap and ByteMatchSetMapOutput values. You can construct a concrete instance of `ByteMatchSetMapInput` via:

ByteMatchSetMap{ "key": ByteMatchSetArgs{...} }

type ByteMatchSetMapOutput added in v3.25.0

type ByteMatchSetMapOutput struct{ *pulumi.OutputState }

func (ByteMatchSetMapOutput) ElementType added in v3.25.0

func (ByteMatchSetMapOutput) ElementType() reflect.Type

func (ByteMatchSetMapOutput) MapIndex added in v3.25.0

func (ByteMatchSetMapOutput) ToByteMatchSetMapOutput added in v3.25.0

func (o ByteMatchSetMapOutput) ToByteMatchSetMapOutput() ByteMatchSetMapOutput

func (ByteMatchSetMapOutput) ToByteMatchSetMapOutputWithContext added in v3.25.0

func (o ByteMatchSetMapOutput) ToByteMatchSetMapOutputWithContext(ctx context.Context) ByteMatchSetMapOutput

type ByteMatchSetOutput added in v3.13.0

type ByteMatchSetOutput struct {
	*pulumi.OutputState
}

func (ByteMatchSetOutput) ElementType added in v3.13.0

func (ByteMatchSetOutput) ElementType() reflect.Type

func (ByteMatchSetOutput) ToByteMatchSetOutput added in v3.13.0

func (o ByteMatchSetOutput) ToByteMatchSetOutput() ByteMatchSetOutput

func (ByteMatchSetOutput) ToByteMatchSetOutputWithContext added in v3.13.0

func (o ByteMatchSetOutput) ToByteMatchSetOutputWithContext(ctx context.Context) ByteMatchSetOutput

func (ByteMatchSetOutput) ToByteMatchSetPtrOutput added in v3.25.0

func (o ByteMatchSetOutput) ToByteMatchSetPtrOutput() ByteMatchSetPtrOutput

func (ByteMatchSetOutput) ToByteMatchSetPtrOutputWithContext added in v3.25.0

func (o ByteMatchSetOutput) ToByteMatchSetPtrOutputWithContext(ctx context.Context) ByteMatchSetPtrOutput

type ByteMatchSetPtrInput added in v3.25.0

type ByteMatchSetPtrInput interface {
	pulumi.Input

	ToByteMatchSetPtrOutput() ByteMatchSetPtrOutput
	ToByteMatchSetPtrOutputWithContext(ctx context.Context) ByteMatchSetPtrOutput
}

type ByteMatchSetPtrOutput added in v3.25.0

type ByteMatchSetPtrOutput struct {
	*pulumi.OutputState
}

func (ByteMatchSetPtrOutput) ElementType added in v3.25.0

func (ByteMatchSetPtrOutput) ElementType() reflect.Type

func (ByteMatchSetPtrOutput) ToByteMatchSetPtrOutput added in v3.25.0

func (o ByteMatchSetPtrOutput) ToByteMatchSetPtrOutput() ByteMatchSetPtrOutput

func (ByteMatchSetPtrOutput) ToByteMatchSetPtrOutputWithContext added in v3.25.0

func (o ByteMatchSetPtrOutput) ToByteMatchSetPtrOutputWithContext(ctx context.Context) ByteMatchSetPtrOutput

type ByteMatchSetState

type ByteMatchSetState struct {
	// Specifies the bytes (typically a string that corresponds
	// with ASCII characters) that you want to search for in web requests,
	// the location in requests that you want to search, and other settings.
	ByteMatchTuples ByteMatchSetByteMatchTupleArrayInput
	// The name or description of the Byte Match Set.
	Name pulumi.StringPtrInput
}

func (ByteMatchSetState) ElementType

func (ByteMatchSetState) ElementType() reflect.Type

type GeoMatchSet

type GeoMatchSet struct {
	pulumi.CustomResourceState

	// Amazon Resource Name (ARN)
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The GeoMatchConstraint objects which contain the country that you want AWS WAF to search for.
	GeoMatchConstraints GeoMatchSetGeoMatchConstraintArrayOutput `pulumi:"geoMatchConstraints"`
	// The name or description of the GeoMatchSet.
	Name pulumi.StringOutput `pulumi:"name"`
}

Provides a WAF Geo Match Set Resource

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/waf"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := waf.NewGeoMatchSet(ctx, "geoMatchSet", &waf.GeoMatchSetArgs{
			GeoMatchConstraints: waf.GeoMatchSetGeoMatchConstraintArray{
				&waf.GeoMatchSetGeoMatchConstraintArgs{
					Type:  pulumi.String("Country"),
					Value: pulumi.String("US"),
				},
				&waf.GeoMatchSetGeoMatchConstraintArgs{
					Type:  pulumi.String("Country"),
					Value: pulumi.String("CA"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

WAF Geo Match Set can be imported using their ID, e.g.

```sh

$ pulumi import aws:waf/geoMatchSet:GeoMatchSet example a1b2c3d4-d5f6-7777-8888-9999aaaabbbbcccc

```

func GetGeoMatchSet

func GetGeoMatchSet(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *GeoMatchSetState, opts ...pulumi.ResourceOption) (*GeoMatchSet, error)

GetGeoMatchSet gets an existing GeoMatchSet resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewGeoMatchSet

func NewGeoMatchSet(ctx *pulumi.Context,
	name string, args *GeoMatchSetArgs, opts ...pulumi.ResourceOption) (*GeoMatchSet, error)

NewGeoMatchSet registers a new resource with the given unique name, arguments, and options.

func (*GeoMatchSet) ElementType added in v3.13.0

func (*GeoMatchSet) ElementType() reflect.Type

func (*GeoMatchSet) ToGeoMatchSetOutput added in v3.13.0

func (i *GeoMatchSet) ToGeoMatchSetOutput() GeoMatchSetOutput

func (*GeoMatchSet) ToGeoMatchSetOutputWithContext added in v3.13.0

func (i *GeoMatchSet) ToGeoMatchSetOutputWithContext(ctx context.Context) GeoMatchSetOutput

func (*GeoMatchSet) ToGeoMatchSetPtrOutput added in v3.25.0

func (i *GeoMatchSet) ToGeoMatchSetPtrOutput() GeoMatchSetPtrOutput

func (*GeoMatchSet) ToGeoMatchSetPtrOutputWithContext added in v3.25.0

func (i *GeoMatchSet) ToGeoMatchSetPtrOutputWithContext(ctx context.Context) GeoMatchSetPtrOutput

type GeoMatchSetArgs

type GeoMatchSetArgs struct {
	// The GeoMatchConstraint objects which contain the country that you want AWS WAF to search for.
	GeoMatchConstraints GeoMatchSetGeoMatchConstraintArrayInput
	// The name or description of the GeoMatchSet.
	Name pulumi.StringPtrInput
}

The set of arguments for constructing a GeoMatchSet resource.

func (GeoMatchSetArgs) ElementType

func (GeoMatchSetArgs) ElementType() reflect.Type

type GeoMatchSetArray added in v3.25.0

type GeoMatchSetArray []GeoMatchSetInput

func (GeoMatchSetArray) ElementType added in v3.25.0

func (GeoMatchSetArray) ElementType() reflect.Type

func (GeoMatchSetArray) ToGeoMatchSetArrayOutput added in v3.25.0

func (i GeoMatchSetArray) ToGeoMatchSetArrayOutput() GeoMatchSetArrayOutput

func (GeoMatchSetArray) ToGeoMatchSetArrayOutputWithContext added in v3.25.0

func (i GeoMatchSetArray) ToGeoMatchSetArrayOutputWithContext(ctx context.Context) GeoMatchSetArrayOutput

type GeoMatchSetArrayInput added in v3.25.0

type GeoMatchSetArrayInput interface {
	pulumi.Input

	ToGeoMatchSetArrayOutput() GeoMatchSetArrayOutput
	ToGeoMatchSetArrayOutputWithContext(context.Context) GeoMatchSetArrayOutput
}

GeoMatchSetArrayInput is an input type that accepts GeoMatchSetArray and GeoMatchSetArrayOutput values. You can construct a concrete instance of `GeoMatchSetArrayInput` via:

GeoMatchSetArray{ GeoMatchSetArgs{...} }

type GeoMatchSetArrayOutput added in v3.25.0

type GeoMatchSetArrayOutput struct{ *pulumi.OutputState }

func (GeoMatchSetArrayOutput) ElementType added in v3.25.0

func (GeoMatchSetArrayOutput) ElementType() reflect.Type

func (GeoMatchSetArrayOutput) Index added in v3.25.0

func (GeoMatchSetArrayOutput) ToGeoMatchSetArrayOutput added in v3.25.0

func (o GeoMatchSetArrayOutput) ToGeoMatchSetArrayOutput() GeoMatchSetArrayOutput

func (GeoMatchSetArrayOutput) ToGeoMatchSetArrayOutputWithContext added in v3.25.0

func (o GeoMatchSetArrayOutput) ToGeoMatchSetArrayOutputWithContext(ctx context.Context) GeoMatchSetArrayOutput

type GeoMatchSetGeoMatchConstraint

type GeoMatchSetGeoMatchConstraint struct {
	// The type of geographical area you want AWS WAF to search for. Currently Country is the only valid value.
	Type string `pulumi:"type"`
	// The country that you want AWS WAF to search for.
	// This is the two-letter country code, e.g. `US`, `CA`, `RU`, `CN`, etc.
	// See [docs](https://docs.aws.amazon.com/waf/latest/APIReference/API_GeoMatchConstraint.html) for all supported values.
	Value string `pulumi:"value"`
}

type GeoMatchSetGeoMatchConstraintArgs

type GeoMatchSetGeoMatchConstraintArgs struct {
	// The type of geographical area you want AWS WAF to search for. Currently Country is the only valid value.
	Type pulumi.StringInput `pulumi:"type"`
	// The country that you want AWS WAF to search for.
	// This is the two-letter country code, e.g. `US`, `CA`, `RU`, `CN`, etc.
	// See [docs](https://docs.aws.amazon.com/waf/latest/APIReference/API_GeoMatchConstraint.html) for all supported values.
	Value pulumi.StringInput `pulumi:"value"`
}

func (GeoMatchSetGeoMatchConstraintArgs) ElementType

func (GeoMatchSetGeoMatchConstraintArgs) ToGeoMatchSetGeoMatchConstraintOutput

func (i GeoMatchSetGeoMatchConstraintArgs) ToGeoMatchSetGeoMatchConstraintOutput() GeoMatchSetGeoMatchConstraintOutput

func (GeoMatchSetGeoMatchConstraintArgs) ToGeoMatchSetGeoMatchConstraintOutputWithContext

func (i GeoMatchSetGeoMatchConstraintArgs) ToGeoMatchSetGeoMatchConstraintOutputWithContext(ctx context.Context) GeoMatchSetGeoMatchConstraintOutput

type GeoMatchSetGeoMatchConstraintArray

type GeoMatchSetGeoMatchConstraintArray []GeoMatchSetGeoMatchConstraintInput

func (GeoMatchSetGeoMatchConstraintArray) ElementType

func (GeoMatchSetGeoMatchConstraintArray) ToGeoMatchSetGeoMatchConstraintArrayOutput

func (i GeoMatchSetGeoMatchConstraintArray) ToGeoMatchSetGeoMatchConstraintArrayOutput() GeoMatchSetGeoMatchConstraintArrayOutput

func (GeoMatchSetGeoMatchConstraintArray) ToGeoMatchSetGeoMatchConstraintArrayOutputWithContext

func (i GeoMatchSetGeoMatchConstraintArray) ToGeoMatchSetGeoMatchConstraintArrayOutputWithContext(ctx context.Context) GeoMatchSetGeoMatchConstraintArrayOutput

type GeoMatchSetGeoMatchConstraintArrayInput

type GeoMatchSetGeoMatchConstraintArrayInput interface {
	pulumi.Input

	ToGeoMatchSetGeoMatchConstraintArrayOutput() GeoMatchSetGeoMatchConstraintArrayOutput
	ToGeoMatchSetGeoMatchConstraintArrayOutputWithContext(context.Context) GeoMatchSetGeoMatchConstraintArrayOutput
}

GeoMatchSetGeoMatchConstraintArrayInput is an input type that accepts GeoMatchSetGeoMatchConstraintArray and GeoMatchSetGeoMatchConstraintArrayOutput values. You can construct a concrete instance of `GeoMatchSetGeoMatchConstraintArrayInput` via:

GeoMatchSetGeoMatchConstraintArray{ GeoMatchSetGeoMatchConstraintArgs{...} }

type GeoMatchSetGeoMatchConstraintArrayOutput

type GeoMatchSetGeoMatchConstraintArrayOutput struct{ *pulumi.OutputState }

func (GeoMatchSetGeoMatchConstraintArrayOutput) ElementType

func (GeoMatchSetGeoMatchConstraintArrayOutput) Index

func (GeoMatchSetGeoMatchConstraintArrayOutput) ToGeoMatchSetGeoMatchConstraintArrayOutput

func (o GeoMatchSetGeoMatchConstraintArrayOutput) ToGeoMatchSetGeoMatchConstraintArrayOutput() GeoMatchSetGeoMatchConstraintArrayOutput

func (GeoMatchSetGeoMatchConstraintArrayOutput) ToGeoMatchSetGeoMatchConstraintArrayOutputWithContext

func (o GeoMatchSetGeoMatchConstraintArrayOutput) ToGeoMatchSetGeoMatchConstraintArrayOutputWithContext(ctx context.Context) GeoMatchSetGeoMatchConstraintArrayOutput

type GeoMatchSetGeoMatchConstraintInput

type GeoMatchSetGeoMatchConstraintInput interface {
	pulumi.Input

	ToGeoMatchSetGeoMatchConstraintOutput() GeoMatchSetGeoMatchConstraintOutput
	ToGeoMatchSetGeoMatchConstraintOutputWithContext(context.Context) GeoMatchSetGeoMatchConstraintOutput
}

GeoMatchSetGeoMatchConstraintInput is an input type that accepts GeoMatchSetGeoMatchConstraintArgs and GeoMatchSetGeoMatchConstraintOutput values. You can construct a concrete instance of `GeoMatchSetGeoMatchConstraintInput` via:

GeoMatchSetGeoMatchConstraintArgs{...}

type GeoMatchSetGeoMatchConstraintOutput

type GeoMatchSetGeoMatchConstraintOutput struct{ *pulumi.OutputState }

func (GeoMatchSetGeoMatchConstraintOutput) ElementType

func (GeoMatchSetGeoMatchConstraintOutput) ToGeoMatchSetGeoMatchConstraintOutput

func (o GeoMatchSetGeoMatchConstraintOutput) ToGeoMatchSetGeoMatchConstraintOutput() GeoMatchSetGeoMatchConstraintOutput

func (GeoMatchSetGeoMatchConstraintOutput) ToGeoMatchSetGeoMatchConstraintOutputWithContext

func (o GeoMatchSetGeoMatchConstraintOutput) ToGeoMatchSetGeoMatchConstraintOutputWithContext(ctx context.Context) GeoMatchSetGeoMatchConstraintOutput

func (GeoMatchSetGeoMatchConstraintOutput) Type

The type of geographical area you want AWS WAF to search for. Currently Country is the only valid value.

func (GeoMatchSetGeoMatchConstraintOutput) Value

The country that you want AWS WAF to search for. This is the two-letter country code, e.g. `US`, `CA`, `RU`, `CN`, etc. See [docs](https://docs.aws.amazon.com/waf/latest/APIReference/API_GeoMatchConstraint.html) for all supported values.

type GeoMatchSetInput added in v3.13.0

type GeoMatchSetInput interface {
	pulumi.Input

	ToGeoMatchSetOutput() GeoMatchSetOutput
	ToGeoMatchSetOutputWithContext(ctx context.Context) GeoMatchSetOutput
}

type GeoMatchSetMap added in v3.25.0

type GeoMatchSetMap map[string]GeoMatchSetInput

func (GeoMatchSetMap) ElementType added in v3.25.0

func (GeoMatchSetMap) ElementType() reflect.Type

func (GeoMatchSetMap) ToGeoMatchSetMapOutput added in v3.25.0

func (i GeoMatchSetMap) ToGeoMatchSetMapOutput() GeoMatchSetMapOutput

func (GeoMatchSetMap) ToGeoMatchSetMapOutputWithContext added in v3.25.0

func (i GeoMatchSetMap) ToGeoMatchSetMapOutputWithContext(ctx context.Context) GeoMatchSetMapOutput

type GeoMatchSetMapInput added in v3.25.0

type GeoMatchSetMapInput interface {
	pulumi.Input

	ToGeoMatchSetMapOutput() GeoMatchSetMapOutput
	ToGeoMatchSetMapOutputWithContext(context.Context) GeoMatchSetMapOutput
}

GeoMatchSetMapInput is an input type that accepts GeoMatchSetMap and GeoMatchSetMapOutput values. You can construct a concrete instance of `GeoMatchSetMapInput` via:

GeoMatchSetMap{ "key": GeoMatchSetArgs{...} }

type GeoMatchSetMapOutput added in v3.25.0

type GeoMatchSetMapOutput struct{ *pulumi.OutputState }

func (GeoMatchSetMapOutput) ElementType added in v3.25.0

func (GeoMatchSetMapOutput) ElementType() reflect.Type

func (GeoMatchSetMapOutput) MapIndex added in v3.25.0

func (GeoMatchSetMapOutput) ToGeoMatchSetMapOutput added in v3.25.0

func (o GeoMatchSetMapOutput) ToGeoMatchSetMapOutput() GeoMatchSetMapOutput

func (GeoMatchSetMapOutput) ToGeoMatchSetMapOutputWithContext added in v3.25.0

func (o GeoMatchSetMapOutput) ToGeoMatchSetMapOutputWithContext(ctx context.Context) GeoMatchSetMapOutput

type GeoMatchSetOutput added in v3.13.0

type GeoMatchSetOutput struct {
	*pulumi.OutputState
}

func (GeoMatchSetOutput) ElementType added in v3.13.0

func (GeoMatchSetOutput) ElementType() reflect.Type

func (GeoMatchSetOutput) ToGeoMatchSetOutput added in v3.13.0

func (o GeoMatchSetOutput) ToGeoMatchSetOutput() GeoMatchSetOutput

func (GeoMatchSetOutput) ToGeoMatchSetOutputWithContext added in v3.13.0

func (o GeoMatchSetOutput) ToGeoMatchSetOutputWithContext(ctx context.Context) GeoMatchSetOutput

func (GeoMatchSetOutput) ToGeoMatchSetPtrOutput added in v3.25.0

func (o GeoMatchSetOutput) ToGeoMatchSetPtrOutput() GeoMatchSetPtrOutput

func (GeoMatchSetOutput) ToGeoMatchSetPtrOutputWithContext added in v3.25.0

func (o GeoMatchSetOutput) ToGeoMatchSetPtrOutputWithContext(ctx context.Context) GeoMatchSetPtrOutput

type GeoMatchSetPtrInput added in v3.25.0

type GeoMatchSetPtrInput interface {
	pulumi.Input

	ToGeoMatchSetPtrOutput() GeoMatchSetPtrOutput
	ToGeoMatchSetPtrOutputWithContext(ctx context.Context) GeoMatchSetPtrOutput
}

type GeoMatchSetPtrOutput added in v3.25.0

type GeoMatchSetPtrOutput struct {
	*pulumi.OutputState
}

func (GeoMatchSetPtrOutput) ElementType added in v3.25.0

func (GeoMatchSetPtrOutput) ElementType() reflect.Type

func (GeoMatchSetPtrOutput) ToGeoMatchSetPtrOutput added in v3.25.0

func (o GeoMatchSetPtrOutput) ToGeoMatchSetPtrOutput() GeoMatchSetPtrOutput

func (GeoMatchSetPtrOutput) ToGeoMatchSetPtrOutputWithContext added in v3.25.0

func (o GeoMatchSetPtrOutput) ToGeoMatchSetPtrOutputWithContext(ctx context.Context) GeoMatchSetPtrOutput

type GeoMatchSetState

type GeoMatchSetState struct {
	// Amazon Resource Name (ARN)
	Arn pulumi.StringPtrInput
	// The GeoMatchConstraint objects which contain the country that you want AWS WAF to search for.
	GeoMatchConstraints GeoMatchSetGeoMatchConstraintArrayInput
	// The name or description of the GeoMatchSet.
	Name pulumi.StringPtrInput
}

func (GeoMatchSetState) ElementType

func (GeoMatchSetState) ElementType() reflect.Type

type GetIpsetArgs

type GetIpsetArgs struct {
	// The name of the WAF IP set.
	Name string `pulumi:"name"`
}

A collection of arguments for invoking getIpset.

type GetIpsetResult

type GetIpsetResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id   string `pulumi:"id"`
	Name string `pulumi:"name"`
}

A collection of values returned by getIpset.

func GetIpset

func GetIpset(ctx *pulumi.Context, args *GetIpsetArgs, opts ...pulumi.InvokeOption) (*GetIpsetResult, error)

`waf.IpSet` Retrieves a WAF IP Set Resource Id.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/waf"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := waf.GetIpset(ctx, &waf.GetIpsetArgs{
			Name: "tfWAFIPSet",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type IpSet

type IpSet struct {
	pulumi.CustomResourceState

	// The ARN of the WAF IPSet.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// One or more pairs specifying the IP address type (IPV4 or IPV6) and the IP address range (in CIDR format) from which web requests originate.
	IpSetDescriptors IpSetIpSetDescriptorArrayOutput `pulumi:"ipSetDescriptors"`
	// The name or description of the IPSet.
	Name pulumi.StringOutput `pulumi:"name"`
}

Provides a WAF IPSet Resource

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/waf"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := waf.NewIpSet(ctx, "ipset", &waf.IpSetArgs{
			IpSetDescriptors: waf.IpSetIpSetDescriptorArray{
				&waf.IpSetIpSetDescriptorArgs{
					Type:  pulumi.String("IPV4"),
					Value: pulumi.String("192.0.7.0/24"),
				},
				&waf.IpSetIpSetDescriptorArgs{
					Type:  pulumi.String("IPV4"),
					Value: pulumi.String("10.16.16.0/16"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

WAF IPSets can be imported using their ID, e.g.

```sh

$ pulumi import aws:waf/ipSet:IpSet example a1b2c3d4-d5f6-7777-8888-9999aaaabbbbcccc

```

func GetIpSet

func GetIpSet(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *IpSetState, opts ...pulumi.ResourceOption) (*IpSet, error)

GetIpSet gets an existing IpSet resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewIpSet

func NewIpSet(ctx *pulumi.Context,
	name string, args *IpSetArgs, opts ...pulumi.ResourceOption) (*IpSet, error)

NewIpSet registers a new resource with the given unique name, arguments, and options.

func (*IpSet) ElementType added in v3.13.0

func (*IpSet) ElementType() reflect.Type

func (*IpSet) ToIpSetOutput added in v3.13.0

func (i *IpSet) ToIpSetOutput() IpSetOutput

func (*IpSet) ToIpSetOutputWithContext added in v3.13.0

func (i *IpSet) ToIpSetOutputWithContext(ctx context.Context) IpSetOutput

func (*IpSet) ToIpSetPtrOutput added in v3.25.0

func (i *IpSet) ToIpSetPtrOutput() IpSetPtrOutput

func (*IpSet) ToIpSetPtrOutputWithContext added in v3.25.0

func (i *IpSet) ToIpSetPtrOutputWithContext(ctx context.Context) IpSetPtrOutput

type IpSetArgs

type IpSetArgs struct {
	// One or more pairs specifying the IP address type (IPV4 or IPV6) and the IP address range (in CIDR format) from which web requests originate.
	IpSetDescriptors IpSetIpSetDescriptorArrayInput
	// The name or description of the IPSet.
	Name pulumi.StringPtrInput
}

The set of arguments for constructing a IpSet resource.

func (IpSetArgs) ElementType

func (IpSetArgs) ElementType() reflect.Type

type IpSetArray added in v3.25.0

type IpSetArray []IpSetInput

func (IpSetArray) ElementType added in v3.25.0

func (IpSetArray) ElementType() reflect.Type

func (IpSetArray) ToIpSetArrayOutput added in v3.25.0

func (i IpSetArray) ToIpSetArrayOutput() IpSetArrayOutput

func (IpSetArray) ToIpSetArrayOutputWithContext added in v3.25.0

func (i IpSetArray) ToIpSetArrayOutputWithContext(ctx context.Context) IpSetArrayOutput

type IpSetArrayInput added in v3.25.0

type IpSetArrayInput interface {
	pulumi.Input

	ToIpSetArrayOutput() IpSetArrayOutput
	ToIpSetArrayOutputWithContext(context.Context) IpSetArrayOutput
}

IpSetArrayInput is an input type that accepts IpSetArray and IpSetArrayOutput values. You can construct a concrete instance of `IpSetArrayInput` via:

IpSetArray{ IpSetArgs{...} }

type IpSetArrayOutput added in v3.25.0

type IpSetArrayOutput struct{ *pulumi.OutputState }

func (IpSetArrayOutput) ElementType added in v3.25.0

func (IpSetArrayOutput) ElementType() reflect.Type

func (IpSetArrayOutput) Index added in v3.25.0

func (IpSetArrayOutput) ToIpSetArrayOutput added in v3.25.0

func (o IpSetArrayOutput) ToIpSetArrayOutput() IpSetArrayOutput

func (IpSetArrayOutput) ToIpSetArrayOutputWithContext added in v3.25.0

func (o IpSetArrayOutput) ToIpSetArrayOutputWithContext(ctx context.Context) IpSetArrayOutput

type IpSetInput added in v3.13.0

type IpSetInput interface {
	pulumi.Input

	ToIpSetOutput() IpSetOutput
	ToIpSetOutputWithContext(ctx context.Context) IpSetOutput
}

type IpSetIpSetDescriptor

type IpSetIpSetDescriptor struct {
	// Type of the IP address - `IPV4` or `IPV6`.
	Type string `pulumi:"type"`
	// An IPv4 or IPv6 address specified via CIDR notation. e.g. `192.0.2.44/32` or `1111:0000:0000:0000:0000:0000:0000:0000/64`
	Value string `pulumi:"value"`
}

type IpSetIpSetDescriptorArgs

type IpSetIpSetDescriptorArgs struct {
	// Type of the IP address - `IPV4` or `IPV6`.
	Type pulumi.StringInput `pulumi:"type"`
	// An IPv4 or IPv6 address specified via CIDR notation. e.g. `192.0.2.44/32` or `1111:0000:0000:0000:0000:0000:0000:0000/64`
	Value pulumi.StringInput `pulumi:"value"`
}

func (IpSetIpSetDescriptorArgs) ElementType

func (IpSetIpSetDescriptorArgs) ElementType() reflect.Type

func (IpSetIpSetDescriptorArgs) ToIpSetIpSetDescriptorOutput

func (i IpSetIpSetDescriptorArgs) ToIpSetIpSetDescriptorOutput() IpSetIpSetDescriptorOutput

func (IpSetIpSetDescriptorArgs) ToIpSetIpSetDescriptorOutputWithContext

func (i IpSetIpSetDescriptorArgs) ToIpSetIpSetDescriptorOutputWithContext(ctx context.Context) IpSetIpSetDescriptorOutput

type IpSetIpSetDescriptorArray

type IpSetIpSetDescriptorArray []IpSetIpSetDescriptorInput

func (IpSetIpSetDescriptorArray) ElementType

func (IpSetIpSetDescriptorArray) ElementType() reflect.Type

func (IpSetIpSetDescriptorArray) ToIpSetIpSetDescriptorArrayOutput

func (i IpSetIpSetDescriptorArray) ToIpSetIpSetDescriptorArrayOutput() IpSetIpSetDescriptorArrayOutput

func (IpSetIpSetDescriptorArray) ToIpSetIpSetDescriptorArrayOutputWithContext

func (i IpSetIpSetDescriptorArray) ToIpSetIpSetDescriptorArrayOutputWithContext(ctx context.Context) IpSetIpSetDescriptorArrayOutput

type IpSetIpSetDescriptorArrayInput

type IpSetIpSetDescriptorArrayInput interface {
	pulumi.Input

	ToIpSetIpSetDescriptorArrayOutput() IpSetIpSetDescriptorArrayOutput
	ToIpSetIpSetDescriptorArrayOutputWithContext(context.Context) IpSetIpSetDescriptorArrayOutput
}

IpSetIpSetDescriptorArrayInput is an input type that accepts IpSetIpSetDescriptorArray and IpSetIpSetDescriptorArrayOutput values. You can construct a concrete instance of `IpSetIpSetDescriptorArrayInput` via:

IpSetIpSetDescriptorArray{ IpSetIpSetDescriptorArgs{...} }

type IpSetIpSetDescriptorArrayOutput

type IpSetIpSetDescriptorArrayOutput struct{ *pulumi.OutputState }

func (IpSetIpSetDescriptorArrayOutput) ElementType

func (IpSetIpSetDescriptorArrayOutput) Index

func (IpSetIpSetDescriptorArrayOutput) ToIpSetIpSetDescriptorArrayOutput

func (o IpSetIpSetDescriptorArrayOutput) ToIpSetIpSetDescriptorArrayOutput() IpSetIpSetDescriptorArrayOutput

func (IpSetIpSetDescriptorArrayOutput) ToIpSetIpSetDescriptorArrayOutputWithContext

func (o IpSetIpSetDescriptorArrayOutput) ToIpSetIpSetDescriptorArrayOutputWithContext(ctx context.Context) IpSetIpSetDescriptorArrayOutput

type IpSetIpSetDescriptorInput

type IpSetIpSetDescriptorInput interface {
	pulumi.Input

	ToIpSetIpSetDescriptorOutput() IpSetIpSetDescriptorOutput
	ToIpSetIpSetDescriptorOutputWithContext(context.Context) IpSetIpSetDescriptorOutput
}

IpSetIpSetDescriptorInput is an input type that accepts IpSetIpSetDescriptorArgs and IpSetIpSetDescriptorOutput values. You can construct a concrete instance of `IpSetIpSetDescriptorInput` via:

IpSetIpSetDescriptorArgs{...}

type IpSetIpSetDescriptorOutput

type IpSetIpSetDescriptorOutput struct{ *pulumi.OutputState }

func (IpSetIpSetDescriptorOutput) ElementType

func (IpSetIpSetDescriptorOutput) ElementType() reflect.Type

func (IpSetIpSetDescriptorOutput) ToIpSetIpSetDescriptorOutput

func (o IpSetIpSetDescriptorOutput) ToIpSetIpSetDescriptorOutput() IpSetIpSetDescriptorOutput

func (IpSetIpSetDescriptorOutput) ToIpSetIpSetDescriptorOutputWithContext

func (o IpSetIpSetDescriptorOutput) ToIpSetIpSetDescriptorOutputWithContext(ctx context.Context) IpSetIpSetDescriptorOutput

func (IpSetIpSetDescriptorOutput) Type

Type of the IP address - `IPV4` or `IPV6`.

func (IpSetIpSetDescriptorOutput) Value

An IPv4 or IPv6 address specified via CIDR notation. e.g. `192.0.2.44/32` or `1111:0000:0000:0000:0000:0000:0000:0000/64`

type IpSetMap added in v3.25.0

type IpSetMap map[string]IpSetInput

func (IpSetMap) ElementType added in v3.25.0

func (IpSetMap) ElementType() reflect.Type

func (IpSetMap) ToIpSetMapOutput added in v3.25.0

func (i IpSetMap) ToIpSetMapOutput() IpSetMapOutput

func (IpSetMap) ToIpSetMapOutputWithContext added in v3.25.0

func (i IpSetMap) ToIpSetMapOutputWithContext(ctx context.Context) IpSetMapOutput

type IpSetMapInput added in v3.25.0

type IpSetMapInput interface {
	pulumi.Input

	ToIpSetMapOutput() IpSetMapOutput
	ToIpSetMapOutputWithContext(context.Context) IpSetMapOutput
}

IpSetMapInput is an input type that accepts IpSetMap and IpSetMapOutput values. You can construct a concrete instance of `IpSetMapInput` via:

IpSetMap{ "key": IpSetArgs{...} }

type IpSetMapOutput added in v3.25.0

type IpSetMapOutput struct{ *pulumi.OutputState }

func (IpSetMapOutput) ElementType added in v3.25.0

func (IpSetMapOutput) ElementType() reflect.Type

func (IpSetMapOutput) MapIndex added in v3.25.0

func (IpSetMapOutput) ToIpSetMapOutput added in v3.25.0

func (o IpSetMapOutput) ToIpSetMapOutput() IpSetMapOutput

func (IpSetMapOutput) ToIpSetMapOutputWithContext added in v3.25.0

func (o IpSetMapOutput) ToIpSetMapOutputWithContext(ctx context.Context) IpSetMapOutput

type IpSetOutput added in v3.13.0

type IpSetOutput struct {
	*pulumi.OutputState
}

func (IpSetOutput) ElementType added in v3.13.0

func (IpSetOutput) ElementType() reflect.Type

func (IpSetOutput) ToIpSetOutput added in v3.13.0

func (o IpSetOutput) ToIpSetOutput() IpSetOutput

func (IpSetOutput) ToIpSetOutputWithContext added in v3.13.0

func (o IpSetOutput) ToIpSetOutputWithContext(ctx context.Context) IpSetOutput

func (IpSetOutput) ToIpSetPtrOutput added in v3.25.0

func (o IpSetOutput) ToIpSetPtrOutput() IpSetPtrOutput

func (IpSetOutput) ToIpSetPtrOutputWithContext added in v3.25.0

func (o IpSetOutput) ToIpSetPtrOutputWithContext(ctx context.Context) IpSetPtrOutput

type IpSetPtrInput added in v3.25.0

type IpSetPtrInput interface {
	pulumi.Input

	ToIpSetPtrOutput() IpSetPtrOutput
	ToIpSetPtrOutputWithContext(ctx context.Context) IpSetPtrOutput
}

type IpSetPtrOutput added in v3.25.0

type IpSetPtrOutput struct {
	*pulumi.OutputState
}

func (IpSetPtrOutput) ElementType added in v3.25.0

func (IpSetPtrOutput) ElementType() reflect.Type

func (IpSetPtrOutput) ToIpSetPtrOutput added in v3.25.0

func (o IpSetPtrOutput) ToIpSetPtrOutput() IpSetPtrOutput

func (IpSetPtrOutput) ToIpSetPtrOutputWithContext added in v3.25.0

func (o IpSetPtrOutput) ToIpSetPtrOutputWithContext(ctx context.Context) IpSetPtrOutput

type IpSetState

type IpSetState struct {
	// The ARN of the WAF IPSet.
	Arn pulumi.StringPtrInput
	// One or more pairs specifying the IP address type (IPV4 or IPV6) and the IP address range (in CIDR format) from which web requests originate.
	IpSetDescriptors IpSetIpSetDescriptorArrayInput
	// The name or description of the IPSet.
	Name pulumi.StringPtrInput
}

func (IpSetState) ElementType

func (IpSetState) ElementType() reflect.Type

type LookupRateBasedRuleArgs

type LookupRateBasedRuleArgs struct {
	// The name of the WAF rate based rule.
	Name string `pulumi:"name"`
}

A collection of arguments for invoking getRateBasedRule.

type LookupRateBasedRuleResult

type LookupRateBasedRuleResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id   string `pulumi:"id"`
	Name string `pulumi:"name"`
}

A collection of values returned by getRateBasedRule.

func LookupRateBasedRule

func LookupRateBasedRule(ctx *pulumi.Context, args *LookupRateBasedRuleArgs, opts ...pulumi.InvokeOption) (*LookupRateBasedRuleResult, error)

`waf.RateBasedRule` Retrieves a WAF Rate Based Rule Resource Id.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/waf"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := waf.LookupRateBasedRule(ctx, &waf.LookupRateBasedRuleArgs{
			Name: "tfWAFRateBasedRule",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupRuleArgs

type LookupRuleArgs struct {
	// The name of the WAF rule.
	Name string `pulumi:"name"`
}

A collection of arguments for invoking getRule.

type LookupRuleResult

type LookupRuleResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id   string `pulumi:"id"`
	Name string `pulumi:"name"`
}

A collection of values returned by getRule.

func LookupRule

func LookupRule(ctx *pulumi.Context, args *LookupRuleArgs, opts ...pulumi.InvokeOption) (*LookupRuleResult, error)

`waf.Rule` Retrieves a WAF Rule Resource Id.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/waf"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := waf.LookupRule(ctx, &waf.LookupRuleArgs{
			Name: "tfWAFRule",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupWebAclArgs

type LookupWebAclArgs struct {
	// The name of the WAF Web ACL.
	Name string `pulumi:"name"`
}

A collection of arguments for invoking getWebAcl.

type LookupWebAclResult

type LookupWebAclResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id   string `pulumi:"id"`
	Name string `pulumi:"name"`
}

A collection of values returned by getWebAcl.

func LookupWebAcl

func LookupWebAcl(ctx *pulumi.Context, args *LookupWebAclArgs, opts ...pulumi.InvokeOption) (*LookupWebAclResult, error)

`waf.WebAcl` Retrieves a WAF Web ACL Resource Id.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/waf"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := waf.LookupWebAcl(ctx, &waf.LookupWebAclArgs{
			Name: "tfWAFWebACL",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type RateBasedRule

type RateBasedRule struct {
	pulumi.CustomResourceState

	// Amazon Resource Name (ARN)
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The name or description for the Amazon CloudWatch metric of this rule.
	MetricName pulumi.StringOutput `pulumi:"metricName"`
	// The name or description of the rule.
	Name pulumi.StringOutput `pulumi:"name"`
	// The objects to include in a rule (documented below).
	Predicates RateBasedRulePredicateArrayOutput `pulumi:"predicates"`
	// Valid value is IP.
	RateKey pulumi.StringOutput `pulumi:"rateKey"`
	// The maximum number of requests, which have an identical value in the field specified by the RateKey, allowed in a five-minute period. Minimum value is 100.
	RateLimit pulumi.IntOutput `pulumi:"rateLimit"`
	// Key-value map of resource tags
	Tags pulumi.StringMapOutput `pulumi:"tags"`
}

Provides a WAF Rate Based Rule Resource

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/waf"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		ipset, err := waf.NewIpSet(ctx, "ipset", &waf.IpSetArgs{
			IpSetDescriptors: waf.IpSetIpSetDescriptorArray{
				&waf.IpSetIpSetDescriptorArgs{
					Type:  pulumi.String("IPV4"),
					Value: pulumi.String("192.0.7.0/24"),
				},
			},
		})
		if err != nil {
			return err
		}
		_, err = waf.NewRateBasedRule(ctx, "wafrule", &waf.RateBasedRuleArgs{
			MetricName: pulumi.String("tfWAFRule"),
			RateKey:    pulumi.String("IP"),
			RateLimit:  pulumi.Int(100),
			Predicates: waf.RateBasedRulePredicateArray{
				&waf.RateBasedRulePredicateArgs{
					DataId:  ipset.ID(),
					Negated: pulumi.Bool(false),
					Type:    pulumi.String("IPMatch"),
				},
			},
		}, pulumi.DependsOn([]pulumi.Resource{
			ipset,
		}))
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

WAF Rated Based Rule can be imported using the id, e.g.

```sh

$ pulumi import aws:waf/rateBasedRule:RateBasedRule wafrule a1b2c3d4-d5f6-7777-8888-9999aaaabbbbcccc

```

func GetRateBasedRule

func GetRateBasedRule(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RateBasedRuleState, opts ...pulumi.ResourceOption) (*RateBasedRule, error)

GetRateBasedRule gets an existing RateBasedRule resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewRateBasedRule

func NewRateBasedRule(ctx *pulumi.Context,
	name string, args *RateBasedRuleArgs, opts ...pulumi.ResourceOption) (*RateBasedRule, error)

NewRateBasedRule registers a new resource with the given unique name, arguments, and options.

func (*RateBasedRule) ElementType added in v3.13.0

func (*RateBasedRule) ElementType() reflect.Type

func (*RateBasedRule) ToRateBasedRuleOutput added in v3.13.0

func (i *RateBasedRule) ToRateBasedRuleOutput() RateBasedRuleOutput

func (*RateBasedRule) ToRateBasedRuleOutputWithContext added in v3.13.0

func (i *RateBasedRule) ToRateBasedRuleOutputWithContext(ctx context.Context) RateBasedRuleOutput

func (*RateBasedRule) ToRateBasedRulePtrOutput added in v3.25.0

func (i *RateBasedRule) ToRateBasedRulePtrOutput() RateBasedRulePtrOutput

func (*RateBasedRule) ToRateBasedRulePtrOutputWithContext added in v3.25.0

func (i *RateBasedRule) ToRateBasedRulePtrOutputWithContext(ctx context.Context) RateBasedRulePtrOutput

type RateBasedRuleArgs

type RateBasedRuleArgs struct {
	// The name or description for the Amazon CloudWatch metric of this rule.
	MetricName pulumi.StringInput
	// The name or description of the rule.
	Name pulumi.StringPtrInput
	// The objects to include in a rule (documented below).
	Predicates RateBasedRulePredicateArrayInput
	// Valid value is IP.
	RateKey pulumi.StringInput
	// The maximum number of requests, which have an identical value in the field specified by the RateKey, allowed in a five-minute period. Minimum value is 100.
	RateLimit pulumi.IntInput
	// Key-value map of resource tags
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a RateBasedRule resource.

func (RateBasedRuleArgs) ElementType

func (RateBasedRuleArgs) ElementType() reflect.Type

type RateBasedRuleArray added in v3.25.0

type RateBasedRuleArray []RateBasedRuleInput

func (RateBasedRuleArray) ElementType added in v3.25.0

func (RateBasedRuleArray) ElementType() reflect.Type

func (RateBasedRuleArray) ToRateBasedRuleArrayOutput added in v3.25.0

func (i RateBasedRuleArray) ToRateBasedRuleArrayOutput() RateBasedRuleArrayOutput

func (RateBasedRuleArray) ToRateBasedRuleArrayOutputWithContext added in v3.25.0

func (i RateBasedRuleArray) ToRateBasedRuleArrayOutputWithContext(ctx context.Context) RateBasedRuleArrayOutput

type RateBasedRuleArrayInput added in v3.25.0

type RateBasedRuleArrayInput interface {
	pulumi.Input

	ToRateBasedRuleArrayOutput() RateBasedRuleArrayOutput
	ToRateBasedRuleArrayOutputWithContext(context.Context) RateBasedRuleArrayOutput
}

RateBasedRuleArrayInput is an input type that accepts RateBasedRuleArray and RateBasedRuleArrayOutput values. You can construct a concrete instance of `RateBasedRuleArrayInput` via:

RateBasedRuleArray{ RateBasedRuleArgs{...} }

type RateBasedRuleArrayOutput added in v3.25.0

type RateBasedRuleArrayOutput struct{ *pulumi.OutputState }

func (RateBasedRuleArrayOutput) ElementType added in v3.25.0

func (RateBasedRuleArrayOutput) ElementType() reflect.Type

func (RateBasedRuleArrayOutput) Index added in v3.25.0

func (RateBasedRuleArrayOutput) ToRateBasedRuleArrayOutput added in v3.25.0

func (o RateBasedRuleArrayOutput) ToRateBasedRuleArrayOutput() RateBasedRuleArrayOutput

func (RateBasedRuleArrayOutput) ToRateBasedRuleArrayOutputWithContext added in v3.25.0

func (o RateBasedRuleArrayOutput) ToRateBasedRuleArrayOutputWithContext(ctx context.Context) RateBasedRuleArrayOutput

type RateBasedRuleInput added in v3.13.0

type RateBasedRuleInput interface {
	pulumi.Input

	ToRateBasedRuleOutput() RateBasedRuleOutput
	ToRateBasedRuleOutputWithContext(ctx context.Context) RateBasedRuleOutput
}

type RateBasedRuleMap added in v3.25.0

type RateBasedRuleMap map[string]RateBasedRuleInput

func (RateBasedRuleMap) ElementType added in v3.25.0

func (RateBasedRuleMap) ElementType() reflect.Type

func (RateBasedRuleMap) ToRateBasedRuleMapOutput added in v3.25.0

func (i RateBasedRuleMap) ToRateBasedRuleMapOutput() RateBasedRuleMapOutput

func (RateBasedRuleMap) ToRateBasedRuleMapOutputWithContext added in v3.25.0

func (i RateBasedRuleMap) ToRateBasedRuleMapOutputWithContext(ctx context.Context) RateBasedRuleMapOutput

type RateBasedRuleMapInput added in v3.25.0

type RateBasedRuleMapInput interface {
	pulumi.Input

	ToRateBasedRuleMapOutput() RateBasedRuleMapOutput
	ToRateBasedRuleMapOutputWithContext(context.Context) RateBasedRuleMapOutput
}

RateBasedRuleMapInput is an input type that accepts RateBasedRuleMap and RateBasedRuleMapOutput values. You can construct a concrete instance of `RateBasedRuleMapInput` via:

RateBasedRuleMap{ "key": RateBasedRuleArgs{...} }

type RateBasedRuleMapOutput added in v3.25.0

type RateBasedRuleMapOutput struct{ *pulumi.OutputState }

func (RateBasedRuleMapOutput) ElementType added in v3.25.0

func (RateBasedRuleMapOutput) ElementType() reflect.Type

func (RateBasedRuleMapOutput) MapIndex added in v3.25.0

func (RateBasedRuleMapOutput) ToRateBasedRuleMapOutput added in v3.25.0

func (o RateBasedRuleMapOutput) ToRateBasedRuleMapOutput() RateBasedRuleMapOutput

func (RateBasedRuleMapOutput) ToRateBasedRuleMapOutputWithContext added in v3.25.0

func (o RateBasedRuleMapOutput) ToRateBasedRuleMapOutputWithContext(ctx context.Context) RateBasedRuleMapOutput

type RateBasedRuleOutput added in v3.13.0

type RateBasedRuleOutput struct {
	*pulumi.OutputState
}

func (RateBasedRuleOutput) ElementType added in v3.13.0

func (RateBasedRuleOutput) ElementType() reflect.Type

func (RateBasedRuleOutput) ToRateBasedRuleOutput added in v3.13.0

func (o RateBasedRuleOutput) ToRateBasedRuleOutput() RateBasedRuleOutput

func (RateBasedRuleOutput) ToRateBasedRuleOutputWithContext added in v3.13.0

func (o RateBasedRuleOutput) ToRateBasedRuleOutputWithContext(ctx context.Context) RateBasedRuleOutput

func (RateBasedRuleOutput) ToRateBasedRulePtrOutput added in v3.25.0

func (o RateBasedRuleOutput) ToRateBasedRulePtrOutput() RateBasedRulePtrOutput

func (RateBasedRuleOutput) ToRateBasedRulePtrOutputWithContext added in v3.25.0

func (o RateBasedRuleOutput) ToRateBasedRulePtrOutputWithContext(ctx context.Context) RateBasedRulePtrOutput

type RateBasedRulePredicate

type RateBasedRulePredicate struct {
	// A unique identifier for a predicate in the rule, such as Byte Match Set ID or IPSet ID.
	DataId string `pulumi:"dataId"`
	// Set this to `false` if you want to allow, block, or count requests
	// based on the settings in the specified `ByteMatchSet`, `IPSet`, `SqlInjectionMatchSet`, `XssMatchSet`, 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.
	// If set to `true`, AWS WAF will allow, block, or count requests based on all IP addresses _except_ `192.0.2.44`.
	Negated bool `pulumi:"negated"`
	// The type of predicate in a rule. Valid values: `ByteMatch`, `GeoMatch`, `IPMatch`, `RegexMatch`, `SizeConstraint`, `SqlInjectionMatch`, or `XssMatch`.
	Type string `pulumi:"type"`
}

type RateBasedRulePredicateArgs

type RateBasedRulePredicateArgs struct {
	// A unique identifier for a predicate in the rule, such as Byte Match Set ID or IPSet ID.
	DataId pulumi.StringInput `pulumi:"dataId"`
	// Set this to `false` if you want to allow, block, or count requests
	// based on the settings in the specified `ByteMatchSet`, `IPSet`, `SqlInjectionMatchSet`, `XssMatchSet`, 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.
	// If set to `true`, AWS WAF will allow, block, or count requests based on all IP addresses _except_ `192.0.2.44`.
	Negated pulumi.BoolInput `pulumi:"negated"`
	// The type of predicate in a rule. Valid values: `ByteMatch`, `GeoMatch`, `IPMatch`, `RegexMatch`, `SizeConstraint`, `SqlInjectionMatch`, or `XssMatch`.
	Type pulumi.StringInput `pulumi:"type"`
}

func (RateBasedRulePredicateArgs) ElementType

func (RateBasedRulePredicateArgs) ElementType() reflect.Type

func (RateBasedRulePredicateArgs) ToRateBasedRulePredicateOutput

func (i RateBasedRulePredicateArgs) ToRateBasedRulePredicateOutput() RateBasedRulePredicateOutput

func (RateBasedRulePredicateArgs) ToRateBasedRulePredicateOutputWithContext

func (i RateBasedRulePredicateArgs) ToRateBasedRulePredicateOutputWithContext(ctx context.Context) RateBasedRulePredicateOutput

type RateBasedRulePredicateArray

type RateBasedRulePredicateArray []RateBasedRulePredicateInput

func (RateBasedRulePredicateArray) ElementType

func (RateBasedRulePredicateArray) ToRateBasedRulePredicateArrayOutput

func (i RateBasedRulePredicateArray) ToRateBasedRulePredicateArrayOutput() RateBasedRulePredicateArrayOutput

func (RateBasedRulePredicateArray) ToRateBasedRulePredicateArrayOutputWithContext

func (i RateBasedRulePredicateArray) ToRateBasedRulePredicateArrayOutputWithContext(ctx context.Context) RateBasedRulePredicateArrayOutput

type RateBasedRulePredicateArrayInput

type RateBasedRulePredicateArrayInput interface {
	pulumi.Input

	ToRateBasedRulePredicateArrayOutput() RateBasedRulePredicateArrayOutput
	ToRateBasedRulePredicateArrayOutputWithContext(context.Context) RateBasedRulePredicateArrayOutput
}

RateBasedRulePredicateArrayInput is an input type that accepts RateBasedRulePredicateArray and RateBasedRulePredicateArrayOutput values. You can construct a concrete instance of `RateBasedRulePredicateArrayInput` via:

RateBasedRulePredicateArray{ RateBasedRulePredicateArgs{...} }

type RateBasedRulePredicateArrayOutput

type RateBasedRulePredicateArrayOutput struct{ *pulumi.OutputState }

func (RateBasedRulePredicateArrayOutput) ElementType

func (RateBasedRulePredicateArrayOutput) Index

func (RateBasedRulePredicateArrayOutput) ToRateBasedRulePredicateArrayOutput

func (o RateBasedRulePredicateArrayOutput) ToRateBasedRulePredicateArrayOutput() RateBasedRulePredicateArrayOutput

func (RateBasedRulePredicateArrayOutput) ToRateBasedRulePredicateArrayOutputWithContext

func (o RateBasedRulePredicateArrayOutput) ToRateBasedRulePredicateArrayOutputWithContext(ctx context.Context) RateBasedRulePredicateArrayOutput

type RateBasedRulePredicateInput

type RateBasedRulePredicateInput interface {
	pulumi.Input

	ToRateBasedRulePredicateOutput() RateBasedRulePredicateOutput
	ToRateBasedRulePredicateOutputWithContext(context.Context) RateBasedRulePredicateOutput
}

RateBasedRulePredicateInput is an input type that accepts RateBasedRulePredicateArgs and RateBasedRulePredicateOutput values. You can construct a concrete instance of `RateBasedRulePredicateInput` via:

RateBasedRulePredicateArgs{...}

type RateBasedRulePredicateOutput

type RateBasedRulePredicateOutput struct{ *pulumi.OutputState }

func (RateBasedRulePredicateOutput) DataId

A unique identifier for a predicate in the rule, such as Byte Match Set ID or IPSet ID.

func (RateBasedRulePredicateOutput) ElementType

func (RateBasedRulePredicateOutput) Negated

Set this to `false` if you want to allow, block, or count requests based on the settings in the specified `ByteMatchSet`, `IPSet`, `SqlInjectionMatchSet`, `XssMatchSet`, 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. If set to `true`, AWS WAF will allow, block, or count requests based on all IP addresses _except_ `192.0.2.44`.

func (RateBasedRulePredicateOutput) ToRateBasedRulePredicateOutput

func (o RateBasedRulePredicateOutput) ToRateBasedRulePredicateOutput() RateBasedRulePredicateOutput

func (RateBasedRulePredicateOutput) ToRateBasedRulePredicateOutputWithContext

func (o RateBasedRulePredicateOutput) ToRateBasedRulePredicateOutputWithContext(ctx context.Context) RateBasedRulePredicateOutput

func (RateBasedRulePredicateOutput) Type

The type of predicate in a rule. Valid values: `ByteMatch`, `GeoMatch`, `IPMatch`, `RegexMatch`, `SizeConstraint`, `SqlInjectionMatch`, or `XssMatch`.

type RateBasedRulePtrInput added in v3.25.0

type RateBasedRulePtrInput interface {
	pulumi.Input

	ToRateBasedRulePtrOutput() RateBasedRulePtrOutput
	ToRateBasedRulePtrOutputWithContext(ctx context.Context) RateBasedRulePtrOutput
}

type RateBasedRulePtrOutput added in v3.25.0

type RateBasedRulePtrOutput struct {
	*pulumi.OutputState
}

func (RateBasedRulePtrOutput) ElementType added in v3.25.0

func (RateBasedRulePtrOutput) ElementType() reflect.Type

func (RateBasedRulePtrOutput) ToRateBasedRulePtrOutput added in v3.25.0

func (o RateBasedRulePtrOutput) ToRateBasedRulePtrOutput() RateBasedRulePtrOutput

func (RateBasedRulePtrOutput) ToRateBasedRulePtrOutputWithContext added in v3.25.0

func (o RateBasedRulePtrOutput) ToRateBasedRulePtrOutputWithContext(ctx context.Context) RateBasedRulePtrOutput

type RateBasedRuleState

type RateBasedRuleState struct {
	// Amazon Resource Name (ARN)
	Arn pulumi.StringPtrInput
	// The name or description for the Amazon CloudWatch metric of this rule.
	MetricName pulumi.StringPtrInput
	// The name or description of the rule.
	Name pulumi.StringPtrInput
	// The objects to include in a rule (documented below).
	Predicates RateBasedRulePredicateArrayInput
	// Valid value is IP.
	RateKey pulumi.StringPtrInput
	// The maximum number of requests, which have an identical value in the field specified by the RateKey, allowed in a five-minute period. Minimum value is 100.
	RateLimit pulumi.IntPtrInput
	// Key-value map of resource tags
	Tags pulumi.StringMapInput
}

func (RateBasedRuleState) ElementType

func (RateBasedRuleState) ElementType() reflect.Type

type RegexMatchSet

type RegexMatchSet struct {
	pulumi.CustomResourceState

	// Amazon Resource Name (ARN)
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The name or description of the Regex Match Set.
	Name pulumi.StringOutput `pulumi:"name"`
	// 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. See below.
	RegexMatchTuples RegexMatchSetRegexMatchTupleArrayOutput `pulumi:"regexMatchTuples"`
}

Provides a WAF Regex Match Set Resource

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/waf"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleRegexPatternSet, err := waf.NewRegexPatternSet(ctx, "exampleRegexPatternSet", &waf.RegexPatternSetArgs{
			RegexPatternStrings: pulumi.StringArray{
				pulumi.String("one"),
				pulumi.String("two"),
			},
		})
		if err != nil {
			return err
		}
		_, err = waf.NewRegexMatchSet(ctx, "exampleRegexMatchSet", &waf.RegexMatchSetArgs{
			RegexMatchTuples: waf.RegexMatchSetRegexMatchTupleArray{
				&waf.RegexMatchSetRegexMatchTupleArgs{
					FieldToMatch: &waf.RegexMatchSetRegexMatchTupleFieldToMatchArgs{
						Data: pulumi.String("User-Agent"),
						Type: pulumi.String("HEADER"),
					},
					RegexPatternSetId:  exampleRegexPatternSet.ID(),
					TextTransformation: pulumi.String("NONE"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

WAF Regex Match Set can be imported using their ID, e.g.

```sh

$ pulumi import aws:waf/regexMatchSet:RegexMatchSet example a1b2c3d4-d5f6-7777-8888-9999aaaabbbbcccc

```

func GetRegexMatchSet

func GetRegexMatchSet(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RegexMatchSetState, opts ...pulumi.ResourceOption) (*RegexMatchSet, error)

GetRegexMatchSet gets an existing RegexMatchSet resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewRegexMatchSet

func NewRegexMatchSet(ctx *pulumi.Context,
	name string, args *RegexMatchSetArgs, opts ...pulumi.ResourceOption) (*RegexMatchSet, error)

NewRegexMatchSet registers a new resource with the given unique name, arguments, and options.

func (*RegexMatchSet) ElementType added in v3.13.0

func (*RegexMatchSet) ElementType() reflect.Type

func (*RegexMatchSet) ToRegexMatchSetOutput added in v3.13.0

func (i *RegexMatchSet) ToRegexMatchSetOutput() RegexMatchSetOutput

func (*RegexMatchSet) ToRegexMatchSetOutputWithContext added in v3.13.0

func (i *RegexMatchSet) ToRegexMatchSetOutputWithContext(ctx context.Context) RegexMatchSetOutput

func (*RegexMatchSet) ToRegexMatchSetPtrOutput added in v3.25.0

func (i *RegexMatchSet) ToRegexMatchSetPtrOutput() RegexMatchSetPtrOutput

func (*RegexMatchSet) ToRegexMatchSetPtrOutputWithContext added in v3.25.0

func (i *RegexMatchSet) ToRegexMatchSetPtrOutputWithContext(ctx context.Context) RegexMatchSetPtrOutput

type RegexMatchSetArgs

type RegexMatchSetArgs struct {
	// The name or description of the Regex Match Set.
	Name pulumi.StringPtrInput
	// 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. See below.
	RegexMatchTuples RegexMatchSetRegexMatchTupleArrayInput
}

The set of arguments for constructing a RegexMatchSet resource.

func (RegexMatchSetArgs) ElementType

func (RegexMatchSetArgs) ElementType() reflect.Type

type RegexMatchSetArray added in v3.25.0

type RegexMatchSetArray []RegexMatchSetInput

func (RegexMatchSetArray) ElementType added in v3.25.0

func (RegexMatchSetArray) ElementType() reflect.Type

func (RegexMatchSetArray) ToRegexMatchSetArrayOutput added in v3.25.0

func (i RegexMatchSetArray) ToRegexMatchSetArrayOutput() RegexMatchSetArrayOutput

func (RegexMatchSetArray) ToRegexMatchSetArrayOutputWithContext added in v3.25.0

func (i RegexMatchSetArray) ToRegexMatchSetArrayOutputWithContext(ctx context.Context) RegexMatchSetArrayOutput

type RegexMatchSetArrayInput added in v3.25.0

type RegexMatchSetArrayInput interface {
	pulumi.Input

	ToRegexMatchSetArrayOutput() RegexMatchSetArrayOutput
	ToRegexMatchSetArrayOutputWithContext(context.Context) RegexMatchSetArrayOutput
}

RegexMatchSetArrayInput is an input type that accepts RegexMatchSetArray and RegexMatchSetArrayOutput values. You can construct a concrete instance of `RegexMatchSetArrayInput` via:

RegexMatchSetArray{ RegexMatchSetArgs{...} }

type RegexMatchSetArrayOutput added in v3.25.0

type RegexMatchSetArrayOutput struct{ *pulumi.OutputState }

func (RegexMatchSetArrayOutput) ElementType added in v3.25.0

func (RegexMatchSetArrayOutput) ElementType() reflect.Type

func (RegexMatchSetArrayOutput) Index added in v3.25.0

func (RegexMatchSetArrayOutput) ToRegexMatchSetArrayOutput added in v3.25.0

func (o RegexMatchSetArrayOutput) ToRegexMatchSetArrayOutput() RegexMatchSetArrayOutput

func (RegexMatchSetArrayOutput) ToRegexMatchSetArrayOutputWithContext added in v3.25.0

func (o RegexMatchSetArrayOutput) ToRegexMatchSetArrayOutputWithContext(ctx context.Context) RegexMatchSetArrayOutput

type RegexMatchSetInput added in v3.13.0

type RegexMatchSetInput interface {
	pulumi.Input

	ToRegexMatchSetOutput() RegexMatchSetOutput
	ToRegexMatchSetOutputWithContext(ctx context.Context) RegexMatchSetOutput
}

type RegexMatchSetMap added in v3.25.0

type RegexMatchSetMap map[string]RegexMatchSetInput

func (RegexMatchSetMap) ElementType added in v3.25.0

func (RegexMatchSetMap) ElementType() reflect.Type

func (RegexMatchSetMap) ToRegexMatchSetMapOutput added in v3.25.0

func (i RegexMatchSetMap) ToRegexMatchSetMapOutput() RegexMatchSetMapOutput

func (RegexMatchSetMap) ToRegexMatchSetMapOutputWithContext added in v3.25.0

func (i RegexMatchSetMap) ToRegexMatchSetMapOutputWithContext(ctx context.Context) RegexMatchSetMapOutput

type RegexMatchSetMapInput added in v3.25.0

type RegexMatchSetMapInput interface {
	pulumi.Input

	ToRegexMatchSetMapOutput() RegexMatchSetMapOutput
	ToRegexMatchSetMapOutputWithContext(context.Context) RegexMatchSetMapOutput
}

RegexMatchSetMapInput is an input type that accepts RegexMatchSetMap and RegexMatchSetMapOutput values. You can construct a concrete instance of `RegexMatchSetMapInput` via:

RegexMatchSetMap{ "key": RegexMatchSetArgs{...} }

type RegexMatchSetMapOutput added in v3.25.0

type RegexMatchSetMapOutput struct{ *pulumi.OutputState }

func (RegexMatchSetMapOutput) ElementType added in v3.25.0

func (RegexMatchSetMapOutput) ElementType() reflect.Type

func (RegexMatchSetMapOutput) MapIndex added in v3.25.0

func (RegexMatchSetMapOutput) ToRegexMatchSetMapOutput added in v3.25.0

func (o RegexMatchSetMapOutput) ToRegexMatchSetMapOutput() RegexMatchSetMapOutput

func (RegexMatchSetMapOutput) ToRegexMatchSetMapOutputWithContext added in v3.25.0

func (o RegexMatchSetMapOutput) ToRegexMatchSetMapOutputWithContext(ctx context.Context) RegexMatchSetMapOutput

type RegexMatchSetOutput added in v3.13.0

type RegexMatchSetOutput struct {
	*pulumi.OutputState
}

func (RegexMatchSetOutput) ElementType added in v3.13.0

func (RegexMatchSetOutput) ElementType() reflect.Type

func (RegexMatchSetOutput) ToRegexMatchSetOutput added in v3.13.0

func (o RegexMatchSetOutput) ToRegexMatchSetOutput() RegexMatchSetOutput

func (RegexMatchSetOutput) ToRegexMatchSetOutputWithContext added in v3.13.0

func (o RegexMatchSetOutput) ToRegexMatchSetOutputWithContext(ctx context.Context) RegexMatchSetOutput

func (RegexMatchSetOutput) ToRegexMatchSetPtrOutput added in v3.25.0

func (o RegexMatchSetOutput) ToRegexMatchSetPtrOutput() RegexMatchSetPtrOutput

func (RegexMatchSetOutput) ToRegexMatchSetPtrOutputWithContext added in v3.25.0

func (o RegexMatchSetOutput) ToRegexMatchSetPtrOutputWithContext(ctx context.Context) RegexMatchSetPtrOutput

type RegexMatchSetPtrInput added in v3.25.0

type RegexMatchSetPtrInput interface {
	pulumi.Input

	ToRegexMatchSetPtrOutput() RegexMatchSetPtrOutput
	ToRegexMatchSetPtrOutputWithContext(ctx context.Context) RegexMatchSetPtrOutput
}

type RegexMatchSetPtrOutput added in v3.25.0

type RegexMatchSetPtrOutput struct {
	*pulumi.OutputState
}

func (RegexMatchSetPtrOutput) ElementType added in v3.25.0

func (RegexMatchSetPtrOutput) ElementType() reflect.Type

func (RegexMatchSetPtrOutput) ToRegexMatchSetPtrOutput added in v3.25.0

func (o RegexMatchSetPtrOutput) ToRegexMatchSetPtrOutput() RegexMatchSetPtrOutput

func (RegexMatchSetPtrOutput) ToRegexMatchSetPtrOutputWithContext added in v3.25.0

func (o RegexMatchSetPtrOutput) ToRegexMatchSetPtrOutputWithContext(ctx context.Context) RegexMatchSetPtrOutput

type RegexMatchSetRegexMatchTuple

type RegexMatchSetRegexMatchTuple struct {
	// The part of a web request that you want to search, such as a specified header or a query string.
	FieldToMatch RegexMatchSetRegexMatchTupleFieldToMatch `pulumi:"fieldToMatch"`
	// The ID of a `WAF Regex Pattern Set`.
	RegexPatternSetId string `pulumi:"regexPatternSetId"`
	// Text transformations used to eliminate unusual formatting that attackers use in web requests in an effort to bypass AWS WAF.
	// e.g. `CMD_LINE`, `HTML_ENTITY_DECODE` or `NONE`.
	// See [docs](http://docs.aws.amazon.com/waf/latest/APIReference/API_ByteMatchTuple.html#WAF-Type-ByteMatchTuple-TextTransformation)
	// for all supported values.
	TextTransformation string `pulumi:"textTransformation"`
}

type RegexMatchSetRegexMatchTupleArgs

type RegexMatchSetRegexMatchTupleArgs struct {
	// The part of a web request that you want to search, such as a specified header or a query string.
	FieldToMatch RegexMatchSetRegexMatchTupleFieldToMatchInput `pulumi:"fieldToMatch"`
	// The ID of a `WAF Regex Pattern Set`.
	RegexPatternSetId pulumi.StringInput `pulumi:"regexPatternSetId"`
	// Text transformations used to eliminate unusual formatting that attackers use in web requests in an effort to bypass AWS WAF.
	// e.g. `CMD_LINE`, `HTML_ENTITY_DECODE` or `NONE`.
	// See [docs](http://docs.aws.amazon.com/waf/latest/APIReference/API_ByteMatchTuple.html#WAF-Type-ByteMatchTuple-TextTransformation)
	// for all supported values.
	TextTransformation pulumi.StringInput `pulumi:"textTransformation"`
}

func (RegexMatchSetRegexMatchTupleArgs) ElementType

func (RegexMatchSetRegexMatchTupleArgs) ToRegexMatchSetRegexMatchTupleOutput

func (i RegexMatchSetRegexMatchTupleArgs) ToRegexMatchSetRegexMatchTupleOutput() RegexMatchSetRegexMatchTupleOutput

func (RegexMatchSetRegexMatchTupleArgs) ToRegexMatchSetRegexMatchTupleOutputWithContext

func (i RegexMatchSetRegexMatchTupleArgs) ToRegexMatchSetRegexMatchTupleOutputWithContext(ctx context.Context) RegexMatchSetRegexMatchTupleOutput

type RegexMatchSetRegexMatchTupleArray

type RegexMatchSetRegexMatchTupleArray []RegexMatchSetRegexMatchTupleInput

func (RegexMatchSetRegexMatchTupleArray) ElementType

func (RegexMatchSetRegexMatchTupleArray) ToRegexMatchSetRegexMatchTupleArrayOutput

func (i RegexMatchSetRegexMatchTupleArray) ToRegexMatchSetRegexMatchTupleArrayOutput() RegexMatchSetRegexMatchTupleArrayOutput

func (RegexMatchSetRegexMatchTupleArray) ToRegexMatchSetRegexMatchTupleArrayOutputWithContext

func (i RegexMatchSetRegexMatchTupleArray) ToRegexMatchSetRegexMatchTupleArrayOutputWithContext(ctx context.Context) RegexMatchSetRegexMatchTupleArrayOutput

type RegexMatchSetRegexMatchTupleArrayInput

type RegexMatchSetRegexMatchTupleArrayInput interface {
	pulumi.Input

	ToRegexMatchSetRegexMatchTupleArrayOutput() RegexMatchSetRegexMatchTupleArrayOutput
	ToRegexMatchSetRegexMatchTupleArrayOutputWithContext(context.Context) RegexMatchSetRegexMatchTupleArrayOutput
}

RegexMatchSetRegexMatchTupleArrayInput is an input type that accepts RegexMatchSetRegexMatchTupleArray and RegexMatchSetRegexMatchTupleArrayOutput values. You can construct a concrete instance of `RegexMatchSetRegexMatchTupleArrayInput` via:

RegexMatchSetRegexMatchTupleArray{ RegexMatchSetRegexMatchTupleArgs{...} }

type RegexMatchSetRegexMatchTupleArrayOutput

type RegexMatchSetRegexMatchTupleArrayOutput struct{ *pulumi.OutputState }

func (RegexMatchSetRegexMatchTupleArrayOutput) ElementType

func (RegexMatchSetRegexMatchTupleArrayOutput) Index

func (RegexMatchSetRegexMatchTupleArrayOutput) ToRegexMatchSetRegexMatchTupleArrayOutput

func (o RegexMatchSetRegexMatchTupleArrayOutput) ToRegexMatchSetRegexMatchTupleArrayOutput() RegexMatchSetRegexMatchTupleArrayOutput

func (RegexMatchSetRegexMatchTupleArrayOutput) ToRegexMatchSetRegexMatchTupleArrayOutputWithContext

func (o RegexMatchSetRegexMatchTupleArrayOutput) ToRegexMatchSetRegexMatchTupleArrayOutputWithContext(ctx context.Context) RegexMatchSetRegexMatchTupleArrayOutput

type RegexMatchSetRegexMatchTupleFieldToMatch

type RegexMatchSetRegexMatchTupleFieldToMatch struct {
	// When `type` is `HEADER`, enter the name of the header that you want to search, e.g. `User-Agent` or `Referer`.
	// If `type` is any other value, omit this field.
	Data *string `pulumi:"data"`
	// The part of the web request that you want AWS WAF to search for a specified string.
	// e.g. `HEADER`, `METHOD` or `BODY`.
	// See [docs](http://docs.aws.amazon.com/waf/latest/APIReference/API_FieldToMatch.html)
	// for all supported values.
	Type string `pulumi:"type"`
}

type RegexMatchSetRegexMatchTupleFieldToMatchArgs

type RegexMatchSetRegexMatchTupleFieldToMatchArgs struct {
	// When `type` is `HEADER`, enter the name of the header that you want to search, e.g. `User-Agent` or `Referer`.
	// If `type` is any other value, omit this field.
	Data pulumi.StringPtrInput `pulumi:"data"`
	// The part of the web request that you want AWS WAF to search for a specified string.
	// e.g. `HEADER`, `METHOD` or `BODY`.
	// See [docs](http://docs.aws.amazon.com/waf/latest/APIReference/API_FieldToMatch.html)
	// for all supported values.
	Type pulumi.StringInput `pulumi:"type"`
}

func (RegexMatchSetRegexMatchTupleFieldToMatchArgs) ElementType

func (RegexMatchSetRegexMatchTupleFieldToMatchArgs) ToRegexMatchSetRegexMatchTupleFieldToMatchOutput

func (i RegexMatchSetRegexMatchTupleFieldToMatchArgs) ToRegexMatchSetRegexMatchTupleFieldToMatchOutput() RegexMatchSetRegexMatchTupleFieldToMatchOutput

func (RegexMatchSetRegexMatchTupleFieldToMatchArgs) ToRegexMatchSetRegexMatchTupleFieldToMatchOutputWithContext

func (i RegexMatchSetRegexMatchTupleFieldToMatchArgs) ToRegexMatchSetRegexMatchTupleFieldToMatchOutputWithContext(ctx context.Context) RegexMatchSetRegexMatchTupleFieldToMatchOutput

type RegexMatchSetRegexMatchTupleFieldToMatchInput

type RegexMatchSetRegexMatchTupleFieldToMatchInput interface {
	pulumi.Input

	ToRegexMatchSetRegexMatchTupleFieldToMatchOutput() RegexMatchSetRegexMatchTupleFieldToMatchOutput
	ToRegexMatchSetRegexMatchTupleFieldToMatchOutputWithContext(context.Context) RegexMatchSetRegexMatchTupleFieldToMatchOutput
}

RegexMatchSetRegexMatchTupleFieldToMatchInput is an input type that accepts RegexMatchSetRegexMatchTupleFieldToMatchArgs and RegexMatchSetRegexMatchTupleFieldToMatchOutput values. You can construct a concrete instance of `RegexMatchSetRegexMatchTupleFieldToMatchInput` via:

RegexMatchSetRegexMatchTupleFieldToMatchArgs{...}

type RegexMatchSetRegexMatchTupleFieldToMatchOutput

type RegexMatchSetRegexMatchTupleFieldToMatchOutput struct{ *pulumi.OutputState }

func (RegexMatchSetRegexMatchTupleFieldToMatchOutput) Data

When `type` is `HEADER`, enter the name of the header that you want to search, e.g. `User-Agent` or `Referer`. If `type` is any other value, omit this field.

func (RegexMatchSetRegexMatchTupleFieldToMatchOutput) ElementType

func (RegexMatchSetRegexMatchTupleFieldToMatchOutput) ToRegexMatchSetRegexMatchTupleFieldToMatchOutput

func (o RegexMatchSetRegexMatchTupleFieldToMatchOutput) ToRegexMatchSetRegexMatchTupleFieldToMatchOutput() RegexMatchSetRegexMatchTupleFieldToMatchOutput

func (RegexMatchSetRegexMatchTupleFieldToMatchOutput) ToRegexMatchSetRegexMatchTupleFieldToMatchOutputWithContext

func (o RegexMatchSetRegexMatchTupleFieldToMatchOutput) ToRegexMatchSetRegexMatchTupleFieldToMatchOutputWithContext(ctx context.Context) RegexMatchSetRegexMatchTupleFieldToMatchOutput

func (RegexMatchSetRegexMatchTupleFieldToMatchOutput) Type

The part of the web request that you want AWS WAF to search for a specified string. e.g. `HEADER`, `METHOD` or `BODY`. See [docs](http://docs.aws.amazon.com/waf/latest/APIReference/API_FieldToMatch.html) for all supported values.

type RegexMatchSetRegexMatchTupleInput

type RegexMatchSetRegexMatchTupleInput interface {
	pulumi.Input

	ToRegexMatchSetRegexMatchTupleOutput() RegexMatchSetRegexMatchTupleOutput
	ToRegexMatchSetRegexMatchTupleOutputWithContext(context.Context) RegexMatchSetRegexMatchTupleOutput
}

RegexMatchSetRegexMatchTupleInput is an input type that accepts RegexMatchSetRegexMatchTupleArgs and RegexMatchSetRegexMatchTupleOutput values. You can construct a concrete instance of `RegexMatchSetRegexMatchTupleInput` via:

RegexMatchSetRegexMatchTupleArgs{...}

type RegexMatchSetRegexMatchTupleOutput

type RegexMatchSetRegexMatchTupleOutput struct{ *pulumi.OutputState }

func (RegexMatchSetRegexMatchTupleOutput) ElementType

func (RegexMatchSetRegexMatchTupleOutput) FieldToMatch

The part of a web request that you want to search, such as a specified header or a query string.

func (RegexMatchSetRegexMatchTupleOutput) RegexPatternSetId

The ID of a `WAF Regex Pattern Set`.

func (RegexMatchSetRegexMatchTupleOutput) TextTransformation

Text transformations used to eliminate unusual formatting that attackers use in web requests in an effort to bypass AWS WAF. e.g. `CMD_LINE`, `HTML_ENTITY_DECODE` or `NONE`. See [docs](http://docs.aws.amazon.com/waf/latest/APIReference/API_ByteMatchTuple.html#WAF-Type-ByteMatchTuple-TextTransformation) for all supported values.

func (RegexMatchSetRegexMatchTupleOutput) ToRegexMatchSetRegexMatchTupleOutput

func (o RegexMatchSetRegexMatchTupleOutput) ToRegexMatchSetRegexMatchTupleOutput() RegexMatchSetRegexMatchTupleOutput

func (RegexMatchSetRegexMatchTupleOutput) ToRegexMatchSetRegexMatchTupleOutputWithContext

func (o RegexMatchSetRegexMatchTupleOutput) ToRegexMatchSetRegexMatchTupleOutputWithContext(ctx context.Context) RegexMatchSetRegexMatchTupleOutput

type RegexMatchSetState

type RegexMatchSetState struct {
	// Amazon Resource Name (ARN)
	Arn pulumi.StringPtrInput
	// The name or description of the Regex Match Set.
	Name pulumi.StringPtrInput
	// 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. See below.
	RegexMatchTuples RegexMatchSetRegexMatchTupleArrayInput
}

func (RegexMatchSetState) ElementType

func (RegexMatchSetState) ElementType() reflect.Type

type RegexPatternSet

type RegexPatternSet struct {
	pulumi.CustomResourceState

	// Amazon Resource Name (ARN)
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The name or description of the Regex Pattern Set.
	Name pulumi.StringOutput `pulumi:"name"`
	// A list of regular expression (regex) patterns that you want AWS WAF to search for, such as `B[a@]dB[o0]t`.
	RegexPatternStrings pulumi.StringArrayOutput `pulumi:"regexPatternStrings"`
}

Provides a WAF Regex Pattern Set Resource

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/waf"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := waf.NewRegexPatternSet(ctx, "example", &waf.RegexPatternSetArgs{
			RegexPatternStrings: pulumi.StringArray{
				pulumi.String("one"),
				pulumi.String("two"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

AWS WAF Regex Pattern Set can be imported using their ID, e.g.

```sh

$ pulumi import aws:waf/regexPatternSet:RegexPatternSet example a1b2c3d4-d5f6-7777-8888-9999aaaabbbbcccc

```

func GetRegexPatternSet

func GetRegexPatternSet(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RegexPatternSetState, opts ...pulumi.ResourceOption) (*RegexPatternSet, error)

GetRegexPatternSet gets an existing RegexPatternSet resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewRegexPatternSet

func NewRegexPatternSet(ctx *pulumi.Context,
	name string, args *RegexPatternSetArgs, opts ...pulumi.ResourceOption) (*RegexPatternSet, error)

NewRegexPatternSet registers a new resource with the given unique name, arguments, and options.

func (*RegexPatternSet) ElementType added in v3.13.0

func (*RegexPatternSet) ElementType() reflect.Type

func (*RegexPatternSet) ToRegexPatternSetOutput added in v3.13.0

func (i *RegexPatternSet) ToRegexPatternSetOutput() RegexPatternSetOutput

func (*RegexPatternSet) ToRegexPatternSetOutputWithContext added in v3.13.0

func (i *RegexPatternSet) ToRegexPatternSetOutputWithContext(ctx context.Context) RegexPatternSetOutput

func (*RegexPatternSet) ToRegexPatternSetPtrOutput added in v3.25.0

func (i *RegexPatternSet) ToRegexPatternSetPtrOutput() RegexPatternSetPtrOutput

func (*RegexPatternSet) ToRegexPatternSetPtrOutputWithContext added in v3.25.0

func (i *RegexPatternSet) ToRegexPatternSetPtrOutputWithContext(ctx context.Context) RegexPatternSetPtrOutput

type RegexPatternSetArgs

type RegexPatternSetArgs struct {
	// The name or description of the Regex Pattern Set.
	Name pulumi.StringPtrInput
	// A list of regular expression (regex) patterns that you want AWS WAF to search for, such as `B[a@]dB[o0]t`.
	RegexPatternStrings pulumi.StringArrayInput
}

The set of arguments for constructing a RegexPatternSet resource.

func (RegexPatternSetArgs) ElementType

func (RegexPatternSetArgs) ElementType() reflect.Type

type RegexPatternSetArray added in v3.25.0

type RegexPatternSetArray []RegexPatternSetInput

func (RegexPatternSetArray) ElementType added in v3.25.0

func (RegexPatternSetArray) ElementType() reflect.Type

func (RegexPatternSetArray) ToRegexPatternSetArrayOutput added in v3.25.0

func (i RegexPatternSetArray) ToRegexPatternSetArrayOutput() RegexPatternSetArrayOutput

func (RegexPatternSetArray) ToRegexPatternSetArrayOutputWithContext added in v3.25.0

func (i RegexPatternSetArray) ToRegexPatternSetArrayOutputWithContext(ctx context.Context) RegexPatternSetArrayOutput

type RegexPatternSetArrayInput added in v3.25.0

type RegexPatternSetArrayInput interface {
	pulumi.Input

	ToRegexPatternSetArrayOutput() RegexPatternSetArrayOutput
	ToRegexPatternSetArrayOutputWithContext(context.Context) RegexPatternSetArrayOutput
}

RegexPatternSetArrayInput is an input type that accepts RegexPatternSetArray and RegexPatternSetArrayOutput values. You can construct a concrete instance of `RegexPatternSetArrayInput` via:

RegexPatternSetArray{ RegexPatternSetArgs{...} }

type RegexPatternSetArrayOutput added in v3.25.0

type RegexPatternSetArrayOutput struct{ *pulumi.OutputState }

func (RegexPatternSetArrayOutput) ElementType added in v3.25.0

func (RegexPatternSetArrayOutput) ElementType() reflect.Type

func (RegexPatternSetArrayOutput) Index added in v3.25.0

func (RegexPatternSetArrayOutput) ToRegexPatternSetArrayOutput added in v3.25.0

func (o RegexPatternSetArrayOutput) ToRegexPatternSetArrayOutput() RegexPatternSetArrayOutput

func (RegexPatternSetArrayOutput) ToRegexPatternSetArrayOutputWithContext added in v3.25.0

func (o RegexPatternSetArrayOutput) ToRegexPatternSetArrayOutputWithContext(ctx context.Context) RegexPatternSetArrayOutput

type RegexPatternSetInput added in v3.13.0

type RegexPatternSetInput interface {
	pulumi.Input

	ToRegexPatternSetOutput() RegexPatternSetOutput
	ToRegexPatternSetOutputWithContext(ctx context.Context) RegexPatternSetOutput
}

type RegexPatternSetMap added in v3.25.0

type RegexPatternSetMap map[string]RegexPatternSetInput

func (RegexPatternSetMap) ElementType added in v3.25.0

func (RegexPatternSetMap) ElementType() reflect.Type

func (RegexPatternSetMap) ToRegexPatternSetMapOutput added in v3.25.0

func (i RegexPatternSetMap) ToRegexPatternSetMapOutput() RegexPatternSetMapOutput

func (RegexPatternSetMap) ToRegexPatternSetMapOutputWithContext added in v3.25.0

func (i RegexPatternSetMap) ToRegexPatternSetMapOutputWithContext(ctx context.Context) RegexPatternSetMapOutput

type RegexPatternSetMapInput added in v3.25.0

type RegexPatternSetMapInput interface {
	pulumi.Input

	ToRegexPatternSetMapOutput() RegexPatternSetMapOutput
	ToRegexPatternSetMapOutputWithContext(context.Context) RegexPatternSetMapOutput
}

RegexPatternSetMapInput is an input type that accepts RegexPatternSetMap and RegexPatternSetMapOutput values. You can construct a concrete instance of `RegexPatternSetMapInput` via:

RegexPatternSetMap{ "key": RegexPatternSetArgs{...} }

type RegexPatternSetMapOutput added in v3.25.0

type RegexPatternSetMapOutput struct{ *pulumi.OutputState }

func (RegexPatternSetMapOutput) ElementType added in v3.25.0

func (RegexPatternSetMapOutput) ElementType() reflect.Type

func (RegexPatternSetMapOutput) MapIndex added in v3.25.0

func (RegexPatternSetMapOutput) ToRegexPatternSetMapOutput added in v3.25.0

func (o RegexPatternSetMapOutput) ToRegexPatternSetMapOutput() RegexPatternSetMapOutput

func (RegexPatternSetMapOutput) ToRegexPatternSetMapOutputWithContext added in v3.25.0

func (o RegexPatternSetMapOutput) ToRegexPatternSetMapOutputWithContext(ctx context.Context) RegexPatternSetMapOutput

type RegexPatternSetOutput added in v3.13.0

type RegexPatternSetOutput struct {
	*pulumi.OutputState
}

func (RegexPatternSetOutput) ElementType added in v3.13.0

func (RegexPatternSetOutput) ElementType() reflect.Type

func (RegexPatternSetOutput) ToRegexPatternSetOutput added in v3.13.0

func (o RegexPatternSetOutput) ToRegexPatternSetOutput() RegexPatternSetOutput

func (RegexPatternSetOutput) ToRegexPatternSetOutputWithContext added in v3.13.0

func (o RegexPatternSetOutput) ToRegexPatternSetOutputWithContext(ctx context.Context) RegexPatternSetOutput

func (RegexPatternSetOutput) ToRegexPatternSetPtrOutput added in v3.25.0

func (o RegexPatternSetOutput) ToRegexPatternSetPtrOutput() RegexPatternSetPtrOutput

func (RegexPatternSetOutput) ToRegexPatternSetPtrOutputWithContext added in v3.25.0

func (o RegexPatternSetOutput) ToRegexPatternSetPtrOutputWithContext(ctx context.Context) RegexPatternSetPtrOutput

type RegexPatternSetPtrInput added in v3.25.0

type RegexPatternSetPtrInput interface {
	pulumi.Input

	ToRegexPatternSetPtrOutput() RegexPatternSetPtrOutput
	ToRegexPatternSetPtrOutputWithContext(ctx context.Context) RegexPatternSetPtrOutput
}

type RegexPatternSetPtrOutput added in v3.25.0

type RegexPatternSetPtrOutput struct {
	*pulumi.OutputState
}

func (RegexPatternSetPtrOutput) ElementType added in v3.25.0

func (RegexPatternSetPtrOutput) ElementType() reflect.Type

func (RegexPatternSetPtrOutput) ToRegexPatternSetPtrOutput added in v3.25.0

func (o RegexPatternSetPtrOutput) ToRegexPatternSetPtrOutput() RegexPatternSetPtrOutput

func (RegexPatternSetPtrOutput) ToRegexPatternSetPtrOutputWithContext added in v3.25.0

func (o RegexPatternSetPtrOutput) ToRegexPatternSetPtrOutputWithContext(ctx context.Context) RegexPatternSetPtrOutput

type RegexPatternSetState

type RegexPatternSetState struct {
	// Amazon Resource Name (ARN)
	Arn pulumi.StringPtrInput
	// The name or description of the Regex Pattern Set.
	Name pulumi.StringPtrInput
	// A list of regular expression (regex) patterns that you want AWS WAF to search for, such as `B[a@]dB[o0]t`.
	RegexPatternStrings pulumi.StringArrayInput
}

func (RegexPatternSetState) ElementType

func (RegexPatternSetState) ElementType() reflect.Type

type Rule

type Rule struct {
	pulumi.CustomResourceState

	// The ARN of the WAF rule.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The name or description for the Amazon CloudWatch metric of this rule. The name can contain only alphanumeric characters (A-Z, a-z, 0-9); the name can't contain whitespace.
	MetricName pulumi.StringOutput `pulumi:"metricName"`
	// The name or description of the rule.
	Name pulumi.StringOutput `pulumi:"name"`
	// The objects to include in a rule (documented below).
	Predicates RulePredicateArrayOutput `pulumi:"predicates"`
	// Key-value map of resource tags
	Tags pulumi.StringMapOutput `pulumi:"tags"`
}

Provides a WAF Rule Resource

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/waf"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		ipset, err := waf.NewIpSet(ctx, "ipset", &waf.IpSetArgs{
			IpSetDescriptors: waf.IpSetIpSetDescriptorArray{
				&waf.IpSetIpSetDescriptorArgs{
					Type:  pulumi.String("IPV4"),
					Value: pulumi.String("192.0.7.0/24"),
				},
			},
		})
		if err != nil {
			return err
		}
		_, err = waf.NewRule(ctx, "wafrule", &waf.RuleArgs{
			MetricName: pulumi.String("tfWAFRule"),
			Predicates: waf.RulePredicateArray{
				&waf.RulePredicateArgs{
					DataId:  ipset.ID(),
					Negated: pulumi.Bool(false),
					Type:    pulumi.String("IPMatch"),
				},
			},
		}, pulumi.DependsOn([]pulumi.Resource{
			ipset,
		}))
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

WAF rules can be imported using the id, e.g.

```sh

$ pulumi import aws:waf/rule:Rule example a1b2c3d4-d5f6-7777-8888-9999aaaabbbbcccc

```

func GetRule

func GetRule(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RuleState, opts ...pulumi.ResourceOption) (*Rule, error)

GetRule gets an existing Rule resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewRule

func NewRule(ctx *pulumi.Context,
	name string, args *RuleArgs, opts ...pulumi.ResourceOption) (*Rule, error)

NewRule registers a new resource with the given unique name, arguments, and options.

func (*Rule) ElementType added in v3.13.0

func (*Rule) ElementType() reflect.Type

func (*Rule) ToRuleOutput added in v3.13.0

func (i *Rule) ToRuleOutput() RuleOutput

func (*Rule) ToRuleOutputWithContext added in v3.13.0

func (i *Rule) ToRuleOutputWithContext(ctx context.Context) RuleOutput

func (*Rule) ToRulePtrOutput added in v3.25.0

func (i *Rule) ToRulePtrOutput() RulePtrOutput

func (*Rule) ToRulePtrOutputWithContext added in v3.25.0

func (i *Rule) ToRulePtrOutputWithContext(ctx context.Context) RulePtrOutput

type RuleArgs

type RuleArgs struct {
	// The name or description for the Amazon CloudWatch metric of this rule. The name can contain only alphanumeric characters (A-Z, a-z, 0-9); the name can't contain whitespace.
	MetricName pulumi.StringInput
	// The name or description of the rule.
	Name pulumi.StringPtrInput
	// The objects to include in a rule (documented below).
	Predicates RulePredicateArrayInput
	// Key-value map of resource tags
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a Rule resource.

func (RuleArgs) ElementType

func (RuleArgs) ElementType() reflect.Type

type RuleArray added in v3.25.0

type RuleArray []RuleInput

func (RuleArray) ElementType added in v3.25.0

func (RuleArray) ElementType() reflect.Type

func (RuleArray) ToRuleArrayOutput added in v3.25.0

func (i RuleArray) ToRuleArrayOutput() RuleArrayOutput

func (RuleArray) ToRuleArrayOutputWithContext added in v3.25.0

func (i RuleArray) ToRuleArrayOutputWithContext(ctx context.Context) RuleArrayOutput

type RuleArrayInput added in v3.25.0

type RuleArrayInput interface {
	pulumi.Input

	ToRuleArrayOutput() RuleArrayOutput
	ToRuleArrayOutputWithContext(context.Context) RuleArrayOutput
}

RuleArrayInput is an input type that accepts RuleArray and RuleArrayOutput values. You can construct a concrete instance of `RuleArrayInput` via:

RuleArray{ RuleArgs{...} }

type RuleArrayOutput added in v3.25.0

type RuleArrayOutput struct{ *pulumi.OutputState }

func (RuleArrayOutput) ElementType added in v3.25.0

func (RuleArrayOutput) ElementType() reflect.Type

func (RuleArrayOutput) Index added in v3.25.0

func (RuleArrayOutput) ToRuleArrayOutput added in v3.25.0

func (o RuleArrayOutput) ToRuleArrayOutput() RuleArrayOutput

func (RuleArrayOutput) ToRuleArrayOutputWithContext added in v3.25.0

func (o RuleArrayOutput) ToRuleArrayOutputWithContext(ctx context.Context) RuleArrayOutput

type RuleGroup

type RuleGroup struct {
	pulumi.CustomResourceState

	// A list of activated rules, see below
	ActivatedRules RuleGroupActivatedRuleArrayOutput `pulumi:"activatedRules"`
	// The ARN of the WAF rule group.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// A friendly name for the metrics from the rule group
	MetricName pulumi.StringOutput `pulumi:"metricName"`
	// A friendly name of the rule group
	Name pulumi.StringOutput `pulumi:"name"`
	// Key-value map of resource tags
	Tags pulumi.StringMapOutput `pulumi:"tags"`
}

Provides a WAF Rule Group Resource

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/waf"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleRule, err := waf.NewRule(ctx, "exampleRule", &waf.RuleArgs{
			MetricName: pulumi.String("example"),
		})
		if err != nil {
			return err
		}
		_, err = waf.NewRuleGroup(ctx, "exampleRuleGroup", &waf.RuleGroupArgs{
			MetricName: pulumi.String("example"),
			ActivatedRules: waf.RuleGroupActivatedRuleArray{
				&waf.RuleGroupActivatedRuleArgs{
					Action: &waf.RuleGroupActivatedRuleActionArgs{
						Type: pulumi.String("COUNT"),
					},
					Priority: pulumi.Int(50),
					RuleId:   exampleRule.ID(),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

WAF Rule Group can be imported using the id, e.g.

```sh

$ pulumi import aws:waf/ruleGroup:RuleGroup example a1b2c3d4-d5f6-7777-8888-9999aaaabbbbcccc

```

func GetRuleGroup

func GetRuleGroup(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RuleGroupState, opts ...pulumi.ResourceOption) (*RuleGroup, error)

GetRuleGroup gets an existing RuleGroup resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewRuleGroup

func NewRuleGroup(ctx *pulumi.Context,
	name string, args *RuleGroupArgs, opts ...pulumi.ResourceOption) (*RuleGroup, error)

NewRuleGroup registers a new resource with the given unique name, arguments, and options.

func (*RuleGroup) ElementType added in v3.13.0

func (*RuleGroup) ElementType() reflect.Type

func (*RuleGroup) ToRuleGroupOutput added in v3.13.0

func (i *RuleGroup) ToRuleGroupOutput() RuleGroupOutput

func (*RuleGroup) ToRuleGroupOutputWithContext added in v3.13.0

func (i *RuleGroup) ToRuleGroupOutputWithContext(ctx context.Context) RuleGroupOutput

func (*RuleGroup) ToRuleGroupPtrOutput added in v3.25.0

func (i *RuleGroup) ToRuleGroupPtrOutput() RuleGroupPtrOutput

func (*RuleGroup) ToRuleGroupPtrOutputWithContext added in v3.25.0

func (i *RuleGroup) ToRuleGroupPtrOutputWithContext(ctx context.Context) RuleGroupPtrOutput

type RuleGroupActivatedRule

type RuleGroupActivatedRule struct {
	// Specifies the action that CloudFront or AWS WAF takes when a web request matches the conditions in the rule.
	Action RuleGroupActivatedRuleAction `pulumi:"action"`
	// Specifies the order in which the rules are evaluated. Rules with a lower value are evaluated before rules with a higher value.
	Priority int `pulumi:"priority"`
	// The ID of a `wafRule`
	RuleId string `pulumi:"ruleId"`
	// The rule type, either `REGULAR`, `RATE_BASED`, or `GROUP`. Defaults to `REGULAR`.
	Type *string `pulumi:"type"`
}

type RuleGroupActivatedRuleAction

type RuleGroupActivatedRuleAction struct {
	// The rule type, either `REGULAR`, `RATE_BASED`, or `GROUP`. Defaults to `REGULAR`.
	Type string `pulumi:"type"`
}

type RuleGroupActivatedRuleActionArgs

type RuleGroupActivatedRuleActionArgs struct {
	// The rule type, either `REGULAR`, `RATE_BASED`, or `GROUP`. Defaults to `REGULAR`.
	Type pulumi.StringInput `pulumi:"type"`
}

func (RuleGroupActivatedRuleActionArgs) ElementType

func (RuleGroupActivatedRuleActionArgs) ToRuleGroupActivatedRuleActionOutput

func (i RuleGroupActivatedRuleActionArgs) ToRuleGroupActivatedRuleActionOutput() RuleGroupActivatedRuleActionOutput

func (RuleGroupActivatedRuleActionArgs) ToRuleGroupActivatedRuleActionOutputWithContext

func (i RuleGroupActivatedRuleActionArgs) ToRuleGroupActivatedRuleActionOutputWithContext(ctx context.Context) RuleGroupActivatedRuleActionOutput

type RuleGroupActivatedRuleActionInput

type RuleGroupActivatedRuleActionInput interface {
	pulumi.Input

	ToRuleGroupActivatedRuleActionOutput() RuleGroupActivatedRuleActionOutput
	ToRuleGroupActivatedRuleActionOutputWithContext(context.Context) RuleGroupActivatedRuleActionOutput
}

RuleGroupActivatedRuleActionInput is an input type that accepts RuleGroupActivatedRuleActionArgs and RuleGroupActivatedRuleActionOutput values. You can construct a concrete instance of `RuleGroupActivatedRuleActionInput` via:

RuleGroupActivatedRuleActionArgs{...}

type RuleGroupActivatedRuleActionOutput

type RuleGroupActivatedRuleActionOutput struct{ *pulumi.OutputState }

func (RuleGroupActivatedRuleActionOutput) ElementType

func (RuleGroupActivatedRuleActionOutput) ToRuleGroupActivatedRuleActionOutput

func (o RuleGroupActivatedRuleActionOutput) ToRuleGroupActivatedRuleActionOutput() RuleGroupActivatedRuleActionOutput

func (RuleGroupActivatedRuleActionOutput) ToRuleGroupActivatedRuleActionOutputWithContext

func (o RuleGroupActivatedRuleActionOutput) ToRuleGroupActivatedRuleActionOutputWithContext(ctx context.Context) RuleGroupActivatedRuleActionOutput

func (RuleGroupActivatedRuleActionOutput) Type

The rule type, either `REGULAR`, `RATE_BASED`, or `GROUP`. Defaults to `REGULAR`.

type RuleGroupActivatedRuleArgs

type RuleGroupActivatedRuleArgs struct {
	// Specifies the action that CloudFront or AWS WAF takes when a web request matches the conditions in the rule.
	Action RuleGroupActivatedRuleActionInput `pulumi:"action"`
	// Specifies the order in which the rules are evaluated. Rules with a lower value are evaluated before rules with a higher value.
	Priority pulumi.IntInput `pulumi:"priority"`
	// The ID of a `wafRule`
	RuleId pulumi.StringInput `pulumi:"ruleId"`
	// The rule type, either `REGULAR`, `RATE_BASED`, or `GROUP`. Defaults to `REGULAR`.
	Type pulumi.StringPtrInput `pulumi:"type"`
}

func (RuleGroupActivatedRuleArgs) ElementType

func (RuleGroupActivatedRuleArgs) ElementType() reflect.Type

func (RuleGroupActivatedRuleArgs) ToRuleGroupActivatedRuleOutput

func (i RuleGroupActivatedRuleArgs) ToRuleGroupActivatedRuleOutput() RuleGroupActivatedRuleOutput

func (RuleGroupActivatedRuleArgs) ToRuleGroupActivatedRuleOutputWithContext

func (i RuleGroupActivatedRuleArgs) ToRuleGroupActivatedRuleOutputWithContext(ctx context.Context) RuleGroupActivatedRuleOutput

type RuleGroupActivatedRuleArray

type RuleGroupActivatedRuleArray []RuleGroupActivatedRuleInput

func (RuleGroupActivatedRuleArray) ElementType

func (RuleGroupActivatedRuleArray) ToRuleGroupActivatedRuleArrayOutput

func (i RuleGroupActivatedRuleArray) ToRuleGroupActivatedRuleArrayOutput() RuleGroupActivatedRuleArrayOutput

func (RuleGroupActivatedRuleArray) ToRuleGroupActivatedRuleArrayOutputWithContext

func (i RuleGroupActivatedRuleArray) ToRuleGroupActivatedRuleArrayOutputWithContext(ctx context.Context) RuleGroupActivatedRuleArrayOutput

type RuleGroupActivatedRuleArrayInput

type RuleGroupActivatedRuleArrayInput interface {
	pulumi.Input

	ToRuleGroupActivatedRuleArrayOutput() RuleGroupActivatedRuleArrayOutput
	ToRuleGroupActivatedRuleArrayOutputWithContext(context.Context) RuleGroupActivatedRuleArrayOutput
}

RuleGroupActivatedRuleArrayInput is an input type that accepts RuleGroupActivatedRuleArray and RuleGroupActivatedRuleArrayOutput values. You can construct a concrete instance of `RuleGroupActivatedRuleArrayInput` via:

RuleGroupActivatedRuleArray{ RuleGroupActivatedRuleArgs{...} }

type RuleGroupActivatedRuleArrayOutput

type RuleGroupActivatedRuleArrayOutput struct{ *pulumi.OutputState }

func (RuleGroupActivatedRuleArrayOutput) ElementType

func (RuleGroupActivatedRuleArrayOutput) Index

func (RuleGroupActivatedRuleArrayOutput) ToRuleGroupActivatedRuleArrayOutput

func (o RuleGroupActivatedRuleArrayOutput) ToRuleGroupActivatedRuleArrayOutput() RuleGroupActivatedRuleArrayOutput

func (RuleGroupActivatedRuleArrayOutput) ToRuleGroupActivatedRuleArrayOutputWithContext

func (o RuleGroupActivatedRuleArrayOutput) ToRuleGroupActivatedRuleArrayOutputWithContext(ctx context.Context) RuleGroupActivatedRuleArrayOutput

type RuleGroupActivatedRuleInput

type RuleGroupActivatedRuleInput interface {
	pulumi.Input

	ToRuleGroupActivatedRuleOutput() RuleGroupActivatedRuleOutput
	ToRuleGroupActivatedRuleOutputWithContext(context.Context) RuleGroupActivatedRuleOutput
}

RuleGroupActivatedRuleInput is an input type that accepts RuleGroupActivatedRuleArgs and RuleGroupActivatedRuleOutput values. You can construct a concrete instance of `RuleGroupActivatedRuleInput` via:

RuleGroupActivatedRuleArgs{...}

type RuleGroupActivatedRuleOutput

type RuleGroupActivatedRuleOutput struct{ *pulumi.OutputState }

func (RuleGroupActivatedRuleOutput) Action

Specifies the action that CloudFront or AWS WAF takes when a web request matches the conditions in the rule.

func (RuleGroupActivatedRuleOutput) ElementType

func (RuleGroupActivatedRuleOutput) Priority

Specifies the order in which the rules are evaluated. Rules with a lower value are evaluated before rules with a higher value.

func (RuleGroupActivatedRuleOutput) RuleId

The ID of a `wafRule`

func (RuleGroupActivatedRuleOutput) ToRuleGroupActivatedRuleOutput

func (o RuleGroupActivatedRuleOutput) ToRuleGroupActivatedRuleOutput() RuleGroupActivatedRuleOutput

func (RuleGroupActivatedRuleOutput) ToRuleGroupActivatedRuleOutputWithContext

func (o RuleGroupActivatedRuleOutput) ToRuleGroupActivatedRuleOutputWithContext(ctx context.Context) RuleGroupActivatedRuleOutput

func (RuleGroupActivatedRuleOutput) Type

The rule type, either `REGULAR`, `RATE_BASED`, or `GROUP`. Defaults to `REGULAR`.

type RuleGroupArgs

type RuleGroupArgs struct {
	// A list of activated rules, see below
	ActivatedRules RuleGroupActivatedRuleArrayInput
	// A friendly name for the metrics from the rule group
	MetricName pulumi.StringInput
	// A friendly name of the rule group
	Name pulumi.StringPtrInput
	// Key-value map of resource tags
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a RuleGroup resource.

func (RuleGroupArgs) ElementType

func (RuleGroupArgs) ElementType() reflect.Type

type RuleGroupArray added in v3.25.0

type RuleGroupArray []RuleGroupInput

func (RuleGroupArray) ElementType added in v3.25.0

func (RuleGroupArray) ElementType() reflect.Type

func (RuleGroupArray) ToRuleGroupArrayOutput added in v3.25.0

func (i RuleGroupArray) ToRuleGroupArrayOutput() RuleGroupArrayOutput

func (RuleGroupArray) ToRuleGroupArrayOutputWithContext added in v3.25.0

func (i RuleGroupArray) ToRuleGroupArrayOutputWithContext(ctx context.Context) RuleGroupArrayOutput

type RuleGroupArrayInput added in v3.25.0

type RuleGroupArrayInput interface {
	pulumi.Input

	ToRuleGroupArrayOutput() RuleGroupArrayOutput
	ToRuleGroupArrayOutputWithContext(context.Context) RuleGroupArrayOutput
}

RuleGroupArrayInput is an input type that accepts RuleGroupArray and RuleGroupArrayOutput values. You can construct a concrete instance of `RuleGroupArrayInput` via:

RuleGroupArray{ RuleGroupArgs{...} }

type RuleGroupArrayOutput added in v3.25.0

type RuleGroupArrayOutput struct{ *pulumi.OutputState }

func (RuleGroupArrayOutput) ElementType added in v3.25.0

func (RuleGroupArrayOutput) ElementType() reflect.Type

func (RuleGroupArrayOutput) Index added in v3.25.0

func (RuleGroupArrayOutput) ToRuleGroupArrayOutput added in v3.25.0

func (o RuleGroupArrayOutput) ToRuleGroupArrayOutput() RuleGroupArrayOutput

func (RuleGroupArrayOutput) ToRuleGroupArrayOutputWithContext added in v3.25.0

func (o RuleGroupArrayOutput) ToRuleGroupArrayOutputWithContext(ctx context.Context) RuleGroupArrayOutput

type RuleGroupInput added in v3.13.0

type RuleGroupInput interface {
	pulumi.Input

	ToRuleGroupOutput() RuleGroupOutput
	ToRuleGroupOutputWithContext(ctx context.Context) RuleGroupOutput
}

type RuleGroupMap added in v3.25.0

type RuleGroupMap map[string]RuleGroupInput

func (RuleGroupMap) ElementType added in v3.25.0

func (RuleGroupMap) ElementType() reflect.Type

func (RuleGroupMap) ToRuleGroupMapOutput added in v3.25.0

func (i RuleGroupMap) ToRuleGroupMapOutput() RuleGroupMapOutput

func (RuleGroupMap) ToRuleGroupMapOutputWithContext added in v3.25.0

func (i RuleGroupMap) ToRuleGroupMapOutputWithContext(ctx context.Context) RuleGroupMapOutput

type RuleGroupMapInput added in v3.25.0

type RuleGroupMapInput interface {
	pulumi.Input

	ToRuleGroupMapOutput() RuleGroupMapOutput
	ToRuleGroupMapOutputWithContext(context.Context) RuleGroupMapOutput
}

RuleGroupMapInput is an input type that accepts RuleGroupMap and RuleGroupMapOutput values. You can construct a concrete instance of `RuleGroupMapInput` via:

RuleGroupMap{ "key": RuleGroupArgs{...} }

type RuleGroupMapOutput added in v3.25.0

type RuleGroupMapOutput struct{ *pulumi.OutputState }

func (RuleGroupMapOutput) ElementType added in v3.25.0

func (RuleGroupMapOutput) ElementType() reflect.Type

func (RuleGroupMapOutput) MapIndex added in v3.25.0

func (RuleGroupMapOutput) ToRuleGroupMapOutput added in v3.25.0

func (o RuleGroupMapOutput) ToRuleGroupMapOutput() RuleGroupMapOutput

func (RuleGroupMapOutput) ToRuleGroupMapOutputWithContext added in v3.25.0

func (o RuleGroupMapOutput) ToRuleGroupMapOutputWithContext(ctx context.Context) RuleGroupMapOutput

type RuleGroupOutput added in v3.13.0

type RuleGroupOutput struct {
	*pulumi.OutputState
}

func (RuleGroupOutput) ElementType added in v3.13.0

func (RuleGroupOutput) ElementType() reflect.Type

func (RuleGroupOutput) ToRuleGroupOutput added in v3.13.0

func (o RuleGroupOutput) ToRuleGroupOutput() RuleGroupOutput

func (RuleGroupOutput) ToRuleGroupOutputWithContext added in v3.13.0

func (o RuleGroupOutput) ToRuleGroupOutputWithContext(ctx context.Context) RuleGroupOutput

func (RuleGroupOutput) ToRuleGroupPtrOutput added in v3.25.0

func (o RuleGroupOutput) ToRuleGroupPtrOutput() RuleGroupPtrOutput

func (RuleGroupOutput) ToRuleGroupPtrOutputWithContext added in v3.25.0

func (o RuleGroupOutput) ToRuleGroupPtrOutputWithContext(ctx context.Context) RuleGroupPtrOutput

type RuleGroupPtrInput added in v3.25.0

type RuleGroupPtrInput interface {
	pulumi.Input

	ToRuleGroupPtrOutput() RuleGroupPtrOutput
	ToRuleGroupPtrOutputWithContext(ctx context.Context) RuleGroupPtrOutput
}

type RuleGroupPtrOutput added in v3.25.0

type RuleGroupPtrOutput struct {
	*pulumi.OutputState
}

func (RuleGroupPtrOutput) ElementType added in v3.25.0

func (RuleGroupPtrOutput) ElementType() reflect.Type

func (RuleGroupPtrOutput) ToRuleGroupPtrOutput added in v3.25.0

func (o RuleGroupPtrOutput) ToRuleGroupPtrOutput() RuleGroupPtrOutput

func (RuleGroupPtrOutput) ToRuleGroupPtrOutputWithContext added in v3.25.0

func (o RuleGroupPtrOutput) ToRuleGroupPtrOutputWithContext(ctx context.Context) RuleGroupPtrOutput

type RuleGroupState

type RuleGroupState struct {
	// A list of activated rules, see below
	ActivatedRules RuleGroupActivatedRuleArrayInput
	// The ARN of the WAF rule group.
	Arn pulumi.StringPtrInput
	// A friendly name for the metrics from the rule group
	MetricName pulumi.StringPtrInput
	// A friendly name of the rule group
	Name pulumi.StringPtrInput
	// Key-value map of resource tags
	Tags pulumi.StringMapInput
}

func (RuleGroupState) ElementType

func (RuleGroupState) ElementType() reflect.Type

type RuleInput added in v3.13.0

type RuleInput interface {
	pulumi.Input

	ToRuleOutput() RuleOutput
	ToRuleOutputWithContext(ctx context.Context) RuleOutput
}

type RuleMap added in v3.25.0

type RuleMap map[string]RuleInput

func (RuleMap) ElementType added in v3.25.0

func (RuleMap) ElementType() reflect.Type

func (RuleMap) ToRuleMapOutput added in v3.25.0

func (i RuleMap) ToRuleMapOutput() RuleMapOutput

func (RuleMap) ToRuleMapOutputWithContext added in v3.25.0

func (i RuleMap) ToRuleMapOutputWithContext(ctx context.Context) RuleMapOutput

type RuleMapInput added in v3.25.0

type RuleMapInput interface {
	pulumi.Input

	ToRuleMapOutput() RuleMapOutput
	ToRuleMapOutputWithContext(context.Context) RuleMapOutput
}

RuleMapInput is an input type that accepts RuleMap and RuleMapOutput values. You can construct a concrete instance of `RuleMapInput` via:

RuleMap{ "key": RuleArgs{...} }

type RuleMapOutput added in v3.25.0

type RuleMapOutput struct{ *pulumi.OutputState }

func (RuleMapOutput) ElementType added in v3.25.0

func (RuleMapOutput) ElementType() reflect.Type

func (RuleMapOutput) MapIndex added in v3.25.0

func (RuleMapOutput) ToRuleMapOutput added in v3.25.0

func (o RuleMapOutput) ToRuleMapOutput() RuleMapOutput

func (RuleMapOutput) ToRuleMapOutputWithContext added in v3.25.0

func (o RuleMapOutput) ToRuleMapOutputWithContext(ctx context.Context) RuleMapOutput

type RuleOutput added in v3.13.0

type RuleOutput struct {
	*pulumi.OutputState
}

func (RuleOutput) ElementType added in v3.13.0

func (RuleOutput) ElementType() reflect.Type

func (RuleOutput) ToRuleOutput added in v3.13.0

func (o RuleOutput) ToRuleOutput() RuleOutput

func (RuleOutput) ToRuleOutputWithContext added in v3.13.0

func (o RuleOutput) ToRuleOutputWithContext(ctx context.Context) RuleOutput

func (RuleOutput) ToRulePtrOutput added in v3.25.0

func (o RuleOutput) ToRulePtrOutput() RulePtrOutput

func (RuleOutput) ToRulePtrOutputWithContext added in v3.25.0

func (o RuleOutput) ToRulePtrOutputWithContext(ctx context.Context) RulePtrOutput

type RulePredicate

type RulePredicate struct {
	// A unique identifier for a predicate in the rule, such as Byte Match Set ID or IPSet ID.
	DataId string `pulumi:"dataId"`
	// Set this to `false` if you want to allow, block, or count requests
	// based on the settings in the specified `wafByteMatchSet`, `wafIpset`, `waf.SizeConstraintSet`, `waf.SqlInjectionMatchSet` or `waf.XssMatchSet`.
	// 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.
	// If set to `true`, AWS WAF will allow, block, or count requests based on all IP addresses except `192.0.2.44`.
	Negated bool `pulumi:"negated"`
	// The type of predicate in a rule. Valid values: `ByteMatch`, `GeoMatch`, `IPMatch`, `RegexMatch`, `SizeConstraint`, `SqlInjectionMatch`, or `XssMatch`.
	Type string `pulumi:"type"`
}

type RulePredicateArgs

type RulePredicateArgs struct {
	// A unique identifier for a predicate in the rule, such as Byte Match Set ID or IPSet ID.
	DataId pulumi.StringInput `pulumi:"dataId"`
	// Set this to `false` if you want to allow, block, or count requests
	// based on the settings in the specified `wafByteMatchSet`, `wafIpset`, `waf.SizeConstraintSet`, `waf.SqlInjectionMatchSet` or `waf.XssMatchSet`.
	// 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.
	// If set to `true`, AWS WAF will allow, block, or count requests based on all IP addresses except `192.0.2.44`.
	Negated pulumi.BoolInput `pulumi:"negated"`
	// The type of predicate in a rule. Valid values: `ByteMatch`, `GeoMatch`, `IPMatch`, `RegexMatch`, `SizeConstraint`, `SqlInjectionMatch`, or `XssMatch`.
	Type pulumi.StringInput `pulumi:"type"`
}

func (RulePredicateArgs) ElementType

func (RulePredicateArgs) ElementType() reflect.Type

func (RulePredicateArgs) ToRulePredicateOutput

func (i RulePredicateArgs) ToRulePredicateOutput() RulePredicateOutput

func (RulePredicateArgs) ToRulePredicateOutputWithContext

func (i RulePredicateArgs) ToRulePredicateOutputWithContext(ctx context.Context) RulePredicateOutput

type RulePredicateArray

type RulePredicateArray []RulePredicateInput

func (RulePredicateArray) ElementType

func (RulePredicateArray) ElementType() reflect.Type

func (RulePredicateArray) ToRulePredicateArrayOutput

func (i RulePredicateArray) ToRulePredicateArrayOutput() RulePredicateArrayOutput

func (RulePredicateArray) ToRulePredicateArrayOutputWithContext

func (i RulePredicateArray) ToRulePredicateArrayOutputWithContext(ctx context.Context) RulePredicateArrayOutput

type RulePredicateArrayInput

type RulePredicateArrayInput interface {
	pulumi.Input

	ToRulePredicateArrayOutput() RulePredicateArrayOutput
	ToRulePredicateArrayOutputWithContext(context.Context) RulePredicateArrayOutput
}

RulePredicateArrayInput is an input type that accepts RulePredicateArray and RulePredicateArrayOutput values. You can construct a concrete instance of `RulePredicateArrayInput` via:

RulePredicateArray{ RulePredicateArgs{...} }

type RulePredicateArrayOutput

type RulePredicateArrayOutput struct{ *pulumi.OutputState }

func (RulePredicateArrayOutput) ElementType

func (RulePredicateArrayOutput) ElementType() reflect.Type

func (RulePredicateArrayOutput) Index

func (RulePredicateArrayOutput) ToRulePredicateArrayOutput

func (o RulePredicateArrayOutput) ToRulePredicateArrayOutput() RulePredicateArrayOutput

func (RulePredicateArrayOutput) ToRulePredicateArrayOutputWithContext

func (o RulePredicateArrayOutput) ToRulePredicateArrayOutputWithContext(ctx context.Context) RulePredicateArrayOutput

type RulePredicateInput

type RulePredicateInput interface {
	pulumi.Input

	ToRulePredicateOutput() RulePredicateOutput
	ToRulePredicateOutputWithContext(context.Context) RulePredicateOutput
}

RulePredicateInput is an input type that accepts RulePredicateArgs and RulePredicateOutput values. You can construct a concrete instance of `RulePredicateInput` via:

RulePredicateArgs{...}

type RulePredicateOutput

type RulePredicateOutput struct{ *pulumi.OutputState }

func (RulePredicateOutput) DataId

A unique identifier for a predicate in the rule, such as Byte Match Set ID or IPSet ID.

func (RulePredicateOutput) ElementType

func (RulePredicateOutput) ElementType() reflect.Type

func (RulePredicateOutput) Negated

Set this to `false` if you want to allow, block, or count requests based on the settings in the specified `wafByteMatchSet`, `wafIpset`, `waf.SizeConstraintSet`, `waf.SqlInjectionMatchSet` or `waf.XssMatchSet`. 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. If set to `true`, AWS WAF will allow, block, or count requests based on all IP addresses except `192.0.2.44`.

func (RulePredicateOutput) ToRulePredicateOutput

func (o RulePredicateOutput) ToRulePredicateOutput() RulePredicateOutput

func (RulePredicateOutput) ToRulePredicateOutputWithContext

func (o RulePredicateOutput) ToRulePredicateOutputWithContext(ctx context.Context) RulePredicateOutput

func (RulePredicateOutput) Type

The type of predicate in a rule. Valid values: `ByteMatch`, `GeoMatch`, `IPMatch`, `RegexMatch`, `SizeConstraint`, `SqlInjectionMatch`, or `XssMatch`.

type RulePtrInput added in v3.25.0

type RulePtrInput interface {
	pulumi.Input

	ToRulePtrOutput() RulePtrOutput
	ToRulePtrOutputWithContext(ctx context.Context) RulePtrOutput
}

type RulePtrOutput added in v3.25.0

type RulePtrOutput struct {
	*pulumi.OutputState
}

func (RulePtrOutput) ElementType added in v3.25.0

func (RulePtrOutput) ElementType() reflect.Type

func (RulePtrOutput) ToRulePtrOutput added in v3.25.0

func (o RulePtrOutput) ToRulePtrOutput() RulePtrOutput

func (RulePtrOutput) ToRulePtrOutputWithContext added in v3.25.0

func (o RulePtrOutput) ToRulePtrOutputWithContext(ctx context.Context) RulePtrOutput

type RuleState

type RuleState struct {
	// The ARN of the WAF rule.
	Arn pulumi.StringPtrInput
	// The name or description for the Amazon CloudWatch metric of this rule. The name can contain only alphanumeric characters (A-Z, a-z, 0-9); the name can't contain whitespace.
	MetricName pulumi.StringPtrInput
	// The name or description of the rule.
	Name pulumi.StringPtrInput
	// The objects to include in a rule (documented below).
	Predicates RulePredicateArrayInput
	// Key-value map of resource tags
	Tags pulumi.StringMapInput
}

func (RuleState) ElementType

func (RuleState) ElementType() reflect.Type

type SizeConstraintSet

type SizeConstraintSet struct {
	pulumi.CustomResourceState

	// Amazon Resource Name (ARN)
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The name or description of the Size Constraint Set.
	Name pulumi.StringOutput `pulumi:"name"`
	// Specifies the parts of web requests that you want to inspect the size of.
	SizeConstraints SizeConstraintSetSizeConstraintArrayOutput `pulumi:"sizeConstraints"`
}

Provides a WAF Size Constraint Set Resource

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/waf"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := waf.NewSizeConstraintSet(ctx, "sizeConstraintSet", &waf.SizeConstraintSetArgs{
			SizeConstraints: waf.SizeConstraintSetSizeConstraintArray{
				&waf.SizeConstraintSetSizeConstraintArgs{
					ComparisonOperator: pulumi.String("EQ"),
					FieldToMatch: &waf.SizeConstraintSetSizeConstraintFieldToMatchArgs{
						Type: pulumi.String("BODY"),
					},
					Size:               pulumi.Int(4096),
					TextTransformation: pulumi.String("NONE"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

AWS WAF Size Constraint Set can be imported using their ID, e.g.

```sh

$ pulumi import aws:waf/sizeConstraintSet:SizeConstraintSet example a1b2c3d4-d5f6-7777-8888-9999aaaabbbbcccc

```

func GetSizeConstraintSet

func GetSizeConstraintSet(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SizeConstraintSetState, opts ...pulumi.ResourceOption) (*SizeConstraintSet, error)

GetSizeConstraintSet gets an existing SizeConstraintSet resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewSizeConstraintSet

func NewSizeConstraintSet(ctx *pulumi.Context,
	name string, args *SizeConstraintSetArgs, opts ...pulumi.ResourceOption) (*SizeConstraintSet, error)

NewSizeConstraintSet registers a new resource with the given unique name, arguments, and options.

func (*SizeConstraintSet) ElementType added in v3.13.0

func (*SizeConstraintSet) ElementType() reflect.Type

func (*SizeConstraintSet) ToSizeConstraintSetOutput added in v3.13.0

func (i *SizeConstraintSet) ToSizeConstraintSetOutput() SizeConstraintSetOutput

func (*SizeConstraintSet) ToSizeConstraintSetOutputWithContext added in v3.13.0

func (i *SizeConstraintSet) ToSizeConstraintSetOutputWithContext(ctx context.Context) SizeConstraintSetOutput

func (*SizeConstraintSet) ToSizeConstraintSetPtrOutput added in v3.25.0

func (i *SizeConstraintSet) ToSizeConstraintSetPtrOutput() SizeConstraintSetPtrOutput

func (*SizeConstraintSet) ToSizeConstraintSetPtrOutputWithContext added in v3.25.0

func (i *SizeConstraintSet) ToSizeConstraintSetPtrOutputWithContext(ctx context.Context) SizeConstraintSetPtrOutput

type SizeConstraintSetArgs

type SizeConstraintSetArgs struct {
	// The name or description of the Size Constraint Set.
	Name pulumi.StringPtrInput
	// Specifies the parts of web requests that you want to inspect the size of.
	SizeConstraints SizeConstraintSetSizeConstraintArrayInput
}

The set of arguments for constructing a SizeConstraintSet resource.

func (SizeConstraintSetArgs) ElementType

func (SizeConstraintSetArgs) ElementType() reflect.Type

type SizeConstraintSetArray added in v3.25.0

type SizeConstraintSetArray []SizeConstraintSetInput

func (SizeConstraintSetArray) ElementType added in v3.25.0

func (SizeConstraintSetArray) ElementType() reflect.Type

func (SizeConstraintSetArray) ToSizeConstraintSetArrayOutput added in v3.25.0

func (i SizeConstraintSetArray) ToSizeConstraintSetArrayOutput() SizeConstraintSetArrayOutput

func (SizeConstraintSetArray) ToSizeConstraintSetArrayOutputWithContext added in v3.25.0

func (i SizeConstraintSetArray) ToSizeConstraintSetArrayOutputWithContext(ctx context.Context) SizeConstraintSetArrayOutput

type SizeConstraintSetArrayInput added in v3.25.0

type SizeConstraintSetArrayInput interface {
	pulumi.Input

	ToSizeConstraintSetArrayOutput() SizeConstraintSetArrayOutput
	ToSizeConstraintSetArrayOutputWithContext(context.Context) SizeConstraintSetArrayOutput
}

SizeConstraintSetArrayInput is an input type that accepts SizeConstraintSetArray and SizeConstraintSetArrayOutput values. You can construct a concrete instance of `SizeConstraintSetArrayInput` via:

SizeConstraintSetArray{ SizeConstraintSetArgs{...} }

type SizeConstraintSetArrayOutput added in v3.25.0

type SizeConstraintSetArrayOutput struct{ *pulumi.OutputState }

func (SizeConstraintSetArrayOutput) ElementType added in v3.25.0

func (SizeConstraintSetArrayOutput) Index added in v3.25.0

func (SizeConstraintSetArrayOutput) ToSizeConstraintSetArrayOutput added in v3.25.0

func (o SizeConstraintSetArrayOutput) ToSizeConstraintSetArrayOutput() SizeConstraintSetArrayOutput

func (SizeConstraintSetArrayOutput) ToSizeConstraintSetArrayOutputWithContext added in v3.25.0

func (o SizeConstraintSetArrayOutput) ToSizeConstraintSetArrayOutputWithContext(ctx context.Context) SizeConstraintSetArrayOutput

type SizeConstraintSetInput added in v3.13.0

type SizeConstraintSetInput interface {
	pulumi.Input

	ToSizeConstraintSetOutput() SizeConstraintSetOutput
	ToSizeConstraintSetOutputWithContext(ctx context.Context) SizeConstraintSetOutput
}

type SizeConstraintSetMap added in v3.25.0

type SizeConstraintSetMap map[string]SizeConstraintSetInput

func (SizeConstraintSetMap) ElementType added in v3.25.0

func (SizeConstraintSetMap) ElementType() reflect.Type

func (SizeConstraintSetMap) ToSizeConstraintSetMapOutput added in v3.25.0

func (i SizeConstraintSetMap) ToSizeConstraintSetMapOutput() SizeConstraintSetMapOutput

func (SizeConstraintSetMap) ToSizeConstraintSetMapOutputWithContext added in v3.25.0

func (i SizeConstraintSetMap) ToSizeConstraintSetMapOutputWithContext(ctx context.Context) SizeConstraintSetMapOutput

type SizeConstraintSetMapInput added in v3.25.0

type SizeConstraintSetMapInput interface {
	pulumi.Input

	ToSizeConstraintSetMapOutput() SizeConstraintSetMapOutput
	ToSizeConstraintSetMapOutputWithContext(context.Context) SizeConstraintSetMapOutput
}

SizeConstraintSetMapInput is an input type that accepts SizeConstraintSetMap and SizeConstraintSetMapOutput values. You can construct a concrete instance of `SizeConstraintSetMapInput` via:

SizeConstraintSetMap{ "key": SizeConstraintSetArgs{...} }

type SizeConstraintSetMapOutput added in v3.25.0

type SizeConstraintSetMapOutput struct{ *pulumi.OutputState }

func (SizeConstraintSetMapOutput) ElementType added in v3.25.0

func (SizeConstraintSetMapOutput) ElementType() reflect.Type

func (SizeConstraintSetMapOutput) MapIndex added in v3.25.0

func (SizeConstraintSetMapOutput) ToSizeConstraintSetMapOutput added in v3.25.0

func (o SizeConstraintSetMapOutput) ToSizeConstraintSetMapOutput() SizeConstraintSetMapOutput

func (SizeConstraintSetMapOutput) ToSizeConstraintSetMapOutputWithContext added in v3.25.0

func (o SizeConstraintSetMapOutput) ToSizeConstraintSetMapOutputWithContext(ctx context.Context) SizeConstraintSetMapOutput

type SizeConstraintSetOutput added in v3.13.0

type SizeConstraintSetOutput struct {
	*pulumi.OutputState
}

func (SizeConstraintSetOutput) ElementType added in v3.13.0

func (SizeConstraintSetOutput) ElementType() reflect.Type

func (SizeConstraintSetOutput) ToSizeConstraintSetOutput added in v3.13.0

func (o SizeConstraintSetOutput) ToSizeConstraintSetOutput() SizeConstraintSetOutput

func (SizeConstraintSetOutput) ToSizeConstraintSetOutputWithContext added in v3.13.0

func (o SizeConstraintSetOutput) ToSizeConstraintSetOutputWithContext(ctx context.Context) SizeConstraintSetOutput

func (SizeConstraintSetOutput) ToSizeConstraintSetPtrOutput added in v3.25.0

func (o SizeConstraintSetOutput) ToSizeConstraintSetPtrOutput() SizeConstraintSetPtrOutput

func (SizeConstraintSetOutput) ToSizeConstraintSetPtrOutputWithContext added in v3.25.0

func (o SizeConstraintSetOutput) ToSizeConstraintSetPtrOutputWithContext(ctx context.Context) SizeConstraintSetPtrOutput

type SizeConstraintSetPtrInput added in v3.25.0

type SizeConstraintSetPtrInput interface {
	pulumi.Input

	ToSizeConstraintSetPtrOutput() SizeConstraintSetPtrOutput
	ToSizeConstraintSetPtrOutputWithContext(ctx context.Context) SizeConstraintSetPtrOutput
}

type SizeConstraintSetPtrOutput added in v3.25.0

type SizeConstraintSetPtrOutput struct {
	*pulumi.OutputState
}

func (SizeConstraintSetPtrOutput) ElementType added in v3.25.0

func (SizeConstraintSetPtrOutput) ElementType() reflect.Type

func (SizeConstraintSetPtrOutput) ToSizeConstraintSetPtrOutput added in v3.25.0

func (o SizeConstraintSetPtrOutput) ToSizeConstraintSetPtrOutput() SizeConstraintSetPtrOutput

func (SizeConstraintSetPtrOutput) ToSizeConstraintSetPtrOutputWithContext added in v3.25.0

func (o SizeConstraintSetPtrOutput) ToSizeConstraintSetPtrOutputWithContext(ctx context.Context) SizeConstraintSetPtrOutput

type SizeConstraintSetSizeConstraint

type SizeConstraintSetSizeConstraint struct {
	// The type of comparison you want to perform.
	// e.g. `EQ`, `NE`, `LT`, `GT`.
	// See [docs](https://docs.aws.amazon.com/waf/latest/APIReference/API_wafRegional_SizeConstraint.html) for all supported values.
	ComparisonOperator string `pulumi:"comparisonOperator"`
	// Specifies where in a web request to look for the size constraint.
	FieldToMatch SizeConstraintSetSizeConstraintFieldToMatch `pulumi:"fieldToMatch"`
	// The size in bytes that you want to compare against the size of the specified `fieldToMatch`.
	// Valid values are between 0 - 21474836480 bytes (0 - 20 GB).
	Size int `pulumi:"size"`
	// Text transformations used to eliminate 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 a request for a match.
	// e.g. `CMD_LINE`, `HTML_ENTITY_DECODE` or `NONE`.
	// See [docs](http://docs.aws.amazon.com/waf/latest/APIReference/API_SizeConstraint.html#WAF-Type-SizeConstraint-TextTransformation)
	// for all supported values.
	// **Note:** if you choose `BODY` as `type`, you must choose `NONE` because CloudFront forwards only the first 8192 bytes for inspection.
	TextTransformation string `pulumi:"textTransformation"`
}

type SizeConstraintSetSizeConstraintArgs

type SizeConstraintSetSizeConstraintArgs struct {
	// The type of comparison you want to perform.
	// e.g. `EQ`, `NE`, `LT`, `GT`.
	// See [docs](https://docs.aws.amazon.com/waf/latest/APIReference/API_wafRegional_SizeConstraint.html) for all supported values.
	ComparisonOperator pulumi.StringInput `pulumi:"comparisonOperator"`
	// Specifies where in a web request to look for the size constraint.
	FieldToMatch SizeConstraintSetSizeConstraintFieldToMatchInput `pulumi:"fieldToMatch"`
	// The size in bytes that you want to compare against the size of the specified `fieldToMatch`.
	// Valid values are between 0 - 21474836480 bytes (0 - 20 GB).
	Size pulumi.IntInput `pulumi:"size"`
	// Text transformations used to eliminate 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 a request for a match.
	// e.g. `CMD_LINE`, `HTML_ENTITY_DECODE` or `NONE`.
	// See [docs](http://docs.aws.amazon.com/waf/latest/APIReference/API_SizeConstraint.html#WAF-Type-SizeConstraint-TextTransformation)
	// for all supported values.
	// **Note:** if you choose `BODY` as `type`, you must choose `NONE` because CloudFront forwards only the first 8192 bytes for inspection.
	TextTransformation pulumi.StringInput `pulumi:"textTransformation"`
}

func (SizeConstraintSetSizeConstraintArgs) ElementType

func (SizeConstraintSetSizeConstraintArgs) ToSizeConstraintSetSizeConstraintOutput

func (i SizeConstraintSetSizeConstraintArgs) ToSizeConstraintSetSizeConstraintOutput() SizeConstraintSetSizeConstraintOutput

func (SizeConstraintSetSizeConstraintArgs) ToSizeConstraintSetSizeConstraintOutputWithContext

func (i SizeConstraintSetSizeConstraintArgs) ToSizeConstraintSetSizeConstraintOutputWithContext(ctx context.Context) SizeConstraintSetSizeConstraintOutput

type SizeConstraintSetSizeConstraintArray

type SizeConstraintSetSizeConstraintArray []SizeConstraintSetSizeConstraintInput

func (SizeConstraintSetSizeConstraintArray) ElementType

func (SizeConstraintSetSizeConstraintArray) ToSizeConstraintSetSizeConstraintArrayOutput

func (i SizeConstraintSetSizeConstraintArray) ToSizeConstraintSetSizeConstraintArrayOutput() SizeConstraintSetSizeConstraintArrayOutput

func (SizeConstraintSetSizeConstraintArray) ToSizeConstraintSetSizeConstraintArrayOutputWithContext

func (i SizeConstraintSetSizeConstraintArray) ToSizeConstraintSetSizeConstraintArrayOutputWithContext(ctx context.Context) SizeConstraintSetSizeConstraintArrayOutput

type SizeConstraintSetSizeConstraintArrayInput

type SizeConstraintSetSizeConstraintArrayInput interface {
	pulumi.Input

	ToSizeConstraintSetSizeConstraintArrayOutput() SizeConstraintSetSizeConstraintArrayOutput
	ToSizeConstraintSetSizeConstraintArrayOutputWithContext(context.Context) SizeConstraintSetSizeConstraintArrayOutput
}

SizeConstraintSetSizeConstraintArrayInput is an input type that accepts SizeConstraintSetSizeConstraintArray and SizeConstraintSetSizeConstraintArrayOutput values. You can construct a concrete instance of `SizeConstraintSetSizeConstraintArrayInput` via:

SizeConstraintSetSizeConstraintArray{ SizeConstraintSetSizeConstraintArgs{...} }

type SizeConstraintSetSizeConstraintArrayOutput

type SizeConstraintSetSizeConstraintArrayOutput struct{ *pulumi.OutputState }

func (SizeConstraintSetSizeConstraintArrayOutput) ElementType

func (SizeConstraintSetSizeConstraintArrayOutput) Index

func (SizeConstraintSetSizeConstraintArrayOutput) ToSizeConstraintSetSizeConstraintArrayOutput

func (o SizeConstraintSetSizeConstraintArrayOutput) ToSizeConstraintSetSizeConstraintArrayOutput() SizeConstraintSetSizeConstraintArrayOutput

func (SizeConstraintSetSizeConstraintArrayOutput) ToSizeConstraintSetSizeConstraintArrayOutputWithContext

func (o SizeConstraintSetSizeConstraintArrayOutput) ToSizeConstraintSetSizeConstraintArrayOutputWithContext(ctx context.Context) SizeConstraintSetSizeConstraintArrayOutput

type SizeConstraintSetSizeConstraintFieldToMatch

type SizeConstraintSetSizeConstraintFieldToMatch struct {
	// When `type` is `HEADER`, enter the name of the header that you want to search, e.g. `User-Agent` or `Referer`.
	// If `type` is any other value, omit this field.
	Data *string `pulumi:"data"`
	// The part of the web request that you want AWS WAF to search for a specified string.
	// e.g. `HEADER`, `METHOD` or `BODY`.
	// See [docs](http://docs.aws.amazon.com/waf/latest/APIReference/API_FieldToMatch.html)
	// for all supported values.
	Type string `pulumi:"type"`
}

type SizeConstraintSetSizeConstraintFieldToMatchArgs

type SizeConstraintSetSizeConstraintFieldToMatchArgs struct {
	// When `type` is `HEADER`, enter the name of the header that you want to search, e.g. `User-Agent` or `Referer`.
	// If `type` is any other value, omit this field.
	Data pulumi.StringPtrInput `pulumi:"data"`
	// The part of the web request that you want AWS WAF to search for a specified string.
	// e.g. `HEADER`, `METHOD` or `BODY`.
	// See [docs](http://docs.aws.amazon.com/waf/latest/APIReference/API_FieldToMatch.html)
	// for all supported values.
	Type pulumi.StringInput `pulumi:"type"`
}

func (SizeConstraintSetSizeConstraintFieldToMatchArgs) ElementType

func (SizeConstraintSetSizeConstraintFieldToMatchArgs) ToSizeConstraintSetSizeConstraintFieldToMatchOutput

func (i SizeConstraintSetSizeConstraintFieldToMatchArgs) ToSizeConstraintSetSizeConstraintFieldToMatchOutput() SizeConstraintSetSizeConstraintFieldToMatchOutput

func (SizeConstraintSetSizeConstraintFieldToMatchArgs) ToSizeConstraintSetSizeConstraintFieldToMatchOutputWithContext

func (i SizeConstraintSetSizeConstraintFieldToMatchArgs) ToSizeConstraintSetSizeConstraintFieldToMatchOutputWithContext(ctx context.Context) SizeConstraintSetSizeConstraintFieldToMatchOutput

type SizeConstraintSetSizeConstraintFieldToMatchInput

type SizeConstraintSetSizeConstraintFieldToMatchInput interface {
	pulumi.Input

	ToSizeConstraintSetSizeConstraintFieldToMatchOutput() SizeConstraintSetSizeConstraintFieldToMatchOutput
	ToSizeConstraintSetSizeConstraintFieldToMatchOutputWithContext(context.Context) SizeConstraintSetSizeConstraintFieldToMatchOutput
}

SizeConstraintSetSizeConstraintFieldToMatchInput is an input type that accepts SizeConstraintSetSizeConstraintFieldToMatchArgs and SizeConstraintSetSizeConstraintFieldToMatchOutput values. You can construct a concrete instance of `SizeConstraintSetSizeConstraintFieldToMatchInput` via:

SizeConstraintSetSizeConstraintFieldToMatchArgs{...}

type SizeConstraintSetSizeConstraintFieldToMatchOutput

type SizeConstraintSetSizeConstraintFieldToMatchOutput struct{ *pulumi.OutputState }

func (SizeConstraintSetSizeConstraintFieldToMatchOutput) Data

When `type` is `HEADER`, enter the name of the header that you want to search, e.g. `User-Agent` or `Referer`. If `type` is any other value, omit this field.

func (SizeConstraintSetSizeConstraintFieldToMatchOutput) ElementType

func (SizeConstraintSetSizeConstraintFieldToMatchOutput) ToSizeConstraintSetSizeConstraintFieldToMatchOutput

func (o SizeConstraintSetSizeConstraintFieldToMatchOutput) ToSizeConstraintSetSizeConstraintFieldToMatchOutput() SizeConstraintSetSizeConstraintFieldToMatchOutput

func (SizeConstraintSetSizeConstraintFieldToMatchOutput) ToSizeConstraintSetSizeConstraintFieldToMatchOutputWithContext

func (o SizeConstraintSetSizeConstraintFieldToMatchOutput) ToSizeConstraintSetSizeConstraintFieldToMatchOutputWithContext(ctx context.Context) SizeConstraintSetSizeConstraintFieldToMatchOutput

func (SizeConstraintSetSizeConstraintFieldToMatchOutput) Type

The part of the web request that you want AWS WAF to search for a specified string. e.g. `HEADER`, `METHOD` or `BODY`. See [docs](http://docs.aws.amazon.com/waf/latest/APIReference/API_FieldToMatch.html) for all supported values.

type SizeConstraintSetSizeConstraintInput

type SizeConstraintSetSizeConstraintInput interface {
	pulumi.Input

	ToSizeConstraintSetSizeConstraintOutput() SizeConstraintSetSizeConstraintOutput
	ToSizeConstraintSetSizeConstraintOutputWithContext(context.Context) SizeConstraintSetSizeConstraintOutput
}

SizeConstraintSetSizeConstraintInput is an input type that accepts SizeConstraintSetSizeConstraintArgs and SizeConstraintSetSizeConstraintOutput values. You can construct a concrete instance of `SizeConstraintSetSizeConstraintInput` via:

SizeConstraintSetSizeConstraintArgs{...}

type SizeConstraintSetSizeConstraintOutput

type SizeConstraintSetSizeConstraintOutput struct{ *pulumi.OutputState }

func (SizeConstraintSetSizeConstraintOutput) ComparisonOperator

The type of comparison you want to perform. e.g. `EQ`, `NE`, `LT`, `GT`. See [docs](https://docs.aws.amazon.com/waf/latest/APIReference/API_wafRegional_SizeConstraint.html) for all supported values.

func (SizeConstraintSetSizeConstraintOutput) ElementType

func (SizeConstraintSetSizeConstraintOutput) FieldToMatch

Specifies where in a web request to look for the size constraint.

func (SizeConstraintSetSizeConstraintOutput) Size

The size in bytes that you want to compare against the size of the specified `fieldToMatch`. Valid values are between 0 - 21474836480 bytes (0 - 20 GB).

func (SizeConstraintSetSizeConstraintOutput) TextTransformation

Text transformations used to eliminate 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 a request for a match. e.g. `CMD_LINE`, `HTML_ENTITY_DECODE` or `NONE`. See [docs](http://docs.aws.amazon.com/waf/latest/APIReference/API_SizeConstraint.html#WAF-Type-SizeConstraint-TextTransformation) for all supported values. **Note:** if you choose `BODY` as `type`, you must choose `NONE` because CloudFront forwards only the first 8192 bytes for inspection.

func (SizeConstraintSetSizeConstraintOutput) ToSizeConstraintSetSizeConstraintOutput

func (o SizeConstraintSetSizeConstraintOutput) ToSizeConstraintSetSizeConstraintOutput() SizeConstraintSetSizeConstraintOutput

func (SizeConstraintSetSizeConstraintOutput) ToSizeConstraintSetSizeConstraintOutputWithContext

func (o SizeConstraintSetSizeConstraintOutput) ToSizeConstraintSetSizeConstraintOutputWithContext(ctx context.Context) SizeConstraintSetSizeConstraintOutput

type SizeConstraintSetState

type SizeConstraintSetState struct {
	// Amazon Resource Name (ARN)
	Arn pulumi.StringPtrInput
	// The name or description of the Size Constraint Set.
	Name pulumi.StringPtrInput
	// Specifies the parts of web requests that you want to inspect the size of.
	SizeConstraints SizeConstraintSetSizeConstraintArrayInput
}

func (SizeConstraintSetState) ElementType

func (SizeConstraintSetState) ElementType() reflect.Type

type SqlInjectionMatchSet

type SqlInjectionMatchSet struct {
	pulumi.CustomResourceState

	// The name or description of the SQL Injection Match Set.
	Name pulumi.StringOutput `pulumi:"name"`
	// The parts of web requests that you want AWS WAF to inspect for malicious SQL code and, if you want AWS WAF to inspect a header, the name of the header.
	SqlInjectionMatchTuples SqlInjectionMatchSetSqlInjectionMatchTupleArrayOutput `pulumi:"sqlInjectionMatchTuples"`
}

Provides a WAF SQL Injection Match Set Resource

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/waf"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := waf.NewSqlInjectionMatchSet(ctx, "sqlInjectionMatchSet", &waf.SqlInjectionMatchSetArgs{
			SqlInjectionMatchTuples: waf.SqlInjectionMatchSetSqlInjectionMatchTupleArray{
				&waf.SqlInjectionMatchSetSqlInjectionMatchTupleArgs{
					FieldToMatch: &waf.SqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatchArgs{
						Type: pulumi.String("QUERY_STRING"),
					},
					TextTransformation: pulumi.String("URL_DECODE"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

AWS WAF SQL Injection Match Set can be imported using their ID, e.g.

```sh

$ pulumi import aws:waf/sqlInjectionMatchSet:SqlInjectionMatchSet example a1b2c3d4-d5f6-7777-8888-9999aaaabbbbcccc

```

func GetSqlInjectionMatchSet

func GetSqlInjectionMatchSet(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SqlInjectionMatchSetState, opts ...pulumi.ResourceOption) (*SqlInjectionMatchSet, error)

GetSqlInjectionMatchSet gets an existing SqlInjectionMatchSet resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewSqlInjectionMatchSet

func NewSqlInjectionMatchSet(ctx *pulumi.Context,
	name string, args *SqlInjectionMatchSetArgs, opts ...pulumi.ResourceOption) (*SqlInjectionMatchSet, error)

NewSqlInjectionMatchSet registers a new resource with the given unique name, arguments, and options.

func (*SqlInjectionMatchSet) ElementType added in v3.13.0

func (*SqlInjectionMatchSet) ElementType() reflect.Type

func (*SqlInjectionMatchSet) ToSqlInjectionMatchSetOutput added in v3.13.0

func (i *SqlInjectionMatchSet) ToSqlInjectionMatchSetOutput() SqlInjectionMatchSetOutput

func (*SqlInjectionMatchSet) ToSqlInjectionMatchSetOutputWithContext added in v3.13.0

func (i *SqlInjectionMatchSet) ToSqlInjectionMatchSetOutputWithContext(ctx context.Context) SqlInjectionMatchSetOutput

func (*SqlInjectionMatchSet) ToSqlInjectionMatchSetPtrOutput added in v3.25.0

func (i *SqlInjectionMatchSet) ToSqlInjectionMatchSetPtrOutput() SqlInjectionMatchSetPtrOutput

func (*SqlInjectionMatchSet) ToSqlInjectionMatchSetPtrOutputWithContext added in v3.25.0

func (i *SqlInjectionMatchSet) ToSqlInjectionMatchSetPtrOutputWithContext(ctx context.Context) SqlInjectionMatchSetPtrOutput

type SqlInjectionMatchSetArgs

type SqlInjectionMatchSetArgs struct {
	// The name or description of the SQL Injection Match Set.
	Name pulumi.StringPtrInput
	// The parts of web requests that you want AWS WAF to inspect for malicious SQL code and, if you want AWS WAF to inspect a header, the name of the header.
	SqlInjectionMatchTuples SqlInjectionMatchSetSqlInjectionMatchTupleArrayInput
}

The set of arguments for constructing a SqlInjectionMatchSet resource.

func (SqlInjectionMatchSetArgs) ElementType

func (SqlInjectionMatchSetArgs) ElementType() reflect.Type

type SqlInjectionMatchSetArray added in v3.25.0

type SqlInjectionMatchSetArray []SqlInjectionMatchSetInput

func (SqlInjectionMatchSetArray) ElementType added in v3.25.0

func (SqlInjectionMatchSetArray) ElementType() reflect.Type

func (SqlInjectionMatchSetArray) ToSqlInjectionMatchSetArrayOutput added in v3.25.0

func (i SqlInjectionMatchSetArray) ToSqlInjectionMatchSetArrayOutput() SqlInjectionMatchSetArrayOutput

func (SqlInjectionMatchSetArray) ToSqlInjectionMatchSetArrayOutputWithContext added in v3.25.0

func (i SqlInjectionMatchSetArray) ToSqlInjectionMatchSetArrayOutputWithContext(ctx context.Context) SqlInjectionMatchSetArrayOutput

type SqlInjectionMatchSetArrayInput added in v3.25.0

type SqlInjectionMatchSetArrayInput interface {
	pulumi.Input

	ToSqlInjectionMatchSetArrayOutput() SqlInjectionMatchSetArrayOutput
	ToSqlInjectionMatchSetArrayOutputWithContext(context.Context) SqlInjectionMatchSetArrayOutput
}

SqlInjectionMatchSetArrayInput is an input type that accepts SqlInjectionMatchSetArray and SqlInjectionMatchSetArrayOutput values. You can construct a concrete instance of `SqlInjectionMatchSetArrayInput` via:

SqlInjectionMatchSetArray{ SqlInjectionMatchSetArgs{...} }

type SqlInjectionMatchSetArrayOutput added in v3.25.0

type SqlInjectionMatchSetArrayOutput struct{ *pulumi.OutputState }

func (SqlInjectionMatchSetArrayOutput) ElementType added in v3.25.0

func (SqlInjectionMatchSetArrayOutput) Index added in v3.25.0

func (SqlInjectionMatchSetArrayOutput) ToSqlInjectionMatchSetArrayOutput added in v3.25.0

func (o SqlInjectionMatchSetArrayOutput) ToSqlInjectionMatchSetArrayOutput() SqlInjectionMatchSetArrayOutput

func (SqlInjectionMatchSetArrayOutput) ToSqlInjectionMatchSetArrayOutputWithContext added in v3.25.0

func (o SqlInjectionMatchSetArrayOutput) ToSqlInjectionMatchSetArrayOutputWithContext(ctx context.Context) SqlInjectionMatchSetArrayOutput

type SqlInjectionMatchSetInput added in v3.13.0

type SqlInjectionMatchSetInput interface {
	pulumi.Input

	ToSqlInjectionMatchSetOutput() SqlInjectionMatchSetOutput
	ToSqlInjectionMatchSetOutputWithContext(ctx context.Context) SqlInjectionMatchSetOutput
}

type SqlInjectionMatchSetMap added in v3.25.0

type SqlInjectionMatchSetMap map[string]SqlInjectionMatchSetInput

func (SqlInjectionMatchSetMap) ElementType added in v3.25.0

func (SqlInjectionMatchSetMap) ElementType() reflect.Type

func (SqlInjectionMatchSetMap) ToSqlInjectionMatchSetMapOutput added in v3.25.0

func (i SqlInjectionMatchSetMap) ToSqlInjectionMatchSetMapOutput() SqlInjectionMatchSetMapOutput

func (SqlInjectionMatchSetMap) ToSqlInjectionMatchSetMapOutputWithContext added in v3.25.0

func (i SqlInjectionMatchSetMap) ToSqlInjectionMatchSetMapOutputWithContext(ctx context.Context) SqlInjectionMatchSetMapOutput

type SqlInjectionMatchSetMapInput added in v3.25.0

type SqlInjectionMatchSetMapInput interface {
	pulumi.Input

	ToSqlInjectionMatchSetMapOutput() SqlInjectionMatchSetMapOutput
	ToSqlInjectionMatchSetMapOutputWithContext(context.Context) SqlInjectionMatchSetMapOutput
}

SqlInjectionMatchSetMapInput is an input type that accepts SqlInjectionMatchSetMap and SqlInjectionMatchSetMapOutput values. You can construct a concrete instance of `SqlInjectionMatchSetMapInput` via:

SqlInjectionMatchSetMap{ "key": SqlInjectionMatchSetArgs{...} }

type SqlInjectionMatchSetMapOutput added in v3.25.0

type SqlInjectionMatchSetMapOutput struct{ *pulumi.OutputState }

func (SqlInjectionMatchSetMapOutput) ElementType added in v3.25.0

func (SqlInjectionMatchSetMapOutput) MapIndex added in v3.25.0

func (SqlInjectionMatchSetMapOutput) ToSqlInjectionMatchSetMapOutput added in v3.25.0

func (o SqlInjectionMatchSetMapOutput) ToSqlInjectionMatchSetMapOutput() SqlInjectionMatchSetMapOutput

func (SqlInjectionMatchSetMapOutput) ToSqlInjectionMatchSetMapOutputWithContext added in v3.25.0

func (o SqlInjectionMatchSetMapOutput) ToSqlInjectionMatchSetMapOutputWithContext(ctx context.Context) SqlInjectionMatchSetMapOutput

type SqlInjectionMatchSetOutput added in v3.13.0

type SqlInjectionMatchSetOutput struct {
	*pulumi.OutputState
}

func (SqlInjectionMatchSetOutput) ElementType added in v3.13.0

func (SqlInjectionMatchSetOutput) ElementType() reflect.Type

func (SqlInjectionMatchSetOutput) ToSqlInjectionMatchSetOutput added in v3.13.0

func (o SqlInjectionMatchSetOutput) ToSqlInjectionMatchSetOutput() SqlInjectionMatchSetOutput

func (SqlInjectionMatchSetOutput) ToSqlInjectionMatchSetOutputWithContext added in v3.13.0

func (o SqlInjectionMatchSetOutput) ToSqlInjectionMatchSetOutputWithContext(ctx context.Context) SqlInjectionMatchSetOutput

func (SqlInjectionMatchSetOutput) ToSqlInjectionMatchSetPtrOutput added in v3.25.0

func (o SqlInjectionMatchSetOutput) ToSqlInjectionMatchSetPtrOutput() SqlInjectionMatchSetPtrOutput

func (SqlInjectionMatchSetOutput) ToSqlInjectionMatchSetPtrOutputWithContext added in v3.25.0

func (o SqlInjectionMatchSetOutput) ToSqlInjectionMatchSetPtrOutputWithContext(ctx context.Context) SqlInjectionMatchSetPtrOutput

type SqlInjectionMatchSetPtrInput added in v3.25.0

type SqlInjectionMatchSetPtrInput interface {
	pulumi.Input

	ToSqlInjectionMatchSetPtrOutput() SqlInjectionMatchSetPtrOutput
	ToSqlInjectionMatchSetPtrOutputWithContext(ctx context.Context) SqlInjectionMatchSetPtrOutput
}

type SqlInjectionMatchSetPtrOutput added in v3.25.0

type SqlInjectionMatchSetPtrOutput struct {
	*pulumi.OutputState
}

func (SqlInjectionMatchSetPtrOutput) ElementType added in v3.25.0

func (SqlInjectionMatchSetPtrOutput) ToSqlInjectionMatchSetPtrOutput added in v3.25.0

func (o SqlInjectionMatchSetPtrOutput) ToSqlInjectionMatchSetPtrOutput() SqlInjectionMatchSetPtrOutput

func (SqlInjectionMatchSetPtrOutput) ToSqlInjectionMatchSetPtrOutputWithContext added in v3.25.0

func (o SqlInjectionMatchSetPtrOutput) ToSqlInjectionMatchSetPtrOutputWithContext(ctx context.Context) SqlInjectionMatchSetPtrOutput

type SqlInjectionMatchSetSqlInjectionMatchTuple

type SqlInjectionMatchSetSqlInjectionMatchTuple struct {
	// Specifies where in a web request to look for snippets of malicious SQL code.
	FieldToMatch SqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatch `pulumi:"fieldToMatch"`
	// Text transformations used to eliminate 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 a request for a match.
	// e.g. `CMD_LINE`, `HTML_ENTITY_DECODE` or `NONE`.
	// See [docs](http://docs.aws.amazon.com/waf/latest/APIReference/API_SqlInjectionMatchTuple.html#WAF-Type-SqlInjectionMatchTuple-TextTransformation)
	// for all supported values.
	TextTransformation string `pulumi:"textTransformation"`
}

type SqlInjectionMatchSetSqlInjectionMatchTupleArgs

type SqlInjectionMatchSetSqlInjectionMatchTupleArgs struct {
	// Specifies where in a web request to look for snippets of malicious SQL code.
	FieldToMatch SqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatchInput `pulumi:"fieldToMatch"`
	// Text transformations used to eliminate 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 a request for a match.
	// e.g. `CMD_LINE`, `HTML_ENTITY_DECODE` or `NONE`.
	// See [docs](http://docs.aws.amazon.com/waf/latest/APIReference/API_SqlInjectionMatchTuple.html#WAF-Type-SqlInjectionMatchTuple-TextTransformation)
	// for all supported values.
	TextTransformation pulumi.StringInput `pulumi:"textTransformation"`
}

func (SqlInjectionMatchSetSqlInjectionMatchTupleArgs) ElementType

func (SqlInjectionMatchSetSqlInjectionMatchTupleArgs) ToSqlInjectionMatchSetSqlInjectionMatchTupleOutput

func (i SqlInjectionMatchSetSqlInjectionMatchTupleArgs) ToSqlInjectionMatchSetSqlInjectionMatchTupleOutput() SqlInjectionMatchSetSqlInjectionMatchTupleOutput

func (SqlInjectionMatchSetSqlInjectionMatchTupleArgs) ToSqlInjectionMatchSetSqlInjectionMatchTupleOutputWithContext

func (i SqlInjectionMatchSetSqlInjectionMatchTupleArgs) ToSqlInjectionMatchSetSqlInjectionMatchTupleOutputWithContext(ctx context.Context) SqlInjectionMatchSetSqlInjectionMatchTupleOutput

type SqlInjectionMatchSetSqlInjectionMatchTupleArray

type SqlInjectionMatchSetSqlInjectionMatchTupleArray []SqlInjectionMatchSetSqlInjectionMatchTupleInput

func (SqlInjectionMatchSetSqlInjectionMatchTupleArray) ElementType

func (SqlInjectionMatchSetSqlInjectionMatchTupleArray) ToSqlInjectionMatchSetSqlInjectionMatchTupleArrayOutput

func (i SqlInjectionMatchSetSqlInjectionMatchTupleArray) ToSqlInjectionMatchSetSqlInjectionMatchTupleArrayOutput() SqlInjectionMatchSetSqlInjectionMatchTupleArrayOutput

func (SqlInjectionMatchSetSqlInjectionMatchTupleArray) ToSqlInjectionMatchSetSqlInjectionMatchTupleArrayOutputWithContext

func (i SqlInjectionMatchSetSqlInjectionMatchTupleArray) ToSqlInjectionMatchSetSqlInjectionMatchTupleArrayOutputWithContext(ctx context.Context) SqlInjectionMatchSetSqlInjectionMatchTupleArrayOutput

type SqlInjectionMatchSetSqlInjectionMatchTupleArrayInput

type SqlInjectionMatchSetSqlInjectionMatchTupleArrayInput interface {
	pulumi.Input

	ToSqlInjectionMatchSetSqlInjectionMatchTupleArrayOutput() SqlInjectionMatchSetSqlInjectionMatchTupleArrayOutput
	ToSqlInjectionMatchSetSqlInjectionMatchTupleArrayOutputWithContext(context.Context) SqlInjectionMatchSetSqlInjectionMatchTupleArrayOutput
}

SqlInjectionMatchSetSqlInjectionMatchTupleArrayInput is an input type that accepts SqlInjectionMatchSetSqlInjectionMatchTupleArray and SqlInjectionMatchSetSqlInjectionMatchTupleArrayOutput values. You can construct a concrete instance of `SqlInjectionMatchSetSqlInjectionMatchTupleArrayInput` via:

SqlInjectionMatchSetSqlInjectionMatchTupleArray{ SqlInjectionMatchSetSqlInjectionMatchTupleArgs{...} }

type SqlInjectionMatchSetSqlInjectionMatchTupleArrayOutput

type SqlInjectionMatchSetSqlInjectionMatchTupleArrayOutput struct{ *pulumi.OutputState }

func (SqlInjectionMatchSetSqlInjectionMatchTupleArrayOutput) ElementType

func (SqlInjectionMatchSetSqlInjectionMatchTupleArrayOutput) Index

func (SqlInjectionMatchSetSqlInjectionMatchTupleArrayOutput) ToSqlInjectionMatchSetSqlInjectionMatchTupleArrayOutput

func (SqlInjectionMatchSetSqlInjectionMatchTupleArrayOutput) ToSqlInjectionMatchSetSqlInjectionMatchTupleArrayOutputWithContext

func (o SqlInjectionMatchSetSqlInjectionMatchTupleArrayOutput) ToSqlInjectionMatchSetSqlInjectionMatchTupleArrayOutputWithContext(ctx context.Context) SqlInjectionMatchSetSqlInjectionMatchTupleArrayOutput

type SqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatch

type SqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatch struct {
	// When `type` is `HEADER`, enter the name of the header that you want to search, e.g. `User-Agent` or `Referer`.
	// If `type` is any other value, omit this field.
	Data *string `pulumi:"data"`
	// The part of the web request that you want AWS WAF to search for a specified string.
	// e.g. `HEADER`, `METHOD` or `BODY`.
	// See [docs](http://docs.aws.amazon.com/waf/latest/APIReference/API_FieldToMatch.html)
	// for all supported values.
	Type string `pulumi:"type"`
}

type SqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatchArgs

type SqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatchArgs struct {
	// When `type` is `HEADER`, enter the name of the header that you want to search, e.g. `User-Agent` or `Referer`.
	// If `type` is any other value, omit this field.
	Data pulumi.StringPtrInput `pulumi:"data"`
	// The part of the web request that you want AWS WAF to search for a specified string.
	// e.g. `HEADER`, `METHOD` or `BODY`.
	// See [docs](http://docs.aws.amazon.com/waf/latest/APIReference/API_FieldToMatch.html)
	// for all supported values.
	Type pulumi.StringInput `pulumi:"type"`
}

func (SqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatchArgs) ElementType

func (SqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatchArgs) ToSqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatchOutput

func (SqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatchArgs) ToSqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatchOutputWithContext

func (i SqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatchArgs) ToSqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatchOutputWithContext(ctx context.Context) SqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatchOutput

type SqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatchInput

type SqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatchInput interface {
	pulumi.Input

	ToSqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatchOutput() SqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatchOutput
	ToSqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatchOutputWithContext(context.Context) SqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatchOutput
}

SqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatchInput is an input type that accepts SqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatchArgs and SqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatchOutput values. You can construct a concrete instance of `SqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatchInput` via:

SqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatchArgs{...}

type SqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatchOutput

type SqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatchOutput struct{ *pulumi.OutputState }

func (SqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatchOutput) Data

When `type` is `HEADER`, enter the name of the header that you want to search, e.g. `User-Agent` or `Referer`. If `type` is any other value, omit this field.

func (SqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatchOutput) ElementType

func (SqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatchOutput) ToSqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatchOutput

func (SqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatchOutput) ToSqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatchOutputWithContext

func (o SqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatchOutput) ToSqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatchOutputWithContext(ctx context.Context) SqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatchOutput

func (SqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatchOutput) Type

The part of the web request that you want AWS WAF to search for a specified string. e.g. `HEADER`, `METHOD` or `BODY`. See [docs](http://docs.aws.amazon.com/waf/latest/APIReference/API_FieldToMatch.html) for all supported values.

type SqlInjectionMatchSetSqlInjectionMatchTupleInput

type SqlInjectionMatchSetSqlInjectionMatchTupleInput interface {
	pulumi.Input

	ToSqlInjectionMatchSetSqlInjectionMatchTupleOutput() SqlInjectionMatchSetSqlInjectionMatchTupleOutput
	ToSqlInjectionMatchSetSqlInjectionMatchTupleOutputWithContext(context.Context) SqlInjectionMatchSetSqlInjectionMatchTupleOutput
}

SqlInjectionMatchSetSqlInjectionMatchTupleInput is an input type that accepts SqlInjectionMatchSetSqlInjectionMatchTupleArgs and SqlInjectionMatchSetSqlInjectionMatchTupleOutput values. You can construct a concrete instance of `SqlInjectionMatchSetSqlInjectionMatchTupleInput` via:

SqlInjectionMatchSetSqlInjectionMatchTupleArgs{...}

type SqlInjectionMatchSetSqlInjectionMatchTupleOutput

type SqlInjectionMatchSetSqlInjectionMatchTupleOutput struct{ *pulumi.OutputState }

func (SqlInjectionMatchSetSqlInjectionMatchTupleOutput) ElementType

func (SqlInjectionMatchSetSqlInjectionMatchTupleOutput) FieldToMatch

Specifies where in a web request to look for snippets of malicious SQL code.

func (SqlInjectionMatchSetSqlInjectionMatchTupleOutput) TextTransformation

Text transformations used to eliminate 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 a request for a match. e.g. `CMD_LINE`, `HTML_ENTITY_DECODE` or `NONE`. See [docs](http://docs.aws.amazon.com/waf/latest/APIReference/API_SqlInjectionMatchTuple.html#WAF-Type-SqlInjectionMatchTuple-TextTransformation) for all supported values.

func (SqlInjectionMatchSetSqlInjectionMatchTupleOutput) ToSqlInjectionMatchSetSqlInjectionMatchTupleOutput

func (o SqlInjectionMatchSetSqlInjectionMatchTupleOutput) ToSqlInjectionMatchSetSqlInjectionMatchTupleOutput() SqlInjectionMatchSetSqlInjectionMatchTupleOutput

func (SqlInjectionMatchSetSqlInjectionMatchTupleOutput) ToSqlInjectionMatchSetSqlInjectionMatchTupleOutputWithContext

func (o SqlInjectionMatchSetSqlInjectionMatchTupleOutput) ToSqlInjectionMatchSetSqlInjectionMatchTupleOutputWithContext(ctx context.Context) SqlInjectionMatchSetSqlInjectionMatchTupleOutput

type SqlInjectionMatchSetState

type SqlInjectionMatchSetState struct {
	// The name or description of the SQL Injection Match Set.
	Name pulumi.StringPtrInput
	// The parts of web requests that you want AWS WAF to inspect for malicious SQL code and, if you want AWS WAF to inspect a header, the name of the header.
	SqlInjectionMatchTuples SqlInjectionMatchSetSqlInjectionMatchTupleArrayInput
}

func (SqlInjectionMatchSetState) ElementType

func (SqlInjectionMatchSetState) ElementType() reflect.Type

type WebAcl

type WebAcl struct {
	pulumi.CustomResourceState

	// The ARN of the WAF WebACL.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Configuration block with action that you want AWS WAF to take when a request doesn't match the criteria in any of the rules that are associated with the web ACL. Detailed below.
	DefaultAction WebAclDefaultActionOutput `pulumi:"defaultAction"`
	// Configuration block to enable WAF logging. Detailed below.
	LoggingConfiguration WebAclLoggingConfigurationPtrOutput `pulumi:"loggingConfiguration"`
	// The name or description for the Amazon CloudWatch metric of this web ACL.
	MetricName pulumi.StringOutput `pulumi:"metricName"`
	// The name or description of the web ACL.
	Name pulumi.StringOutput `pulumi:"name"`
	// Configuration blocks containing rules to associate with the web ACL and the settings for each rule. Detailed below.
	Rules WebAclRuleArrayOutput `pulumi:"rules"`
	// Key-value map of resource tags
	Tags pulumi.StringMapOutput `pulumi:"tags"`
}

Provides a WAF Web ACL Resource

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/waf"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		ipset, err := waf.NewIpSet(ctx, "ipset", &waf.IpSetArgs{
			IpSetDescriptors: waf.IpSetIpSetDescriptorArray{
				&waf.IpSetIpSetDescriptorArgs{
					Type:  pulumi.String("IPV4"),
					Value: pulumi.String("192.0.7.0/24"),
				},
			},
		})
		if err != nil {
			return err
		}
		wafrule, err := waf.NewRule(ctx, "wafrule", &waf.RuleArgs{
			MetricName: pulumi.String("tfWAFRule"),
			Predicates: waf.RulePredicateArray{
				&waf.RulePredicateArgs{
					DataId:  ipset.ID(),
					Negated: pulumi.Bool(false),
					Type:    pulumi.String("IPMatch"),
				},
			},
		}, pulumi.DependsOn([]pulumi.Resource{
			ipset,
		}))
		if err != nil {
			return err
		}
		_, err = waf.NewWebAcl(ctx, "wafAcl", &waf.WebAclArgs{
			MetricName: pulumi.String("tfWebACL"),
			DefaultAction: &waf.WebAclDefaultActionArgs{
				Type: pulumi.String("ALLOW"),
			},
			Rules: waf.WebAclRuleArray{
				&waf.WebAclRuleArgs{
					Action: &waf.WebAclRuleActionArgs{
						Type: pulumi.String("BLOCK"),
					},
					Priority: pulumi.Int(1),
					RuleId:   wafrule.ID(),
					Type:     pulumi.String("REGULAR"),
				},
			},
		}, pulumi.DependsOn([]pulumi.Resource{
			ipset,
			wafrule,
		}))
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Logging

> *NOTE:* The Kinesis Firehose Delivery Stream name must begin with `aws-waf-logs-` and be located in `us-east-1` region. See the [AWS WAF Developer Guide](https://docs.aws.amazon.com/waf/latest/developerguide/logging.html) for more information about enabling WAF logging.

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/waf"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := waf.NewWebAcl(ctx, "example", &waf.WebAclArgs{
			LoggingConfiguration: &waf.WebAclLoggingConfigurationArgs{
				LogDestination: pulumi.Any(aws_kinesis_firehose_delivery_stream.Example.Arn),
				RedactedFields: &waf.WebAclLoggingConfigurationRedactedFieldsArgs{
					FieldToMatches: waf.WebAclLoggingConfigurationRedactedFieldsFieldToMatchArray{
						&waf.WebAclLoggingConfigurationRedactedFieldsFieldToMatchArgs{
							Type: pulumi.String("URI"),
						},
						&waf.WebAclLoggingConfigurationRedactedFieldsFieldToMatchArgs{
							Data: pulumi.String("referer"),
							Type: pulumi.String("HEADER"),
						},
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

WAF Web ACL can be imported using the `id`, e.g.

```sh

$ pulumi import aws:waf/webAcl:WebAcl main 0c8e583e-18f3-4c13-9e2a-67c4805d2f94

```

func GetWebAcl

func GetWebAcl(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *WebAclState, opts ...pulumi.ResourceOption) (*WebAcl, error)

GetWebAcl gets an existing WebAcl resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewWebAcl

func NewWebAcl(ctx *pulumi.Context,
	name string, args *WebAclArgs, opts ...pulumi.ResourceOption) (*WebAcl, error)

NewWebAcl registers a new resource with the given unique name, arguments, and options.

func (*WebAcl) ElementType added in v3.13.0

func (*WebAcl) ElementType() reflect.Type

func (*WebAcl) ToWebAclOutput added in v3.13.0

func (i *WebAcl) ToWebAclOutput() WebAclOutput

func (*WebAcl) ToWebAclOutputWithContext added in v3.13.0

func (i *WebAcl) ToWebAclOutputWithContext(ctx context.Context) WebAclOutput

func (*WebAcl) ToWebAclPtrOutput added in v3.25.0

func (i *WebAcl) ToWebAclPtrOutput() WebAclPtrOutput

func (*WebAcl) ToWebAclPtrOutputWithContext added in v3.25.0

func (i *WebAcl) ToWebAclPtrOutputWithContext(ctx context.Context) WebAclPtrOutput

type WebAclArgs

type WebAclArgs struct {
	// Configuration block with action that you want AWS WAF to take when a request doesn't match the criteria in any of the rules that are associated with the web ACL. Detailed below.
	DefaultAction WebAclDefaultActionInput
	// Configuration block to enable WAF logging. Detailed below.
	LoggingConfiguration WebAclLoggingConfigurationPtrInput
	// The name or description for the Amazon CloudWatch metric of this web ACL.
	MetricName pulumi.StringInput
	// The name or description of the web ACL.
	Name pulumi.StringPtrInput
	// Configuration blocks containing rules to associate with the web ACL and the settings for each rule. Detailed below.
	Rules WebAclRuleArrayInput
	// Key-value map of resource tags
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a WebAcl resource.

func (WebAclArgs) ElementType

func (WebAclArgs) ElementType() reflect.Type

type WebAclArray added in v3.25.0

type WebAclArray []WebAclInput

func (WebAclArray) ElementType added in v3.25.0

func (WebAclArray) ElementType() reflect.Type

func (WebAclArray) ToWebAclArrayOutput added in v3.25.0

func (i WebAclArray) ToWebAclArrayOutput() WebAclArrayOutput

func (WebAclArray) ToWebAclArrayOutputWithContext added in v3.25.0

func (i WebAclArray) ToWebAclArrayOutputWithContext(ctx context.Context) WebAclArrayOutput

type WebAclArrayInput added in v3.25.0

type WebAclArrayInput interface {
	pulumi.Input

	ToWebAclArrayOutput() WebAclArrayOutput
	ToWebAclArrayOutputWithContext(context.Context) WebAclArrayOutput
}

WebAclArrayInput is an input type that accepts WebAclArray and WebAclArrayOutput values. You can construct a concrete instance of `WebAclArrayInput` via:

WebAclArray{ WebAclArgs{...} }

type WebAclArrayOutput added in v3.25.0

type WebAclArrayOutput struct{ *pulumi.OutputState }

func (WebAclArrayOutput) ElementType added in v3.25.0

func (WebAclArrayOutput) ElementType() reflect.Type

func (WebAclArrayOutput) Index added in v3.25.0

func (WebAclArrayOutput) ToWebAclArrayOutput added in v3.25.0

func (o WebAclArrayOutput) ToWebAclArrayOutput() WebAclArrayOutput

func (WebAclArrayOutput) ToWebAclArrayOutputWithContext added in v3.25.0

func (o WebAclArrayOutput) ToWebAclArrayOutputWithContext(ctx context.Context) WebAclArrayOutput

type WebAclDefaultAction

type WebAclDefaultAction struct {
	// The rule type, either `REGULAR`, as defined by [Rule](http://docs.aws.amazon.com/waf/latest/APIReference/API_Rule.html), `RATE_BASED`, as defined by [RateBasedRule](http://docs.aws.amazon.com/waf/latest/APIReference/API_RateBasedRule.html), or `GROUP`, as defined by [RuleGroup](https://docs.aws.amazon.com/waf/latest/APIReference/API_RuleGroup.html). The default is REGULAR. If you add a RATE_BASED rule, you need to set `type` as `RATE_BASED`. If you add a GROUP rule, you need to set `type` as `GROUP`.
	Type string `pulumi:"type"`
}

type WebAclDefaultActionArgs

type WebAclDefaultActionArgs struct {
	// The rule type, either `REGULAR`, as defined by [Rule](http://docs.aws.amazon.com/waf/latest/APIReference/API_Rule.html), `RATE_BASED`, as defined by [RateBasedRule](http://docs.aws.amazon.com/waf/latest/APIReference/API_RateBasedRule.html), or `GROUP`, as defined by [RuleGroup](https://docs.aws.amazon.com/waf/latest/APIReference/API_RuleGroup.html). The default is REGULAR. If you add a RATE_BASED rule, you need to set `type` as `RATE_BASED`. If you add a GROUP rule, you need to set `type` as `GROUP`.
	Type pulumi.StringInput `pulumi:"type"`
}

func (WebAclDefaultActionArgs) ElementType

func (WebAclDefaultActionArgs) ElementType() reflect.Type

func (WebAclDefaultActionArgs) ToWebAclDefaultActionOutput

func (i WebAclDefaultActionArgs) ToWebAclDefaultActionOutput() WebAclDefaultActionOutput

func (WebAclDefaultActionArgs) ToWebAclDefaultActionOutputWithContext

func (i WebAclDefaultActionArgs) ToWebAclDefaultActionOutputWithContext(ctx context.Context) WebAclDefaultActionOutput

func (WebAclDefaultActionArgs) ToWebAclDefaultActionPtrOutput

func (i WebAclDefaultActionArgs) ToWebAclDefaultActionPtrOutput() WebAclDefaultActionPtrOutput

func (WebAclDefaultActionArgs) ToWebAclDefaultActionPtrOutputWithContext

func (i WebAclDefaultActionArgs) ToWebAclDefaultActionPtrOutputWithContext(ctx context.Context) WebAclDefaultActionPtrOutput

type WebAclDefaultActionInput

type WebAclDefaultActionInput interface {
	pulumi.Input

	ToWebAclDefaultActionOutput() WebAclDefaultActionOutput
	ToWebAclDefaultActionOutputWithContext(context.Context) WebAclDefaultActionOutput
}

WebAclDefaultActionInput is an input type that accepts WebAclDefaultActionArgs and WebAclDefaultActionOutput values. You can construct a concrete instance of `WebAclDefaultActionInput` via:

WebAclDefaultActionArgs{...}

type WebAclDefaultActionOutput

type WebAclDefaultActionOutput struct{ *pulumi.OutputState }

func (WebAclDefaultActionOutput) ElementType

func (WebAclDefaultActionOutput) ElementType() reflect.Type

func (WebAclDefaultActionOutput) ToWebAclDefaultActionOutput

func (o WebAclDefaultActionOutput) ToWebAclDefaultActionOutput() WebAclDefaultActionOutput

func (WebAclDefaultActionOutput) ToWebAclDefaultActionOutputWithContext

func (o WebAclDefaultActionOutput) ToWebAclDefaultActionOutputWithContext(ctx context.Context) WebAclDefaultActionOutput

func (WebAclDefaultActionOutput) ToWebAclDefaultActionPtrOutput

func (o WebAclDefaultActionOutput) ToWebAclDefaultActionPtrOutput() WebAclDefaultActionPtrOutput

func (WebAclDefaultActionOutput) ToWebAclDefaultActionPtrOutputWithContext

func (o WebAclDefaultActionOutput) ToWebAclDefaultActionPtrOutputWithContext(ctx context.Context) WebAclDefaultActionPtrOutput

func (WebAclDefaultActionOutput) Type

The rule type, either `REGULAR`, as defined by Rule(http://docs.aws.amazon.com/waf/latest/APIReference/API_Rule.html), `RATE_BASED`, as defined by RateBasedRule(http://docs.aws.amazon.com/waf/latest/APIReference/API_RateBasedRule.html), or `GROUP`, as defined by RuleGroup(https://docs.aws.amazon.com/waf/latest/APIReference/API_RuleGroup.html). The default is REGULAR. If you add a RATE_BASED rule, you need to set `type` as `RATE_BASED`. If you add a GROUP rule, you need to set `type` as `GROUP`.

type WebAclDefaultActionPtrInput

type WebAclDefaultActionPtrInput interface {
	pulumi.Input

	ToWebAclDefaultActionPtrOutput() WebAclDefaultActionPtrOutput
	ToWebAclDefaultActionPtrOutputWithContext(context.Context) WebAclDefaultActionPtrOutput
}

WebAclDefaultActionPtrInput is an input type that accepts WebAclDefaultActionArgs, WebAclDefaultActionPtr and WebAclDefaultActionPtrOutput values. You can construct a concrete instance of `WebAclDefaultActionPtrInput` via:

        WebAclDefaultActionArgs{...}

or:

        nil

type WebAclDefaultActionPtrOutput

type WebAclDefaultActionPtrOutput struct{ *pulumi.OutputState }

func (WebAclDefaultActionPtrOutput) Elem

func (WebAclDefaultActionPtrOutput) ElementType

func (WebAclDefaultActionPtrOutput) ToWebAclDefaultActionPtrOutput

func (o WebAclDefaultActionPtrOutput) ToWebAclDefaultActionPtrOutput() WebAclDefaultActionPtrOutput

func (WebAclDefaultActionPtrOutput) ToWebAclDefaultActionPtrOutputWithContext

func (o WebAclDefaultActionPtrOutput) ToWebAclDefaultActionPtrOutputWithContext(ctx context.Context) WebAclDefaultActionPtrOutput

func (WebAclDefaultActionPtrOutput) Type

The rule type, either `REGULAR`, as defined by Rule(http://docs.aws.amazon.com/waf/latest/APIReference/API_Rule.html), `RATE_BASED`, as defined by RateBasedRule(http://docs.aws.amazon.com/waf/latest/APIReference/API_RateBasedRule.html), or `GROUP`, as defined by RuleGroup(https://docs.aws.amazon.com/waf/latest/APIReference/API_RuleGroup.html). The default is REGULAR. If you add a RATE_BASED rule, you need to set `type` as `RATE_BASED`. If you add a GROUP rule, you need to set `type` as `GROUP`.

type WebAclInput added in v3.13.0

type WebAclInput interface {
	pulumi.Input

	ToWebAclOutput() WebAclOutput
	ToWebAclOutputWithContext(ctx context.Context) WebAclOutput
}

type WebAclLoggingConfiguration

type WebAclLoggingConfiguration struct {
	// Amazon Resource Name (ARN) of Kinesis Firehose Delivery Stream
	LogDestination string `pulumi:"logDestination"`
	// Configuration block containing parts of the request that you want redacted from the logs. Detailed below.
	RedactedFields *WebAclLoggingConfigurationRedactedFields `pulumi:"redactedFields"`
}

type WebAclLoggingConfigurationArgs

type WebAclLoggingConfigurationArgs struct {
	// Amazon Resource Name (ARN) of Kinesis Firehose Delivery Stream
	LogDestination pulumi.StringInput `pulumi:"logDestination"`
	// Configuration block containing parts of the request that you want redacted from the logs. Detailed below.
	RedactedFields WebAclLoggingConfigurationRedactedFieldsPtrInput `pulumi:"redactedFields"`
}

func (WebAclLoggingConfigurationArgs) ElementType

func (WebAclLoggingConfigurationArgs) ToWebAclLoggingConfigurationOutput

func (i WebAclLoggingConfigurationArgs) ToWebAclLoggingConfigurationOutput() WebAclLoggingConfigurationOutput

func (WebAclLoggingConfigurationArgs) ToWebAclLoggingConfigurationOutputWithContext

func (i WebAclLoggingConfigurationArgs) ToWebAclLoggingConfigurationOutputWithContext(ctx context.Context) WebAclLoggingConfigurationOutput

func (WebAclLoggingConfigurationArgs) ToWebAclLoggingConfigurationPtrOutput

func (i WebAclLoggingConfigurationArgs) ToWebAclLoggingConfigurationPtrOutput() WebAclLoggingConfigurationPtrOutput

func (WebAclLoggingConfigurationArgs) ToWebAclLoggingConfigurationPtrOutputWithContext

func (i WebAclLoggingConfigurationArgs) ToWebAclLoggingConfigurationPtrOutputWithContext(ctx context.Context) WebAclLoggingConfigurationPtrOutput

type WebAclLoggingConfigurationInput

type WebAclLoggingConfigurationInput interface {
	pulumi.Input

	ToWebAclLoggingConfigurationOutput() WebAclLoggingConfigurationOutput
	ToWebAclLoggingConfigurationOutputWithContext(context.Context) WebAclLoggingConfigurationOutput
}

WebAclLoggingConfigurationInput is an input type that accepts WebAclLoggingConfigurationArgs and WebAclLoggingConfigurationOutput values. You can construct a concrete instance of `WebAclLoggingConfigurationInput` via:

WebAclLoggingConfigurationArgs{...}

type WebAclLoggingConfigurationOutput

type WebAclLoggingConfigurationOutput struct{ *pulumi.OutputState }

func (WebAclLoggingConfigurationOutput) ElementType

func (WebAclLoggingConfigurationOutput) LogDestination

Amazon Resource Name (ARN) of Kinesis Firehose Delivery Stream

func (WebAclLoggingConfigurationOutput) RedactedFields

Configuration block containing parts of the request that you want redacted from the logs. Detailed below.

func (WebAclLoggingConfigurationOutput) ToWebAclLoggingConfigurationOutput

func (o WebAclLoggingConfigurationOutput) ToWebAclLoggingConfigurationOutput() WebAclLoggingConfigurationOutput

func (WebAclLoggingConfigurationOutput) ToWebAclLoggingConfigurationOutputWithContext

func (o WebAclLoggingConfigurationOutput) ToWebAclLoggingConfigurationOutputWithContext(ctx context.Context) WebAclLoggingConfigurationOutput

func (WebAclLoggingConfigurationOutput) ToWebAclLoggingConfigurationPtrOutput

func (o WebAclLoggingConfigurationOutput) ToWebAclLoggingConfigurationPtrOutput() WebAclLoggingConfigurationPtrOutput

func (WebAclLoggingConfigurationOutput) ToWebAclLoggingConfigurationPtrOutputWithContext

func (o WebAclLoggingConfigurationOutput) ToWebAclLoggingConfigurationPtrOutputWithContext(ctx context.Context) WebAclLoggingConfigurationPtrOutput

type WebAclLoggingConfigurationPtrInput

type WebAclLoggingConfigurationPtrInput interface {
	pulumi.Input

	ToWebAclLoggingConfigurationPtrOutput() WebAclLoggingConfigurationPtrOutput
	ToWebAclLoggingConfigurationPtrOutputWithContext(context.Context) WebAclLoggingConfigurationPtrOutput
}

WebAclLoggingConfigurationPtrInput is an input type that accepts WebAclLoggingConfigurationArgs, WebAclLoggingConfigurationPtr and WebAclLoggingConfigurationPtrOutput values. You can construct a concrete instance of `WebAclLoggingConfigurationPtrInput` via:

        WebAclLoggingConfigurationArgs{...}

or:

        nil

type WebAclLoggingConfigurationPtrOutput

type WebAclLoggingConfigurationPtrOutput struct{ *pulumi.OutputState }

func (WebAclLoggingConfigurationPtrOutput) Elem

func (WebAclLoggingConfigurationPtrOutput) ElementType

func (WebAclLoggingConfigurationPtrOutput) LogDestination

Amazon Resource Name (ARN) of Kinesis Firehose Delivery Stream

func (WebAclLoggingConfigurationPtrOutput) RedactedFields

Configuration block containing parts of the request that you want redacted from the logs. Detailed below.

func (WebAclLoggingConfigurationPtrOutput) ToWebAclLoggingConfigurationPtrOutput

func (o WebAclLoggingConfigurationPtrOutput) ToWebAclLoggingConfigurationPtrOutput() WebAclLoggingConfigurationPtrOutput

func (WebAclLoggingConfigurationPtrOutput) ToWebAclLoggingConfigurationPtrOutputWithContext

func (o WebAclLoggingConfigurationPtrOutput) ToWebAclLoggingConfigurationPtrOutputWithContext(ctx context.Context) WebAclLoggingConfigurationPtrOutput

type WebAclLoggingConfigurationRedactedFields

type WebAclLoggingConfigurationRedactedFields struct {
	// Set of configuration blocks for fields to redact. Detailed below.
	FieldToMatches []WebAclLoggingConfigurationRedactedFieldsFieldToMatch `pulumi:"fieldToMatches"`
}

type WebAclLoggingConfigurationRedactedFieldsArgs

type WebAclLoggingConfigurationRedactedFieldsArgs struct {
	// Set of configuration blocks for fields to redact. Detailed below.
	FieldToMatches WebAclLoggingConfigurationRedactedFieldsFieldToMatchArrayInput `pulumi:"fieldToMatches"`
}

func (WebAclLoggingConfigurationRedactedFieldsArgs) ElementType

func (WebAclLoggingConfigurationRedactedFieldsArgs) ToWebAclLoggingConfigurationRedactedFieldsOutput

func (i WebAclLoggingConfigurationRedactedFieldsArgs) ToWebAclLoggingConfigurationRedactedFieldsOutput() WebAclLoggingConfigurationRedactedFieldsOutput

func (WebAclLoggingConfigurationRedactedFieldsArgs) ToWebAclLoggingConfigurationRedactedFieldsOutputWithContext

func (i WebAclLoggingConfigurationRedactedFieldsArgs) ToWebAclLoggingConfigurationRedactedFieldsOutputWithContext(ctx context.Context) WebAclLoggingConfigurationRedactedFieldsOutput

func (WebAclLoggingConfigurationRedactedFieldsArgs) ToWebAclLoggingConfigurationRedactedFieldsPtrOutput

func (i WebAclLoggingConfigurationRedactedFieldsArgs) ToWebAclLoggingConfigurationRedactedFieldsPtrOutput() WebAclLoggingConfigurationRedactedFieldsPtrOutput

func (WebAclLoggingConfigurationRedactedFieldsArgs) ToWebAclLoggingConfigurationRedactedFieldsPtrOutputWithContext

func (i WebAclLoggingConfigurationRedactedFieldsArgs) ToWebAclLoggingConfigurationRedactedFieldsPtrOutputWithContext(ctx context.Context) WebAclLoggingConfigurationRedactedFieldsPtrOutput

type WebAclLoggingConfigurationRedactedFieldsFieldToMatch

type WebAclLoggingConfigurationRedactedFieldsFieldToMatch struct {
	// When the value of `type` is `HEADER`, enter the name of the header that you want the WAF to search, for example, `User-Agent` or `Referer`. If the value of `type` is any other value, omit `data`.
	Data *string `pulumi:"data"`
	// The rule type, either `REGULAR`, as defined by [Rule](http://docs.aws.amazon.com/waf/latest/APIReference/API_Rule.html), `RATE_BASED`, as defined by [RateBasedRule](http://docs.aws.amazon.com/waf/latest/APIReference/API_RateBasedRule.html), or `GROUP`, as defined by [RuleGroup](https://docs.aws.amazon.com/waf/latest/APIReference/API_RuleGroup.html). The default is REGULAR. If you add a RATE_BASED rule, you need to set `type` as `RATE_BASED`. If you add a GROUP rule, you need to set `type` as `GROUP`.
	Type string `pulumi:"type"`
}

type WebAclLoggingConfigurationRedactedFieldsFieldToMatchArgs

type WebAclLoggingConfigurationRedactedFieldsFieldToMatchArgs struct {
	// When the value of `type` is `HEADER`, enter the name of the header that you want the WAF to search, for example, `User-Agent` or `Referer`. If the value of `type` is any other value, omit `data`.
	Data pulumi.StringPtrInput `pulumi:"data"`
	// The rule type, either `REGULAR`, as defined by [Rule](http://docs.aws.amazon.com/waf/latest/APIReference/API_Rule.html), `RATE_BASED`, as defined by [RateBasedRule](http://docs.aws.amazon.com/waf/latest/APIReference/API_RateBasedRule.html), or `GROUP`, as defined by [RuleGroup](https://docs.aws.amazon.com/waf/latest/APIReference/API_RuleGroup.html). The default is REGULAR. If you add a RATE_BASED rule, you need to set `type` as `RATE_BASED`. If you add a GROUP rule, you need to set `type` as `GROUP`.
	Type pulumi.StringInput `pulumi:"type"`
}

func (WebAclLoggingConfigurationRedactedFieldsFieldToMatchArgs) ElementType

func (WebAclLoggingConfigurationRedactedFieldsFieldToMatchArgs) ToWebAclLoggingConfigurationRedactedFieldsFieldToMatchOutput

func (WebAclLoggingConfigurationRedactedFieldsFieldToMatchArgs) ToWebAclLoggingConfigurationRedactedFieldsFieldToMatchOutputWithContext

func (i WebAclLoggingConfigurationRedactedFieldsFieldToMatchArgs) ToWebAclLoggingConfigurationRedactedFieldsFieldToMatchOutputWithContext(ctx context.Context) WebAclLoggingConfigurationRedactedFieldsFieldToMatchOutput

type WebAclLoggingConfigurationRedactedFieldsFieldToMatchArray

type WebAclLoggingConfigurationRedactedFieldsFieldToMatchArray []WebAclLoggingConfigurationRedactedFieldsFieldToMatchInput

func (WebAclLoggingConfigurationRedactedFieldsFieldToMatchArray) ElementType

func (WebAclLoggingConfigurationRedactedFieldsFieldToMatchArray) ToWebAclLoggingConfigurationRedactedFieldsFieldToMatchArrayOutput

func (i WebAclLoggingConfigurationRedactedFieldsFieldToMatchArray) ToWebAclLoggingConfigurationRedactedFieldsFieldToMatchArrayOutput() WebAclLoggingConfigurationRedactedFieldsFieldToMatchArrayOutput

func (WebAclLoggingConfigurationRedactedFieldsFieldToMatchArray) ToWebAclLoggingConfigurationRedactedFieldsFieldToMatchArrayOutputWithContext

func (i WebAclLoggingConfigurationRedactedFieldsFieldToMatchArray) ToWebAclLoggingConfigurationRedactedFieldsFieldToMatchArrayOutputWithContext(ctx context.Context) WebAclLoggingConfigurationRedactedFieldsFieldToMatchArrayOutput

type WebAclLoggingConfigurationRedactedFieldsFieldToMatchArrayInput

type WebAclLoggingConfigurationRedactedFieldsFieldToMatchArrayInput interface {
	pulumi.Input

	ToWebAclLoggingConfigurationRedactedFieldsFieldToMatchArrayOutput() WebAclLoggingConfigurationRedactedFieldsFieldToMatchArrayOutput
	ToWebAclLoggingConfigurationRedactedFieldsFieldToMatchArrayOutputWithContext(context.Context) WebAclLoggingConfigurationRedactedFieldsFieldToMatchArrayOutput
}

WebAclLoggingConfigurationRedactedFieldsFieldToMatchArrayInput is an input type that accepts WebAclLoggingConfigurationRedactedFieldsFieldToMatchArray and WebAclLoggingConfigurationRedactedFieldsFieldToMatchArrayOutput values. You can construct a concrete instance of `WebAclLoggingConfigurationRedactedFieldsFieldToMatchArrayInput` via:

WebAclLoggingConfigurationRedactedFieldsFieldToMatchArray{ WebAclLoggingConfigurationRedactedFieldsFieldToMatchArgs{...} }

type WebAclLoggingConfigurationRedactedFieldsFieldToMatchArrayOutput

type WebAclLoggingConfigurationRedactedFieldsFieldToMatchArrayOutput struct{ *pulumi.OutputState }

func (WebAclLoggingConfigurationRedactedFieldsFieldToMatchArrayOutput) ElementType

func (WebAclLoggingConfigurationRedactedFieldsFieldToMatchArrayOutput) Index

func (WebAclLoggingConfigurationRedactedFieldsFieldToMatchArrayOutput) ToWebAclLoggingConfigurationRedactedFieldsFieldToMatchArrayOutput

func (WebAclLoggingConfigurationRedactedFieldsFieldToMatchArrayOutput) ToWebAclLoggingConfigurationRedactedFieldsFieldToMatchArrayOutputWithContext

func (o WebAclLoggingConfigurationRedactedFieldsFieldToMatchArrayOutput) ToWebAclLoggingConfigurationRedactedFieldsFieldToMatchArrayOutputWithContext(ctx context.Context) WebAclLoggingConfigurationRedactedFieldsFieldToMatchArrayOutput

type WebAclLoggingConfigurationRedactedFieldsFieldToMatchInput

type WebAclLoggingConfigurationRedactedFieldsFieldToMatchInput interface {
	pulumi.Input

	ToWebAclLoggingConfigurationRedactedFieldsFieldToMatchOutput() WebAclLoggingConfigurationRedactedFieldsFieldToMatchOutput
	ToWebAclLoggingConfigurationRedactedFieldsFieldToMatchOutputWithContext(context.Context) WebAclLoggingConfigurationRedactedFieldsFieldToMatchOutput
}

WebAclLoggingConfigurationRedactedFieldsFieldToMatchInput is an input type that accepts WebAclLoggingConfigurationRedactedFieldsFieldToMatchArgs and WebAclLoggingConfigurationRedactedFieldsFieldToMatchOutput values. You can construct a concrete instance of `WebAclLoggingConfigurationRedactedFieldsFieldToMatchInput` via:

WebAclLoggingConfigurationRedactedFieldsFieldToMatchArgs{...}

type WebAclLoggingConfigurationRedactedFieldsFieldToMatchOutput

type WebAclLoggingConfigurationRedactedFieldsFieldToMatchOutput struct{ *pulumi.OutputState }

func (WebAclLoggingConfigurationRedactedFieldsFieldToMatchOutput) Data

When the value of `type` is `HEADER`, enter the name of the header that you want the WAF to search, for example, `User-Agent` or `Referer`. If the value of `type` is any other value, omit `data`.

func (WebAclLoggingConfigurationRedactedFieldsFieldToMatchOutput) ElementType

func (WebAclLoggingConfigurationRedactedFieldsFieldToMatchOutput) ToWebAclLoggingConfigurationRedactedFieldsFieldToMatchOutput

func (WebAclLoggingConfigurationRedactedFieldsFieldToMatchOutput) ToWebAclLoggingConfigurationRedactedFieldsFieldToMatchOutputWithContext

func (o WebAclLoggingConfigurationRedactedFieldsFieldToMatchOutput) ToWebAclLoggingConfigurationRedactedFieldsFieldToMatchOutputWithContext(ctx context.Context) WebAclLoggingConfigurationRedactedFieldsFieldToMatchOutput

func (WebAclLoggingConfigurationRedactedFieldsFieldToMatchOutput) Type

The rule type, either `REGULAR`, as defined by Rule(http://docs.aws.amazon.com/waf/latest/APIReference/API_Rule.html), `RATE_BASED`, as defined by RateBasedRule(http://docs.aws.amazon.com/waf/latest/APIReference/API_RateBasedRule.html), or `GROUP`, as defined by RuleGroup(https://docs.aws.amazon.com/waf/latest/APIReference/API_RuleGroup.html). The default is REGULAR. If you add a RATE_BASED rule, you need to set `type` as `RATE_BASED`. If you add a GROUP rule, you need to set `type` as `GROUP`.

type WebAclLoggingConfigurationRedactedFieldsInput

type WebAclLoggingConfigurationRedactedFieldsInput interface {
	pulumi.Input

	ToWebAclLoggingConfigurationRedactedFieldsOutput() WebAclLoggingConfigurationRedactedFieldsOutput
	ToWebAclLoggingConfigurationRedactedFieldsOutputWithContext(context.Context) WebAclLoggingConfigurationRedactedFieldsOutput
}

WebAclLoggingConfigurationRedactedFieldsInput is an input type that accepts WebAclLoggingConfigurationRedactedFieldsArgs and WebAclLoggingConfigurationRedactedFieldsOutput values. You can construct a concrete instance of `WebAclLoggingConfigurationRedactedFieldsInput` via:

WebAclLoggingConfigurationRedactedFieldsArgs{...}

type WebAclLoggingConfigurationRedactedFieldsOutput

type WebAclLoggingConfigurationRedactedFieldsOutput struct{ *pulumi.OutputState }

func (WebAclLoggingConfigurationRedactedFieldsOutput) ElementType

func (WebAclLoggingConfigurationRedactedFieldsOutput) FieldToMatches

Set of configuration blocks for fields to redact. Detailed below.

func (WebAclLoggingConfigurationRedactedFieldsOutput) ToWebAclLoggingConfigurationRedactedFieldsOutput

func (o WebAclLoggingConfigurationRedactedFieldsOutput) ToWebAclLoggingConfigurationRedactedFieldsOutput() WebAclLoggingConfigurationRedactedFieldsOutput

func (WebAclLoggingConfigurationRedactedFieldsOutput) ToWebAclLoggingConfigurationRedactedFieldsOutputWithContext

func (o WebAclLoggingConfigurationRedactedFieldsOutput) ToWebAclLoggingConfigurationRedactedFieldsOutputWithContext(ctx context.Context) WebAclLoggingConfigurationRedactedFieldsOutput

func (WebAclLoggingConfigurationRedactedFieldsOutput) ToWebAclLoggingConfigurationRedactedFieldsPtrOutput

func (o WebAclLoggingConfigurationRedactedFieldsOutput) ToWebAclLoggingConfigurationRedactedFieldsPtrOutput() WebAclLoggingConfigurationRedactedFieldsPtrOutput

func (WebAclLoggingConfigurationRedactedFieldsOutput) ToWebAclLoggingConfigurationRedactedFieldsPtrOutputWithContext

func (o WebAclLoggingConfigurationRedactedFieldsOutput) ToWebAclLoggingConfigurationRedactedFieldsPtrOutputWithContext(ctx context.Context) WebAclLoggingConfigurationRedactedFieldsPtrOutput

type WebAclLoggingConfigurationRedactedFieldsPtrInput

type WebAclLoggingConfigurationRedactedFieldsPtrInput interface {
	pulumi.Input

	ToWebAclLoggingConfigurationRedactedFieldsPtrOutput() WebAclLoggingConfigurationRedactedFieldsPtrOutput
	ToWebAclLoggingConfigurationRedactedFieldsPtrOutputWithContext(context.Context) WebAclLoggingConfigurationRedactedFieldsPtrOutput
}

WebAclLoggingConfigurationRedactedFieldsPtrInput is an input type that accepts WebAclLoggingConfigurationRedactedFieldsArgs, WebAclLoggingConfigurationRedactedFieldsPtr and WebAclLoggingConfigurationRedactedFieldsPtrOutput values. You can construct a concrete instance of `WebAclLoggingConfigurationRedactedFieldsPtrInput` via:

        WebAclLoggingConfigurationRedactedFieldsArgs{...}

or:

        nil

type WebAclLoggingConfigurationRedactedFieldsPtrOutput

type WebAclLoggingConfigurationRedactedFieldsPtrOutput struct{ *pulumi.OutputState }

func (WebAclLoggingConfigurationRedactedFieldsPtrOutput) Elem

func (WebAclLoggingConfigurationRedactedFieldsPtrOutput) ElementType

func (WebAclLoggingConfigurationRedactedFieldsPtrOutput) FieldToMatches

Set of configuration blocks for fields to redact. Detailed below.

func (WebAclLoggingConfigurationRedactedFieldsPtrOutput) ToWebAclLoggingConfigurationRedactedFieldsPtrOutput

func (o WebAclLoggingConfigurationRedactedFieldsPtrOutput) ToWebAclLoggingConfigurationRedactedFieldsPtrOutput() WebAclLoggingConfigurationRedactedFieldsPtrOutput

func (WebAclLoggingConfigurationRedactedFieldsPtrOutput) ToWebAclLoggingConfigurationRedactedFieldsPtrOutputWithContext

func (o WebAclLoggingConfigurationRedactedFieldsPtrOutput) ToWebAclLoggingConfigurationRedactedFieldsPtrOutputWithContext(ctx context.Context) WebAclLoggingConfigurationRedactedFieldsPtrOutput

type WebAclMap added in v3.25.0

type WebAclMap map[string]WebAclInput

func (WebAclMap) ElementType added in v3.25.0

func (WebAclMap) ElementType() reflect.Type

func (WebAclMap) ToWebAclMapOutput added in v3.25.0

func (i WebAclMap) ToWebAclMapOutput() WebAclMapOutput

func (WebAclMap) ToWebAclMapOutputWithContext added in v3.25.0

func (i WebAclMap) ToWebAclMapOutputWithContext(ctx context.Context) WebAclMapOutput

type WebAclMapInput added in v3.25.0

type WebAclMapInput interface {
	pulumi.Input

	ToWebAclMapOutput() WebAclMapOutput
	ToWebAclMapOutputWithContext(context.Context) WebAclMapOutput
}

WebAclMapInput is an input type that accepts WebAclMap and WebAclMapOutput values. You can construct a concrete instance of `WebAclMapInput` via:

WebAclMap{ "key": WebAclArgs{...} }

type WebAclMapOutput added in v3.25.0

type WebAclMapOutput struct{ *pulumi.OutputState }

func (WebAclMapOutput) ElementType added in v3.25.0

func (WebAclMapOutput) ElementType() reflect.Type

func (WebAclMapOutput) MapIndex added in v3.25.0

func (WebAclMapOutput) ToWebAclMapOutput added in v3.25.0

func (o WebAclMapOutput) ToWebAclMapOutput() WebAclMapOutput

func (WebAclMapOutput) ToWebAclMapOutputWithContext added in v3.25.0

func (o WebAclMapOutput) ToWebAclMapOutputWithContext(ctx context.Context) WebAclMapOutput

type WebAclOutput added in v3.13.0

type WebAclOutput struct {
	*pulumi.OutputState
}

func (WebAclOutput) ElementType added in v3.13.0

func (WebAclOutput) ElementType() reflect.Type

func (WebAclOutput) ToWebAclOutput added in v3.13.0

func (o WebAclOutput) ToWebAclOutput() WebAclOutput

func (WebAclOutput) ToWebAclOutputWithContext added in v3.13.0

func (o WebAclOutput) ToWebAclOutputWithContext(ctx context.Context) WebAclOutput

func (WebAclOutput) ToWebAclPtrOutput added in v3.25.0

func (o WebAclOutput) ToWebAclPtrOutput() WebAclPtrOutput

func (WebAclOutput) ToWebAclPtrOutputWithContext added in v3.25.0

func (o WebAclOutput) ToWebAclPtrOutputWithContext(ctx context.Context) WebAclPtrOutput

type WebAclPtrInput added in v3.25.0

type WebAclPtrInput interface {
	pulumi.Input

	ToWebAclPtrOutput() WebAclPtrOutput
	ToWebAclPtrOutputWithContext(ctx context.Context) WebAclPtrOutput
}

type WebAclPtrOutput added in v3.25.0

type WebAclPtrOutput struct {
	*pulumi.OutputState
}

func (WebAclPtrOutput) ElementType added in v3.25.0

func (WebAclPtrOutput) ElementType() reflect.Type

func (WebAclPtrOutput) ToWebAclPtrOutput added in v3.25.0

func (o WebAclPtrOutput) ToWebAclPtrOutput() WebAclPtrOutput

func (WebAclPtrOutput) ToWebAclPtrOutputWithContext added in v3.25.0

func (o WebAclPtrOutput) ToWebAclPtrOutputWithContext(ctx context.Context) WebAclPtrOutput

type WebAclRule

type WebAclRule struct {
	// The action that CloudFront or AWS WAF takes when a web request matches the conditions in the rule. Not used if `type` is `GROUP`.
	Action *WebAclRuleAction `pulumi:"action"`
	// Override the action that a group requests CloudFront or AWS WAF takes when a web request matches the conditions in the rule. Only used if `type` is `GROUP`.
	OverrideAction *WebAclRuleOverrideAction `pulumi:"overrideAction"`
	// Specifies the order in which the rules in a WebACL are evaluated.
	// Rules with a lower value are evaluated before rules with a higher value.
	Priority int `pulumi:"priority"`
	// ID of the associated WAF (Global) rule (e.g. `waf.Rule`). WAF (Regional) rules cannot be used.
	RuleId string `pulumi:"ruleId"`
	// The rule type, either `REGULAR`, as defined by [Rule](http://docs.aws.amazon.com/waf/latest/APIReference/API_Rule.html), `RATE_BASED`, as defined by [RateBasedRule](http://docs.aws.amazon.com/waf/latest/APIReference/API_RateBasedRule.html), or `GROUP`, as defined by [RuleGroup](https://docs.aws.amazon.com/waf/latest/APIReference/API_RuleGroup.html). The default is REGULAR. If you add a RATE_BASED rule, you need to set `type` as `RATE_BASED`. If you add a GROUP rule, you need to set `type` as `GROUP`.
	Type *string `pulumi:"type"`
}

type WebAclRuleAction

type WebAclRuleAction struct {
	// The rule type, either `REGULAR`, as defined by [Rule](http://docs.aws.amazon.com/waf/latest/APIReference/API_Rule.html), `RATE_BASED`, as defined by [RateBasedRule](http://docs.aws.amazon.com/waf/latest/APIReference/API_RateBasedRule.html), or `GROUP`, as defined by [RuleGroup](https://docs.aws.amazon.com/waf/latest/APIReference/API_RuleGroup.html). The default is REGULAR. If you add a RATE_BASED rule, you need to set `type` as `RATE_BASED`. If you add a GROUP rule, you need to set `type` as `GROUP`.
	Type string `pulumi:"type"`
}

type WebAclRuleActionArgs

type WebAclRuleActionArgs struct {
	// The rule type, either `REGULAR`, as defined by [Rule](http://docs.aws.amazon.com/waf/latest/APIReference/API_Rule.html), `RATE_BASED`, as defined by [RateBasedRule](http://docs.aws.amazon.com/waf/latest/APIReference/API_RateBasedRule.html), or `GROUP`, as defined by [RuleGroup](https://docs.aws.amazon.com/waf/latest/APIReference/API_RuleGroup.html). The default is REGULAR. If you add a RATE_BASED rule, you need to set `type` as `RATE_BASED`. If you add a GROUP rule, you need to set `type` as `GROUP`.
	Type pulumi.StringInput `pulumi:"type"`
}

func (WebAclRuleActionArgs) ElementType

func (WebAclRuleActionArgs) ElementType() reflect.Type

func (WebAclRuleActionArgs) ToWebAclRuleActionOutput

func (i WebAclRuleActionArgs) ToWebAclRuleActionOutput() WebAclRuleActionOutput

func (WebAclRuleActionArgs) ToWebAclRuleActionOutputWithContext

func (i WebAclRuleActionArgs) ToWebAclRuleActionOutputWithContext(ctx context.Context) WebAclRuleActionOutput

func (WebAclRuleActionArgs) ToWebAclRuleActionPtrOutput

func (i WebAclRuleActionArgs) ToWebAclRuleActionPtrOutput() WebAclRuleActionPtrOutput

func (WebAclRuleActionArgs) ToWebAclRuleActionPtrOutputWithContext

func (i WebAclRuleActionArgs) ToWebAclRuleActionPtrOutputWithContext(ctx context.Context) WebAclRuleActionPtrOutput

type WebAclRuleActionInput

type WebAclRuleActionInput interface {
	pulumi.Input

	ToWebAclRuleActionOutput() WebAclRuleActionOutput
	ToWebAclRuleActionOutputWithContext(context.Context) WebAclRuleActionOutput
}

WebAclRuleActionInput is an input type that accepts WebAclRuleActionArgs and WebAclRuleActionOutput values. You can construct a concrete instance of `WebAclRuleActionInput` via:

WebAclRuleActionArgs{...}

type WebAclRuleActionOutput

type WebAclRuleActionOutput struct{ *pulumi.OutputState }

func (WebAclRuleActionOutput) ElementType

func (WebAclRuleActionOutput) ElementType() reflect.Type

func (WebAclRuleActionOutput) ToWebAclRuleActionOutput

func (o WebAclRuleActionOutput) ToWebAclRuleActionOutput() WebAclRuleActionOutput

func (WebAclRuleActionOutput) ToWebAclRuleActionOutputWithContext

func (o WebAclRuleActionOutput) ToWebAclRuleActionOutputWithContext(ctx context.Context) WebAclRuleActionOutput

func (WebAclRuleActionOutput) ToWebAclRuleActionPtrOutput

func (o WebAclRuleActionOutput) ToWebAclRuleActionPtrOutput() WebAclRuleActionPtrOutput

func (WebAclRuleActionOutput) ToWebAclRuleActionPtrOutputWithContext

func (o WebAclRuleActionOutput) ToWebAclRuleActionPtrOutputWithContext(ctx context.Context) WebAclRuleActionPtrOutput

func (WebAclRuleActionOutput) Type

The rule type, either `REGULAR`, as defined by Rule(http://docs.aws.amazon.com/waf/latest/APIReference/API_Rule.html), `RATE_BASED`, as defined by RateBasedRule(http://docs.aws.amazon.com/waf/latest/APIReference/API_RateBasedRule.html), or `GROUP`, as defined by RuleGroup(https://docs.aws.amazon.com/waf/latest/APIReference/API_RuleGroup.html). The default is REGULAR. If you add a RATE_BASED rule, you need to set `type` as `RATE_BASED`. If you add a GROUP rule, you need to set `type` as `GROUP`.

type WebAclRuleActionPtrInput

type WebAclRuleActionPtrInput interface {
	pulumi.Input

	ToWebAclRuleActionPtrOutput() WebAclRuleActionPtrOutput
	ToWebAclRuleActionPtrOutputWithContext(context.Context) WebAclRuleActionPtrOutput
}

WebAclRuleActionPtrInput is an input type that accepts WebAclRuleActionArgs, WebAclRuleActionPtr and WebAclRuleActionPtrOutput values. You can construct a concrete instance of `WebAclRuleActionPtrInput` via:

        WebAclRuleActionArgs{...}

or:

        nil

type WebAclRuleActionPtrOutput

type WebAclRuleActionPtrOutput struct{ *pulumi.OutputState }

func (WebAclRuleActionPtrOutput) Elem

func (WebAclRuleActionPtrOutput) ElementType

func (WebAclRuleActionPtrOutput) ElementType() reflect.Type

func (WebAclRuleActionPtrOutput) ToWebAclRuleActionPtrOutput

func (o WebAclRuleActionPtrOutput) ToWebAclRuleActionPtrOutput() WebAclRuleActionPtrOutput

func (WebAclRuleActionPtrOutput) ToWebAclRuleActionPtrOutputWithContext

func (o WebAclRuleActionPtrOutput) ToWebAclRuleActionPtrOutputWithContext(ctx context.Context) WebAclRuleActionPtrOutput

func (WebAclRuleActionPtrOutput) Type

The rule type, either `REGULAR`, as defined by Rule(http://docs.aws.amazon.com/waf/latest/APIReference/API_Rule.html), `RATE_BASED`, as defined by RateBasedRule(http://docs.aws.amazon.com/waf/latest/APIReference/API_RateBasedRule.html), or `GROUP`, as defined by RuleGroup(https://docs.aws.amazon.com/waf/latest/APIReference/API_RuleGroup.html). The default is REGULAR. If you add a RATE_BASED rule, you need to set `type` as `RATE_BASED`. If you add a GROUP rule, you need to set `type` as `GROUP`.

type WebAclRuleArgs

type WebAclRuleArgs struct {
	// The action that CloudFront or AWS WAF takes when a web request matches the conditions in the rule. Not used if `type` is `GROUP`.
	Action WebAclRuleActionPtrInput `pulumi:"action"`
	// Override the action that a group requests CloudFront or AWS WAF takes when a web request matches the conditions in the rule. Only used if `type` is `GROUP`.
	OverrideAction WebAclRuleOverrideActionPtrInput `pulumi:"overrideAction"`
	// Specifies the order in which the rules in a WebACL are evaluated.
	// Rules with a lower value are evaluated before rules with a higher value.
	Priority pulumi.IntInput `pulumi:"priority"`
	// ID of the associated WAF (Global) rule (e.g. `waf.Rule`). WAF (Regional) rules cannot be used.
	RuleId pulumi.StringInput `pulumi:"ruleId"`
	// The rule type, either `REGULAR`, as defined by [Rule](http://docs.aws.amazon.com/waf/latest/APIReference/API_Rule.html), `RATE_BASED`, as defined by [RateBasedRule](http://docs.aws.amazon.com/waf/latest/APIReference/API_RateBasedRule.html), or `GROUP`, as defined by [RuleGroup](https://docs.aws.amazon.com/waf/latest/APIReference/API_RuleGroup.html). The default is REGULAR. If you add a RATE_BASED rule, you need to set `type` as `RATE_BASED`. If you add a GROUP rule, you need to set `type` as `GROUP`.
	Type pulumi.StringPtrInput `pulumi:"type"`
}

func (WebAclRuleArgs) ElementType

func (WebAclRuleArgs) ElementType() reflect.Type

func (WebAclRuleArgs) ToWebAclRuleOutput

func (i WebAclRuleArgs) ToWebAclRuleOutput() WebAclRuleOutput

func (WebAclRuleArgs) ToWebAclRuleOutputWithContext

func (i WebAclRuleArgs) ToWebAclRuleOutputWithContext(ctx context.Context) WebAclRuleOutput

type WebAclRuleArray

type WebAclRuleArray []WebAclRuleInput

func (WebAclRuleArray) ElementType

func (WebAclRuleArray) ElementType() reflect.Type

func (WebAclRuleArray) ToWebAclRuleArrayOutput

func (i WebAclRuleArray) ToWebAclRuleArrayOutput() WebAclRuleArrayOutput

func (WebAclRuleArray) ToWebAclRuleArrayOutputWithContext

func (i WebAclRuleArray) ToWebAclRuleArrayOutputWithContext(ctx context.Context) WebAclRuleArrayOutput

type WebAclRuleArrayInput

type WebAclRuleArrayInput interface {
	pulumi.Input

	ToWebAclRuleArrayOutput() WebAclRuleArrayOutput
	ToWebAclRuleArrayOutputWithContext(context.Context) WebAclRuleArrayOutput
}

WebAclRuleArrayInput is an input type that accepts WebAclRuleArray and WebAclRuleArrayOutput values. You can construct a concrete instance of `WebAclRuleArrayInput` via:

WebAclRuleArray{ WebAclRuleArgs{...} }

type WebAclRuleArrayOutput

type WebAclRuleArrayOutput struct{ *pulumi.OutputState }

func (WebAclRuleArrayOutput) ElementType

func (WebAclRuleArrayOutput) ElementType() reflect.Type

func (WebAclRuleArrayOutput) Index

func (WebAclRuleArrayOutput) ToWebAclRuleArrayOutput

func (o WebAclRuleArrayOutput) ToWebAclRuleArrayOutput() WebAclRuleArrayOutput

func (WebAclRuleArrayOutput) ToWebAclRuleArrayOutputWithContext

func (o WebAclRuleArrayOutput) ToWebAclRuleArrayOutputWithContext(ctx context.Context) WebAclRuleArrayOutput

type WebAclRuleInput

type WebAclRuleInput interface {
	pulumi.Input

	ToWebAclRuleOutput() WebAclRuleOutput
	ToWebAclRuleOutputWithContext(context.Context) WebAclRuleOutput
}

WebAclRuleInput is an input type that accepts WebAclRuleArgs and WebAclRuleOutput values. You can construct a concrete instance of `WebAclRuleInput` via:

WebAclRuleArgs{...}

type WebAclRuleOutput

type WebAclRuleOutput struct{ *pulumi.OutputState }

func (WebAclRuleOutput) Action

The action that CloudFront or AWS WAF takes when a web request matches the conditions in the rule. Not used if `type` is `GROUP`.

func (WebAclRuleOutput) ElementType

func (WebAclRuleOutput) ElementType() reflect.Type

func (WebAclRuleOutput) OverrideAction

Override the action that a group requests CloudFront or AWS WAF takes when a web request matches the conditions in the rule. Only used if `type` is `GROUP`.

func (WebAclRuleOutput) Priority

func (o WebAclRuleOutput) Priority() pulumi.IntOutput

Specifies the order in which the rules in a WebACL are evaluated. Rules with a lower value are evaluated before rules with a higher value.

func (WebAclRuleOutput) RuleId

ID of the associated WAF (Global) rule (e.g. `waf.Rule`). WAF (Regional) rules cannot be used.

func (WebAclRuleOutput) ToWebAclRuleOutput

func (o WebAclRuleOutput) ToWebAclRuleOutput() WebAclRuleOutput

func (WebAclRuleOutput) ToWebAclRuleOutputWithContext

func (o WebAclRuleOutput) ToWebAclRuleOutputWithContext(ctx context.Context) WebAclRuleOutput

func (WebAclRuleOutput) Type

The rule type, either `REGULAR`, as defined by Rule(http://docs.aws.amazon.com/waf/latest/APIReference/API_Rule.html), `RATE_BASED`, as defined by RateBasedRule(http://docs.aws.amazon.com/waf/latest/APIReference/API_RateBasedRule.html), or `GROUP`, as defined by RuleGroup(https://docs.aws.amazon.com/waf/latest/APIReference/API_RuleGroup.html). The default is REGULAR. If you add a RATE_BASED rule, you need to set `type` as `RATE_BASED`. If you add a GROUP rule, you need to set `type` as `GROUP`.

type WebAclRuleOverrideAction

type WebAclRuleOverrideAction struct {
	// The rule type, either `REGULAR`, as defined by [Rule](http://docs.aws.amazon.com/waf/latest/APIReference/API_Rule.html), `RATE_BASED`, as defined by [RateBasedRule](http://docs.aws.amazon.com/waf/latest/APIReference/API_RateBasedRule.html), or `GROUP`, as defined by [RuleGroup](https://docs.aws.amazon.com/waf/latest/APIReference/API_RuleGroup.html). The default is REGULAR. If you add a RATE_BASED rule, you need to set `type` as `RATE_BASED`. If you add a GROUP rule, you need to set `type` as `GROUP`.
	Type string `pulumi:"type"`
}

type WebAclRuleOverrideActionArgs

type WebAclRuleOverrideActionArgs struct {
	// The rule type, either `REGULAR`, as defined by [Rule](http://docs.aws.amazon.com/waf/latest/APIReference/API_Rule.html), `RATE_BASED`, as defined by [RateBasedRule](http://docs.aws.amazon.com/waf/latest/APIReference/API_RateBasedRule.html), or `GROUP`, as defined by [RuleGroup](https://docs.aws.amazon.com/waf/latest/APIReference/API_RuleGroup.html). The default is REGULAR. If you add a RATE_BASED rule, you need to set `type` as `RATE_BASED`. If you add a GROUP rule, you need to set `type` as `GROUP`.
	Type pulumi.StringInput `pulumi:"type"`
}

func (WebAclRuleOverrideActionArgs) ElementType

func (WebAclRuleOverrideActionArgs) ToWebAclRuleOverrideActionOutput

func (i WebAclRuleOverrideActionArgs) ToWebAclRuleOverrideActionOutput() WebAclRuleOverrideActionOutput

func (WebAclRuleOverrideActionArgs) ToWebAclRuleOverrideActionOutputWithContext

func (i WebAclRuleOverrideActionArgs) ToWebAclRuleOverrideActionOutputWithContext(ctx context.Context) WebAclRuleOverrideActionOutput

func (WebAclRuleOverrideActionArgs) ToWebAclRuleOverrideActionPtrOutput

func (i WebAclRuleOverrideActionArgs) ToWebAclRuleOverrideActionPtrOutput() WebAclRuleOverrideActionPtrOutput

func (WebAclRuleOverrideActionArgs) ToWebAclRuleOverrideActionPtrOutputWithContext

func (i WebAclRuleOverrideActionArgs) ToWebAclRuleOverrideActionPtrOutputWithContext(ctx context.Context) WebAclRuleOverrideActionPtrOutput

type WebAclRuleOverrideActionInput

type WebAclRuleOverrideActionInput interface {
	pulumi.Input

	ToWebAclRuleOverrideActionOutput() WebAclRuleOverrideActionOutput
	ToWebAclRuleOverrideActionOutputWithContext(context.Context) WebAclRuleOverrideActionOutput
}

WebAclRuleOverrideActionInput is an input type that accepts WebAclRuleOverrideActionArgs and WebAclRuleOverrideActionOutput values. You can construct a concrete instance of `WebAclRuleOverrideActionInput` via:

WebAclRuleOverrideActionArgs{...}

type WebAclRuleOverrideActionOutput

type WebAclRuleOverrideActionOutput struct{ *pulumi.OutputState }

func (WebAclRuleOverrideActionOutput) ElementType

func (WebAclRuleOverrideActionOutput) ToWebAclRuleOverrideActionOutput

func (o WebAclRuleOverrideActionOutput) ToWebAclRuleOverrideActionOutput() WebAclRuleOverrideActionOutput

func (WebAclRuleOverrideActionOutput) ToWebAclRuleOverrideActionOutputWithContext

func (o WebAclRuleOverrideActionOutput) ToWebAclRuleOverrideActionOutputWithContext(ctx context.Context) WebAclRuleOverrideActionOutput

func (WebAclRuleOverrideActionOutput) ToWebAclRuleOverrideActionPtrOutput

func (o WebAclRuleOverrideActionOutput) ToWebAclRuleOverrideActionPtrOutput() WebAclRuleOverrideActionPtrOutput

func (WebAclRuleOverrideActionOutput) ToWebAclRuleOverrideActionPtrOutputWithContext

func (o WebAclRuleOverrideActionOutput) ToWebAclRuleOverrideActionPtrOutputWithContext(ctx context.Context) WebAclRuleOverrideActionPtrOutput

func (WebAclRuleOverrideActionOutput) Type

The rule type, either `REGULAR`, as defined by Rule(http://docs.aws.amazon.com/waf/latest/APIReference/API_Rule.html), `RATE_BASED`, as defined by RateBasedRule(http://docs.aws.amazon.com/waf/latest/APIReference/API_RateBasedRule.html), or `GROUP`, as defined by RuleGroup(https://docs.aws.amazon.com/waf/latest/APIReference/API_RuleGroup.html). The default is REGULAR. If you add a RATE_BASED rule, you need to set `type` as `RATE_BASED`. If you add a GROUP rule, you need to set `type` as `GROUP`.

type WebAclRuleOverrideActionPtrInput

type WebAclRuleOverrideActionPtrInput interface {
	pulumi.Input

	ToWebAclRuleOverrideActionPtrOutput() WebAclRuleOverrideActionPtrOutput
	ToWebAclRuleOverrideActionPtrOutputWithContext(context.Context) WebAclRuleOverrideActionPtrOutput
}

WebAclRuleOverrideActionPtrInput is an input type that accepts WebAclRuleOverrideActionArgs, WebAclRuleOverrideActionPtr and WebAclRuleOverrideActionPtrOutput values. You can construct a concrete instance of `WebAclRuleOverrideActionPtrInput` via:

        WebAclRuleOverrideActionArgs{...}

or:

        nil

type WebAclRuleOverrideActionPtrOutput

type WebAclRuleOverrideActionPtrOutput struct{ *pulumi.OutputState }

func (WebAclRuleOverrideActionPtrOutput) Elem

func (WebAclRuleOverrideActionPtrOutput) ElementType

func (WebAclRuleOverrideActionPtrOutput) ToWebAclRuleOverrideActionPtrOutput

func (o WebAclRuleOverrideActionPtrOutput) ToWebAclRuleOverrideActionPtrOutput() WebAclRuleOverrideActionPtrOutput

func (WebAclRuleOverrideActionPtrOutput) ToWebAclRuleOverrideActionPtrOutputWithContext

func (o WebAclRuleOverrideActionPtrOutput) ToWebAclRuleOverrideActionPtrOutputWithContext(ctx context.Context) WebAclRuleOverrideActionPtrOutput

func (WebAclRuleOverrideActionPtrOutput) Type

The rule type, either `REGULAR`, as defined by Rule(http://docs.aws.amazon.com/waf/latest/APIReference/API_Rule.html), `RATE_BASED`, as defined by RateBasedRule(http://docs.aws.amazon.com/waf/latest/APIReference/API_RateBasedRule.html), or `GROUP`, as defined by RuleGroup(https://docs.aws.amazon.com/waf/latest/APIReference/API_RuleGroup.html). The default is REGULAR. If you add a RATE_BASED rule, you need to set `type` as `RATE_BASED`. If you add a GROUP rule, you need to set `type` as `GROUP`.

type WebAclState

type WebAclState struct {
	// The ARN of the WAF WebACL.
	Arn pulumi.StringPtrInput
	// Configuration block with action that you want AWS WAF to take when a request doesn't match the criteria in any of the rules that are associated with the web ACL. Detailed below.
	DefaultAction WebAclDefaultActionPtrInput
	// Configuration block to enable WAF logging. Detailed below.
	LoggingConfiguration WebAclLoggingConfigurationPtrInput
	// The name or description for the Amazon CloudWatch metric of this web ACL.
	MetricName pulumi.StringPtrInput
	// The name or description of the web ACL.
	Name pulumi.StringPtrInput
	// Configuration blocks containing rules to associate with the web ACL and the settings for each rule. Detailed below.
	Rules WebAclRuleArrayInput
	// Key-value map of resource tags
	Tags pulumi.StringMapInput
}

func (WebAclState) ElementType

func (WebAclState) ElementType() reflect.Type

type XssMatchSet

type XssMatchSet struct {
	pulumi.CustomResourceState

	// Amazon Resource Name (ARN)
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The name or description of the SizeConstraintSet.
	Name pulumi.StringOutput `pulumi:"name"`
	// The parts of web requests that you want to inspect for cross-site scripting attacks.
	XssMatchTuples XssMatchSetXssMatchTupleArrayOutput `pulumi:"xssMatchTuples"`
}

Provides a WAF XSS Match Set Resource

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v3/go/aws/waf"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := waf.NewXssMatchSet(ctx, "xssMatchSet", &waf.XssMatchSetArgs{
			XssMatchTuples: waf.XssMatchSetXssMatchTupleArray{
				&waf.XssMatchSetXssMatchTupleArgs{
					FieldToMatch: &waf.XssMatchSetXssMatchTupleFieldToMatchArgs{
						Type: pulumi.String("URI"),
					},
					TextTransformation: pulumi.String("NONE"),
				},
				&waf.XssMatchSetXssMatchTupleArgs{
					FieldToMatch: &waf.XssMatchSetXssMatchTupleFieldToMatchArgs{
						Type: pulumi.String("QUERY_STRING"),
					},
					TextTransformation: pulumi.String("NONE"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

WAF XSS Match Set can be imported using their ID, e.g.

```sh

$ pulumi import aws:waf/xssMatchSet:XssMatchSet example a1b2c3d4-d5f6-7777-8888-9999aaaabbbbcccc

```

func GetXssMatchSet

func GetXssMatchSet(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *XssMatchSetState, opts ...pulumi.ResourceOption) (*XssMatchSet, error)

GetXssMatchSet gets an existing XssMatchSet resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewXssMatchSet

func NewXssMatchSet(ctx *pulumi.Context,
	name string, args *XssMatchSetArgs, opts ...pulumi.ResourceOption) (*XssMatchSet, error)

NewXssMatchSet registers a new resource with the given unique name, arguments, and options.

func (*XssMatchSet) ElementType added in v3.13.0

func (*XssMatchSet) ElementType() reflect.Type

func (*XssMatchSet) ToXssMatchSetOutput added in v3.13.0

func (i *XssMatchSet) ToXssMatchSetOutput() XssMatchSetOutput

func (*XssMatchSet) ToXssMatchSetOutputWithContext added in v3.13.0

func (i *XssMatchSet) ToXssMatchSetOutputWithContext(ctx context.Context) XssMatchSetOutput

func (*XssMatchSet) ToXssMatchSetPtrOutput added in v3.25.0

func (i *XssMatchSet) ToXssMatchSetPtrOutput() XssMatchSetPtrOutput

func (*XssMatchSet) ToXssMatchSetPtrOutputWithContext added in v3.25.0

func (i *XssMatchSet) ToXssMatchSetPtrOutputWithContext(ctx context.Context) XssMatchSetPtrOutput

type XssMatchSetArgs

type XssMatchSetArgs struct {
	// The name or description of the SizeConstraintSet.
	Name pulumi.StringPtrInput
	// The parts of web requests that you want to inspect for cross-site scripting attacks.
	XssMatchTuples XssMatchSetXssMatchTupleArrayInput
}

The set of arguments for constructing a XssMatchSet resource.

func (XssMatchSetArgs) ElementType

func (XssMatchSetArgs) ElementType() reflect.Type

type XssMatchSetArray added in v3.25.0

type XssMatchSetArray []XssMatchSetInput

func (XssMatchSetArray) ElementType added in v3.25.0

func (XssMatchSetArray) ElementType() reflect.Type

func (XssMatchSetArray) ToXssMatchSetArrayOutput added in v3.25.0

func (i XssMatchSetArray) ToXssMatchSetArrayOutput() XssMatchSetArrayOutput

func (XssMatchSetArray) ToXssMatchSetArrayOutputWithContext added in v3.25.0

func (i XssMatchSetArray) ToXssMatchSetArrayOutputWithContext(ctx context.Context) XssMatchSetArrayOutput

type XssMatchSetArrayInput added in v3.25.0

type XssMatchSetArrayInput interface {
	pulumi.Input

	ToXssMatchSetArrayOutput() XssMatchSetArrayOutput
	ToXssMatchSetArrayOutputWithContext(context.Context) XssMatchSetArrayOutput
}

XssMatchSetArrayInput is an input type that accepts XssMatchSetArray and XssMatchSetArrayOutput values. You can construct a concrete instance of `XssMatchSetArrayInput` via:

XssMatchSetArray{ XssMatchSetArgs{...} }

type XssMatchSetArrayOutput added in v3.25.0

type XssMatchSetArrayOutput struct{ *pulumi.OutputState }

func (XssMatchSetArrayOutput) ElementType added in v3.25.0

func (XssMatchSetArrayOutput) ElementType() reflect.Type

func (XssMatchSetArrayOutput) Index added in v3.25.0

func (XssMatchSetArrayOutput) ToXssMatchSetArrayOutput added in v3.25.0

func (o XssMatchSetArrayOutput) ToXssMatchSetArrayOutput() XssMatchSetArrayOutput

func (XssMatchSetArrayOutput) ToXssMatchSetArrayOutputWithContext added in v3.25.0

func (o XssMatchSetArrayOutput) ToXssMatchSetArrayOutputWithContext(ctx context.Context) XssMatchSetArrayOutput

type XssMatchSetInput added in v3.13.0

type XssMatchSetInput interface {
	pulumi.Input

	ToXssMatchSetOutput() XssMatchSetOutput
	ToXssMatchSetOutputWithContext(ctx context.Context) XssMatchSetOutput
}

type XssMatchSetMap added in v3.25.0

type XssMatchSetMap map[string]XssMatchSetInput

func (XssMatchSetMap) ElementType added in v3.25.0

func (XssMatchSetMap) ElementType() reflect.Type

func (XssMatchSetMap) ToXssMatchSetMapOutput added in v3.25.0

func (i XssMatchSetMap) ToXssMatchSetMapOutput() XssMatchSetMapOutput

func (XssMatchSetMap) ToXssMatchSetMapOutputWithContext added in v3.25.0

func (i XssMatchSetMap) ToXssMatchSetMapOutputWithContext(ctx context.Context) XssMatchSetMapOutput

type XssMatchSetMapInput added in v3.25.0

type XssMatchSetMapInput interface {
	pulumi.Input

	ToXssMatchSetMapOutput() XssMatchSetMapOutput
	ToXssMatchSetMapOutputWithContext(context.Context) XssMatchSetMapOutput
}

XssMatchSetMapInput is an input type that accepts XssMatchSetMap and XssMatchSetMapOutput values. You can construct a concrete instance of `XssMatchSetMapInput` via:

XssMatchSetMap{ "key": XssMatchSetArgs{...} }

type XssMatchSetMapOutput added in v3.25.0

type XssMatchSetMapOutput struct{ *pulumi.OutputState }

func (XssMatchSetMapOutput) ElementType added in v3.25.0

func (XssMatchSetMapOutput) ElementType() reflect.Type

func (XssMatchSetMapOutput) MapIndex added in v3.25.0

func (XssMatchSetMapOutput) ToXssMatchSetMapOutput added in v3.25.0

func (o XssMatchSetMapOutput) ToXssMatchSetMapOutput() XssMatchSetMapOutput

func (XssMatchSetMapOutput) ToXssMatchSetMapOutputWithContext added in v3.25.0

func (o XssMatchSetMapOutput) ToXssMatchSetMapOutputWithContext(ctx context.Context) XssMatchSetMapOutput

type XssMatchSetOutput added in v3.13.0

type XssMatchSetOutput struct {
	*pulumi.OutputState
}

func (XssMatchSetOutput) ElementType added in v3.13.0

func (XssMatchSetOutput) ElementType() reflect.Type

func (XssMatchSetOutput) ToXssMatchSetOutput added in v3.13.0

func (o XssMatchSetOutput) ToXssMatchSetOutput() XssMatchSetOutput

func (XssMatchSetOutput) ToXssMatchSetOutputWithContext added in v3.13.0

func (o XssMatchSetOutput) ToXssMatchSetOutputWithContext(ctx context.Context) XssMatchSetOutput

func (XssMatchSetOutput) ToXssMatchSetPtrOutput added in v3.25.0

func (o XssMatchSetOutput) ToXssMatchSetPtrOutput() XssMatchSetPtrOutput

func (XssMatchSetOutput) ToXssMatchSetPtrOutputWithContext added in v3.25.0

func (o XssMatchSetOutput) ToXssMatchSetPtrOutputWithContext(ctx context.Context) XssMatchSetPtrOutput

type XssMatchSetPtrInput added in v3.25.0

type XssMatchSetPtrInput interface {
	pulumi.Input

	ToXssMatchSetPtrOutput() XssMatchSetPtrOutput
	ToXssMatchSetPtrOutputWithContext(ctx context.Context) XssMatchSetPtrOutput
}

type XssMatchSetPtrOutput added in v3.25.0

type XssMatchSetPtrOutput struct {
	*pulumi.OutputState
}

func (XssMatchSetPtrOutput) ElementType added in v3.25.0

func (XssMatchSetPtrOutput) ElementType() reflect.Type

func (XssMatchSetPtrOutput) ToXssMatchSetPtrOutput added in v3.25.0

func (o XssMatchSetPtrOutput) ToXssMatchSetPtrOutput() XssMatchSetPtrOutput

func (XssMatchSetPtrOutput) ToXssMatchSetPtrOutputWithContext added in v3.25.0

func (o XssMatchSetPtrOutput) ToXssMatchSetPtrOutputWithContext(ctx context.Context) XssMatchSetPtrOutput

type XssMatchSetState

type XssMatchSetState struct {
	// Amazon Resource Name (ARN)
	Arn pulumi.StringPtrInput
	// The name or description of the SizeConstraintSet.
	Name pulumi.StringPtrInput
	// The parts of web requests that you want to inspect for cross-site scripting attacks.
	XssMatchTuples XssMatchSetXssMatchTupleArrayInput
}

func (XssMatchSetState) ElementType

func (XssMatchSetState) ElementType() reflect.Type

type XssMatchSetXssMatchTuple

type XssMatchSetXssMatchTuple struct {
	// Specifies where in a web request to look for cross-site scripting attacks.
	FieldToMatch XssMatchSetXssMatchTupleFieldToMatch `pulumi:"fieldToMatch"`
	// Text transformations used to eliminate 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 `targetString` before inspecting a request for a match.
	// e.g. `CMD_LINE`, `HTML_ENTITY_DECODE` or `NONE`.
	// See [docs](http://docs.aws.amazon.com/waf/latest/APIReference/API_XssMatchTuple.html#WAF-Type-XssMatchTuple-TextTransformation)
	// for all supported values.
	TextTransformation string `pulumi:"textTransformation"`
}

type XssMatchSetXssMatchTupleArgs

type XssMatchSetXssMatchTupleArgs struct {
	// Specifies where in a web request to look for cross-site scripting attacks.
	FieldToMatch XssMatchSetXssMatchTupleFieldToMatchInput `pulumi:"fieldToMatch"`
	// Text transformations used to eliminate 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 `targetString` before inspecting a request for a match.
	// e.g. `CMD_LINE`, `HTML_ENTITY_DECODE` or `NONE`.
	// See [docs](http://docs.aws.amazon.com/waf/latest/APIReference/API_XssMatchTuple.html#WAF-Type-XssMatchTuple-TextTransformation)
	// for all supported values.
	TextTransformation pulumi.StringInput `pulumi:"textTransformation"`
}

func (XssMatchSetXssMatchTupleArgs) ElementType

func (XssMatchSetXssMatchTupleArgs) ToXssMatchSetXssMatchTupleOutput

func (i XssMatchSetXssMatchTupleArgs) ToXssMatchSetXssMatchTupleOutput() XssMatchSetXssMatchTupleOutput

func (XssMatchSetXssMatchTupleArgs) ToXssMatchSetXssMatchTupleOutputWithContext

func (i XssMatchSetXssMatchTupleArgs) ToXssMatchSetXssMatchTupleOutputWithContext(ctx context.Context) XssMatchSetXssMatchTupleOutput

type XssMatchSetXssMatchTupleArray

type XssMatchSetXssMatchTupleArray []XssMatchSetXssMatchTupleInput

func (XssMatchSetXssMatchTupleArray) ElementType

func (XssMatchSetXssMatchTupleArray) ToXssMatchSetXssMatchTupleArrayOutput

func (i XssMatchSetXssMatchTupleArray) ToXssMatchSetXssMatchTupleArrayOutput() XssMatchSetXssMatchTupleArrayOutput

func (XssMatchSetXssMatchTupleArray) ToXssMatchSetXssMatchTupleArrayOutputWithContext

func (i XssMatchSetXssMatchTupleArray) ToXssMatchSetXssMatchTupleArrayOutputWithContext(ctx context.Context) XssMatchSetXssMatchTupleArrayOutput

type XssMatchSetXssMatchTupleArrayInput

type XssMatchSetXssMatchTupleArrayInput interface {
	pulumi.Input

	ToXssMatchSetXssMatchTupleArrayOutput() XssMatchSetXssMatchTupleArrayOutput
	ToXssMatchSetXssMatchTupleArrayOutputWithContext(context.Context) XssMatchSetXssMatchTupleArrayOutput
}

XssMatchSetXssMatchTupleArrayInput is an input type that accepts XssMatchSetXssMatchTupleArray and XssMatchSetXssMatchTupleArrayOutput values. You can construct a concrete instance of `XssMatchSetXssMatchTupleArrayInput` via:

XssMatchSetXssMatchTupleArray{ XssMatchSetXssMatchTupleArgs{...} }

type XssMatchSetXssMatchTupleArrayOutput

type XssMatchSetXssMatchTupleArrayOutput struct{ *pulumi.OutputState }

func (XssMatchSetXssMatchTupleArrayOutput) ElementType

func (XssMatchSetXssMatchTupleArrayOutput) Index

func (XssMatchSetXssMatchTupleArrayOutput) ToXssMatchSetXssMatchTupleArrayOutput

func (o XssMatchSetXssMatchTupleArrayOutput) ToXssMatchSetXssMatchTupleArrayOutput() XssMatchSetXssMatchTupleArrayOutput

func (XssMatchSetXssMatchTupleArrayOutput) ToXssMatchSetXssMatchTupleArrayOutputWithContext

func (o XssMatchSetXssMatchTupleArrayOutput) ToXssMatchSetXssMatchTupleArrayOutputWithContext(ctx context.Context) XssMatchSetXssMatchTupleArrayOutput

type XssMatchSetXssMatchTupleFieldToMatch

type XssMatchSetXssMatchTupleFieldToMatch struct {
	// When `type` is `HEADER`, enter the name of the header that you want to search, e.g. `User-Agent` or `Referer`.
	// If `type` is any other value, omit this field.
	Data *string `pulumi:"data"`
	// The part of the web request that you want AWS WAF to search for a specified string.
	// e.g. `HEADER`, `METHOD` or `BODY`.
	// See [docs](http://docs.aws.amazon.com/waf/latest/APIReference/API_FieldToMatch.html)
	// for all supported values.
	Type string `pulumi:"type"`
}

type XssMatchSetXssMatchTupleFieldToMatchArgs

type XssMatchSetXssMatchTupleFieldToMatchArgs struct {
	// When `type` is `HEADER`, enter the name of the header that you want to search, e.g. `User-Agent` or `Referer`.
	// If `type` is any other value, omit this field.
	Data pulumi.StringPtrInput `pulumi:"data"`
	// The part of the web request that you want AWS WAF to search for a specified string.
	// e.g. `HEADER`, `METHOD` or `BODY`.
	// See [docs](http://docs.aws.amazon.com/waf/latest/APIReference/API_FieldToMatch.html)
	// for all supported values.
	Type pulumi.StringInput `pulumi:"type"`
}

func (XssMatchSetXssMatchTupleFieldToMatchArgs) ElementType

func (XssMatchSetXssMatchTupleFieldToMatchArgs) ToXssMatchSetXssMatchTupleFieldToMatchOutput

func (i XssMatchSetXssMatchTupleFieldToMatchArgs) ToXssMatchSetXssMatchTupleFieldToMatchOutput() XssMatchSetXssMatchTupleFieldToMatchOutput

func (XssMatchSetXssMatchTupleFieldToMatchArgs) ToXssMatchSetXssMatchTupleFieldToMatchOutputWithContext

func (i XssMatchSetXssMatchTupleFieldToMatchArgs) ToXssMatchSetXssMatchTupleFieldToMatchOutputWithContext(ctx context.Context) XssMatchSetXssMatchTupleFieldToMatchOutput

type XssMatchSetXssMatchTupleFieldToMatchInput

type XssMatchSetXssMatchTupleFieldToMatchInput interface {
	pulumi.Input

	ToXssMatchSetXssMatchTupleFieldToMatchOutput() XssMatchSetXssMatchTupleFieldToMatchOutput
	ToXssMatchSetXssMatchTupleFieldToMatchOutputWithContext(context.Context) XssMatchSetXssMatchTupleFieldToMatchOutput
}

XssMatchSetXssMatchTupleFieldToMatchInput is an input type that accepts XssMatchSetXssMatchTupleFieldToMatchArgs and XssMatchSetXssMatchTupleFieldToMatchOutput values. You can construct a concrete instance of `XssMatchSetXssMatchTupleFieldToMatchInput` via:

XssMatchSetXssMatchTupleFieldToMatchArgs{...}

type XssMatchSetXssMatchTupleFieldToMatchOutput

type XssMatchSetXssMatchTupleFieldToMatchOutput struct{ *pulumi.OutputState }

func (XssMatchSetXssMatchTupleFieldToMatchOutput) Data

When `type` is `HEADER`, enter the name of the header that you want to search, e.g. `User-Agent` or `Referer`. If `type` is any other value, omit this field.

func (XssMatchSetXssMatchTupleFieldToMatchOutput) ElementType

func (XssMatchSetXssMatchTupleFieldToMatchOutput) ToXssMatchSetXssMatchTupleFieldToMatchOutput

func (o XssMatchSetXssMatchTupleFieldToMatchOutput) ToXssMatchSetXssMatchTupleFieldToMatchOutput() XssMatchSetXssMatchTupleFieldToMatchOutput

func (XssMatchSetXssMatchTupleFieldToMatchOutput) ToXssMatchSetXssMatchTupleFieldToMatchOutputWithContext

func (o XssMatchSetXssMatchTupleFieldToMatchOutput) ToXssMatchSetXssMatchTupleFieldToMatchOutputWithContext(ctx context.Context) XssMatchSetXssMatchTupleFieldToMatchOutput

func (XssMatchSetXssMatchTupleFieldToMatchOutput) Type

The part of the web request that you want AWS WAF to search for a specified string. e.g. `HEADER`, `METHOD` or `BODY`. See [docs](http://docs.aws.amazon.com/waf/latest/APIReference/API_FieldToMatch.html) for all supported values.

type XssMatchSetXssMatchTupleInput

type XssMatchSetXssMatchTupleInput interface {
	pulumi.Input

	ToXssMatchSetXssMatchTupleOutput() XssMatchSetXssMatchTupleOutput
	ToXssMatchSetXssMatchTupleOutputWithContext(context.Context) XssMatchSetXssMatchTupleOutput
}

XssMatchSetXssMatchTupleInput is an input type that accepts XssMatchSetXssMatchTupleArgs and XssMatchSetXssMatchTupleOutput values. You can construct a concrete instance of `XssMatchSetXssMatchTupleInput` via:

XssMatchSetXssMatchTupleArgs{...}

type XssMatchSetXssMatchTupleOutput

type XssMatchSetXssMatchTupleOutput struct{ *pulumi.OutputState }

func (XssMatchSetXssMatchTupleOutput) ElementType

func (XssMatchSetXssMatchTupleOutput) FieldToMatch

Specifies where in a web request to look for cross-site scripting attacks.

func (XssMatchSetXssMatchTupleOutput) TextTransformation

func (o XssMatchSetXssMatchTupleOutput) TextTransformation() pulumi.StringOutput

Text transformations used to eliminate 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 `targetString` before inspecting a request for a match. e.g. `CMD_LINE`, `HTML_ENTITY_DECODE` or `NONE`. See [docs](http://docs.aws.amazon.com/waf/latest/APIReference/API_XssMatchTuple.html#WAF-Type-XssMatchTuple-TextTransformation) for all supported values.

func (XssMatchSetXssMatchTupleOutput) ToXssMatchSetXssMatchTupleOutput

func (o XssMatchSetXssMatchTupleOutput) ToXssMatchSetXssMatchTupleOutput() XssMatchSetXssMatchTupleOutput

func (XssMatchSetXssMatchTupleOutput) ToXssMatchSetXssMatchTupleOutputWithContext

func (o XssMatchSetXssMatchTupleOutput) ToXssMatchSetXssMatchTupleOutputWithContext(ctx context.Context) XssMatchSetXssMatchTupleOutput

Jump to

Keyboard shortcuts

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