waf

package
v4.38.1 Latest Latest
Warning

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

Go to latest
Published: Mar 10, 2022 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/v4/go/aws/waf"
"github.com/pulumi/pulumi/sdk/v3/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

func (*ByteMatchSet) ElementType() reflect.Type

func (*ByteMatchSet) ToByteMatchSetOutput

func (i *ByteMatchSet) ToByteMatchSetOutput() ByteMatchSetOutput

func (*ByteMatchSet) ToByteMatchSetOutputWithContext

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

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

type ByteMatchSetArray []ByteMatchSetInput

func (ByteMatchSetArray) ElementType

func (ByteMatchSetArray) ElementType() reflect.Type

func (ByteMatchSetArray) ToByteMatchSetArrayOutput

func (i ByteMatchSetArray) ToByteMatchSetArrayOutput() ByteMatchSetArrayOutput

func (ByteMatchSetArray) ToByteMatchSetArrayOutputWithContext

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

type ByteMatchSetArrayInput

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

type ByteMatchSetArrayOutput struct{ *pulumi.OutputState }

func (ByteMatchSetArrayOutput) ElementType

func (ByteMatchSetArrayOutput) ElementType() reflect.Type

func (ByteMatchSetArrayOutput) Index

func (ByteMatchSetArrayOutput) ToByteMatchSetArrayOutput

func (o ByteMatchSetArrayOutput) ToByteMatchSetArrayOutput() ByteMatchSetArrayOutput

func (ByteMatchSetArrayOutput) ToByteMatchSetArrayOutputWithContext

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

type ByteMatchSetInput interface {
	pulumi.Input

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

type ByteMatchSetMap

type ByteMatchSetMap map[string]ByteMatchSetInput

func (ByteMatchSetMap) ElementType

func (ByteMatchSetMap) ElementType() reflect.Type

func (ByteMatchSetMap) ToByteMatchSetMapOutput

func (i ByteMatchSetMap) ToByteMatchSetMapOutput() ByteMatchSetMapOutput

func (ByteMatchSetMap) ToByteMatchSetMapOutputWithContext

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

type ByteMatchSetMapInput

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

type ByteMatchSetMapOutput struct{ *pulumi.OutputState }

func (ByteMatchSetMapOutput) ElementType

func (ByteMatchSetMapOutput) ElementType() reflect.Type

func (ByteMatchSetMapOutput) MapIndex

func (ByteMatchSetMapOutput) ToByteMatchSetMapOutput

func (o ByteMatchSetMapOutput) ToByteMatchSetMapOutput() ByteMatchSetMapOutput

func (ByteMatchSetMapOutput) ToByteMatchSetMapOutputWithContext

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

type ByteMatchSetOutput

type ByteMatchSetOutput struct{ *pulumi.OutputState }

func (ByteMatchSetOutput) ElementType

func (ByteMatchSetOutput) ElementType() reflect.Type

func (ByteMatchSetOutput) ToByteMatchSetOutput

func (o ByteMatchSetOutput) ToByteMatchSetOutput() ByteMatchSetOutput

func (ByteMatchSetOutput) ToByteMatchSetOutputWithContext

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

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/v4/go/aws/waf"
"github.com/pulumi/pulumi/sdk/v3/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

func (*GeoMatchSet) ElementType() reflect.Type

func (*GeoMatchSet) ToGeoMatchSetOutput

func (i *GeoMatchSet) ToGeoMatchSetOutput() GeoMatchSetOutput

func (*GeoMatchSet) ToGeoMatchSetOutputWithContext

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

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

type GeoMatchSetArray []GeoMatchSetInput

func (GeoMatchSetArray) ElementType

func (GeoMatchSetArray) ElementType() reflect.Type

func (GeoMatchSetArray) ToGeoMatchSetArrayOutput

func (i GeoMatchSetArray) ToGeoMatchSetArrayOutput() GeoMatchSetArrayOutput

func (GeoMatchSetArray) ToGeoMatchSetArrayOutputWithContext

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

type GeoMatchSetArrayInput

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

type GeoMatchSetArrayOutput struct{ *pulumi.OutputState }

func (GeoMatchSetArrayOutput) ElementType

func (GeoMatchSetArrayOutput) ElementType() reflect.Type

func (GeoMatchSetArrayOutput) Index

func (GeoMatchSetArrayOutput) ToGeoMatchSetArrayOutput

func (o GeoMatchSetArrayOutput) ToGeoMatchSetArrayOutput() GeoMatchSetArrayOutput

func (GeoMatchSetArrayOutput) ToGeoMatchSetArrayOutputWithContext

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

type GeoMatchSetInput interface {
	pulumi.Input

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

type GeoMatchSetMap

type GeoMatchSetMap map[string]GeoMatchSetInput

func (GeoMatchSetMap) ElementType

func (GeoMatchSetMap) ElementType() reflect.Type

func (GeoMatchSetMap) ToGeoMatchSetMapOutput

func (i GeoMatchSetMap) ToGeoMatchSetMapOutput() GeoMatchSetMapOutput

func (GeoMatchSetMap) ToGeoMatchSetMapOutputWithContext

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

type GeoMatchSetMapInput

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

type GeoMatchSetMapOutput struct{ *pulumi.OutputState }

func (GeoMatchSetMapOutput) ElementType

func (GeoMatchSetMapOutput) ElementType() reflect.Type

func (GeoMatchSetMapOutput) MapIndex

func (GeoMatchSetMapOutput) ToGeoMatchSetMapOutput

func (o GeoMatchSetMapOutput) ToGeoMatchSetMapOutput() GeoMatchSetMapOutput

func (GeoMatchSetMapOutput) ToGeoMatchSetMapOutputWithContext

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

type GeoMatchSetOutput

type GeoMatchSetOutput struct{ *pulumi.OutputState }

func (GeoMatchSetOutput) ElementType

func (GeoMatchSetOutput) ElementType() reflect.Type

func (GeoMatchSetOutput) ToGeoMatchSetOutput

func (o GeoMatchSetOutput) ToGeoMatchSetOutput() GeoMatchSetOutput

func (GeoMatchSetOutput) ToGeoMatchSetOutputWithContext

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

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 GetIpsetOutputArgs added in v4.21.0

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

A collection of arguments for invoking getIpset.

func (GetIpsetOutputArgs) ElementType added in v4.21.0

func (GetIpsetOutputArgs) ElementType() reflect.Type

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/v4/go/aws/waf"
"github.com/pulumi/pulumi/sdk/v3/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 GetIpsetResultOutput added in v4.21.0

type GetIpsetResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getIpset.

func GetIpsetOutput added in v4.21.0

func GetIpsetOutput(ctx *pulumi.Context, args GetIpsetOutputArgs, opts ...pulumi.InvokeOption) GetIpsetResultOutput

func (GetIpsetResultOutput) ElementType added in v4.21.0

func (GetIpsetResultOutput) ElementType() reflect.Type

func (GetIpsetResultOutput) Id added in v4.21.0

The provider-assigned unique ID for this managed resource.

func (GetIpsetResultOutput) Name added in v4.21.0

func (GetIpsetResultOutput) ToGetIpsetResultOutput added in v4.21.0

func (o GetIpsetResultOutput) ToGetIpsetResultOutput() GetIpsetResultOutput

func (GetIpsetResultOutput) ToGetIpsetResultOutputWithContext added in v4.21.0

func (o GetIpsetResultOutput) ToGetIpsetResultOutputWithContext(ctx context.Context) GetIpsetResultOutput

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/v4/go/aws/waf"
"github.com/pulumi/pulumi/sdk/v3/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

func (*IpSet) ElementType() reflect.Type

func (*IpSet) ToIpSetOutput

func (i *IpSet) ToIpSetOutput() IpSetOutput

func (*IpSet) ToIpSetOutputWithContext

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

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

type IpSetArray []IpSetInput

func (IpSetArray) ElementType

func (IpSetArray) ElementType() reflect.Type

func (IpSetArray) ToIpSetArrayOutput

func (i IpSetArray) ToIpSetArrayOutput() IpSetArrayOutput

func (IpSetArray) ToIpSetArrayOutputWithContext

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

type IpSetArrayInput

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

type IpSetArrayOutput struct{ *pulumi.OutputState }

func (IpSetArrayOutput) ElementType

func (IpSetArrayOutput) ElementType() reflect.Type

func (IpSetArrayOutput) Index

func (IpSetArrayOutput) ToIpSetArrayOutput

func (o IpSetArrayOutput) ToIpSetArrayOutput() IpSetArrayOutput

func (IpSetArrayOutput) ToIpSetArrayOutputWithContext

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

type IpSetInput

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 notationE.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 notationE.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 notationE.g., `192.0.2.44/32` or `1111:0000:0000:0000:0000:0000:0000:0000/64`

type IpSetMap

type IpSetMap map[string]IpSetInput

func (IpSetMap) ElementType

func (IpSetMap) ElementType() reflect.Type

func (IpSetMap) ToIpSetMapOutput

func (i IpSetMap) ToIpSetMapOutput() IpSetMapOutput

func (IpSetMap) ToIpSetMapOutputWithContext

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

type IpSetMapInput

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

type IpSetMapOutput struct{ *pulumi.OutputState }

func (IpSetMapOutput) ElementType

func (IpSetMapOutput) ElementType() reflect.Type

func (IpSetMapOutput) MapIndex

func (IpSetMapOutput) ToIpSetMapOutput

func (o IpSetMapOutput) ToIpSetMapOutput() IpSetMapOutput

func (IpSetMapOutput) ToIpSetMapOutputWithContext

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

type IpSetOutput

type IpSetOutput struct{ *pulumi.OutputState }

func (IpSetOutput) ElementType

func (IpSetOutput) ElementType() reflect.Type

func (IpSetOutput) ToIpSetOutput

func (o IpSetOutput) ToIpSetOutput() IpSetOutput

func (IpSetOutput) ToIpSetOutputWithContext

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

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 LookupRateBasedRuleOutputArgs added in v4.21.0

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

A collection of arguments for invoking getRateBasedRule.

func (LookupRateBasedRuleOutputArgs) ElementType added in v4.21.0

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/v4/go/aws/waf"
"github.com/pulumi/pulumi/sdk/v3/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 LookupRateBasedRuleResultOutput added in v4.21.0

type LookupRateBasedRuleResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getRateBasedRule.

func LookupRateBasedRuleOutput added in v4.21.0

func (LookupRateBasedRuleResultOutput) ElementType added in v4.21.0

func (LookupRateBasedRuleResultOutput) Id added in v4.21.0

The provider-assigned unique ID for this managed resource.

func (LookupRateBasedRuleResultOutput) Name added in v4.21.0

func (LookupRateBasedRuleResultOutput) ToLookupRateBasedRuleResultOutput added in v4.21.0

func (o LookupRateBasedRuleResultOutput) ToLookupRateBasedRuleResultOutput() LookupRateBasedRuleResultOutput

func (LookupRateBasedRuleResultOutput) ToLookupRateBasedRuleResultOutputWithContext added in v4.21.0

func (o LookupRateBasedRuleResultOutput) ToLookupRateBasedRuleResultOutputWithContext(ctx context.Context) LookupRateBasedRuleResultOutput

type LookupRuleArgs

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

A collection of arguments for invoking getRule.

type LookupRuleOutputArgs added in v4.21.0

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

A collection of arguments for invoking getRule.

func (LookupRuleOutputArgs) ElementType added in v4.21.0

func (LookupRuleOutputArgs) ElementType() reflect.Type

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/v4/go/aws/waf"
"github.com/pulumi/pulumi/sdk/v3/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 LookupRuleResultOutput added in v4.21.0

type LookupRuleResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getRule.

func LookupRuleOutput added in v4.21.0

func LookupRuleOutput(ctx *pulumi.Context, args LookupRuleOutputArgs, opts ...pulumi.InvokeOption) LookupRuleResultOutput

func (LookupRuleResultOutput) ElementType added in v4.21.0

func (LookupRuleResultOutput) ElementType() reflect.Type

func (LookupRuleResultOutput) Id added in v4.21.0

The provider-assigned unique ID for this managed resource.

func (LookupRuleResultOutput) Name added in v4.21.0

func (LookupRuleResultOutput) ToLookupRuleResultOutput added in v4.21.0

func (o LookupRuleResultOutput) ToLookupRuleResultOutput() LookupRuleResultOutput

func (LookupRuleResultOutput) ToLookupRuleResultOutputWithContext added in v4.21.0

func (o LookupRuleResultOutput) ToLookupRuleResultOutputWithContext(ctx context.Context) LookupRuleResultOutput

type LookupWebAclArgs

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

A collection of arguments for invoking getWebAcl.

type LookupWebAclOutputArgs added in v4.21.0

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

A collection of arguments for invoking getWebAcl.

func (LookupWebAclOutputArgs) ElementType added in v4.21.0

func (LookupWebAclOutputArgs) ElementType() reflect.Type

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/v4/go/aws/waf"
"github.com/pulumi/pulumi/sdk/v3/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 LookupWebAclResultOutput added in v4.21.0

type LookupWebAclResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getWebAcl.

func LookupWebAclOutput added in v4.21.0

func LookupWebAclOutput(ctx *pulumi.Context, args LookupWebAclOutputArgs, opts ...pulumi.InvokeOption) LookupWebAclResultOutput

func (LookupWebAclResultOutput) ElementType added in v4.21.0

func (LookupWebAclResultOutput) ElementType() reflect.Type

func (LookupWebAclResultOutput) Id added in v4.21.0

The provider-assigned unique ID for this managed resource.

func (LookupWebAclResultOutput) Name added in v4.21.0

func (LookupWebAclResultOutput) ToLookupWebAclResultOutput added in v4.21.0

func (o LookupWebAclResultOutput) ToLookupWebAclResultOutput() LookupWebAclResultOutput

func (LookupWebAclResultOutput) ToLookupWebAclResultOutputWithContext added in v4.21.0

func (o LookupWebAclResultOutput) ToLookupWebAclResultOutputWithContext(ctx context.Context) LookupWebAclResultOutput

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. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
}

Provides a WAF Rate Based Rule Resource

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/waf"
"github.com/pulumi/pulumi/sdk/v3/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

func (*RateBasedRule) ElementType() reflect.Type

func (*RateBasedRule) ToRateBasedRuleOutput

func (i *RateBasedRule) ToRateBasedRuleOutput() RateBasedRuleOutput

func (*RateBasedRule) ToRateBasedRuleOutputWithContext

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

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. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a RateBasedRule resource.

func (RateBasedRuleArgs) ElementType

func (RateBasedRuleArgs) ElementType() reflect.Type

type RateBasedRuleArray

type RateBasedRuleArray []RateBasedRuleInput

func (RateBasedRuleArray) ElementType

func (RateBasedRuleArray) ElementType() reflect.Type

func (RateBasedRuleArray) ToRateBasedRuleArrayOutput

func (i RateBasedRuleArray) ToRateBasedRuleArrayOutput() RateBasedRuleArrayOutput

func (RateBasedRuleArray) ToRateBasedRuleArrayOutputWithContext

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

type RateBasedRuleArrayInput

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

type RateBasedRuleArrayOutput struct{ *pulumi.OutputState }

func (RateBasedRuleArrayOutput) ElementType

func (RateBasedRuleArrayOutput) ElementType() reflect.Type

func (RateBasedRuleArrayOutput) Index

func (RateBasedRuleArrayOutput) ToRateBasedRuleArrayOutput

func (o RateBasedRuleArrayOutput) ToRateBasedRuleArrayOutput() RateBasedRuleArrayOutput

func (RateBasedRuleArrayOutput) ToRateBasedRuleArrayOutputWithContext

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

type RateBasedRuleInput

type RateBasedRuleInput interface {
	pulumi.Input

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

type RateBasedRuleMap

type RateBasedRuleMap map[string]RateBasedRuleInput

func (RateBasedRuleMap) ElementType

func (RateBasedRuleMap) ElementType() reflect.Type

func (RateBasedRuleMap) ToRateBasedRuleMapOutput

func (i RateBasedRuleMap) ToRateBasedRuleMapOutput() RateBasedRuleMapOutput

func (RateBasedRuleMap) ToRateBasedRuleMapOutputWithContext

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

type RateBasedRuleMapInput

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

type RateBasedRuleMapOutput struct{ *pulumi.OutputState }

func (RateBasedRuleMapOutput) ElementType

func (RateBasedRuleMapOutput) ElementType() reflect.Type

func (RateBasedRuleMapOutput) MapIndex

func (RateBasedRuleMapOutput) ToRateBasedRuleMapOutput

func (o RateBasedRuleMapOutput) ToRateBasedRuleMapOutput() RateBasedRuleMapOutput

func (RateBasedRuleMapOutput) ToRateBasedRuleMapOutputWithContext

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

type RateBasedRuleOutput

type RateBasedRuleOutput struct{ *pulumi.OutputState }

func (RateBasedRuleOutput) ElementType

func (RateBasedRuleOutput) ElementType() reflect.Type

func (RateBasedRuleOutput) ToRateBasedRuleOutput

func (o RateBasedRuleOutput) ToRateBasedRuleOutput() RateBasedRuleOutput

func (RateBasedRuleOutput) ToRateBasedRuleOutputWithContext

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

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 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. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll 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/v4/go/aws/waf"
"github.com/pulumi/pulumi/sdk/v3/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

func (*RegexMatchSet) ElementType() reflect.Type

func (*RegexMatchSet) ToRegexMatchSetOutput

func (i *RegexMatchSet) ToRegexMatchSetOutput() RegexMatchSetOutput

func (*RegexMatchSet) ToRegexMatchSetOutputWithContext

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

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

type RegexMatchSetArray []RegexMatchSetInput

func (RegexMatchSetArray) ElementType

func (RegexMatchSetArray) ElementType() reflect.Type

func (RegexMatchSetArray) ToRegexMatchSetArrayOutput

func (i RegexMatchSetArray) ToRegexMatchSetArrayOutput() RegexMatchSetArrayOutput

func (RegexMatchSetArray) ToRegexMatchSetArrayOutputWithContext

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

type RegexMatchSetArrayInput

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

type RegexMatchSetArrayOutput struct{ *pulumi.OutputState }

func (RegexMatchSetArrayOutput) ElementType

func (RegexMatchSetArrayOutput) ElementType() reflect.Type

func (RegexMatchSetArrayOutput) Index

func (RegexMatchSetArrayOutput) ToRegexMatchSetArrayOutput

func (o RegexMatchSetArrayOutput) ToRegexMatchSetArrayOutput() RegexMatchSetArrayOutput

func (RegexMatchSetArrayOutput) ToRegexMatchSetArrayOutputWithContext

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

type RegexMatchSetInput

type RegexMatchSetInput interface {
	pulumi.Input

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

type RegexMatchSetMap

type RegexMatchSetMap map[string]RegexMatchSetInput

func (RegexMatchSetMap) ElementType

func (RegexMatchSetMap) ElementType() reflect.Type

func (RegexMatchSetMap) ToRegexMatchSetMapOutput

func (i RegexMatchSetMap) ToRegexMatchSetMapOutput() RegexMatchSetMapOutput

func (RegexMatchSetMap) ToRegexMatchSetMapOutputWithContext

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

type RegexMatchSetMapInput

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

type RegexMatchSetMapOutput struct{ *pulumi.OutputState }

func (RegexMatchSetMapOutput) ElementType

func (RegexMatchSetMapOutput) ElementType() reflect.Type

func (RegexMatchSetMapOutput) MapIndex

func (RegexMatchSetMapOutput) ToRegexMatchSetMapOutput

func (o RegexMatchSetMapOutput) ToRegexMatchSetMapOutput() RegexMatchSetMapOutput

func (RegexMatchSetMapOutput) ToRegexMatchSetMapOutputWithContext

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

type RegexMatchSetOutput

type RegexMatchSetOutput struct{ *pulumi.OutputState }

func (RegexMatchSetOutput) ElementType

func (RegexMatchSetOutput) ElementType() reflect.Type

func (RegexMatchSetOutput) ToRegexMatchSetOutput

func (o RegexMatchSetOutput) ToRegexMatchSetOutput() RegexMatchSetOutput

func (RegexMatchSetOutput) ToRegexMatchSetOutputWithContext

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

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/v4/go/aws/waf"
"github.com/pulumi/pulumi/sdk/v3/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

func (*RegexPatternSet) ElementType() reflect.Type

func (*RegexPatternSet) ToRegexPatternSetOutput

func (i *RegexPatternSet) ToRegexPatternSetOutput() RegexPatternSetOutput

func (*RegexPatternSet) ToRegexPatternSetOutputWithContext

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

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

type RegexPatternSetArray []RegexPatternSetInput

func (RegexPatternSetArray) ElementType

func (RegexPatternSetArray) ElementType() reflect.Type

func (RegexPatternSetArray) ToRegexPatternSetArrayOutput

func (i RegexPatternSetArray) ToRegexPatternSetArrayOutput() RegexPatternSetArrayOutput

func (RegexPatternSetArray) ToRegexPatternSetArrayOutputWithContext

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

type RegexPatternSetArrayInput

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

type RegexPatternSetArrayOutput struct{ *pulumi.OutputState }

func (RegexPatternSetArrayOutput) ElementType

func (RegexPatternSetArrayOutput) ElementType() reflect.Type

func (RegexPatternSetArrayOutput) Index

func (RegexPatternSetArrayOutput) ToRegexPatternSetArrayOutput

func (o RegexPatternSetArrayOutput) ToRegexPatternSetArrayOutput() RegexPatternSetArrayOutput

func (RegexPatternSetArrayOutput) ToRegexPatternSetArrayOutputWithContext

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

type RegexPatternSetInput

type RegexPatternSetInput interface {
	pulumi.Input

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

type RegexPatternSetMap

type RegexPatternSetMap map[string]RegexPatternSetInput

func (RegexPatternSetMap) ElementType

func (RegexPatternSetMap) ElementType() reflect.Type

func (RegexPatternSetMap) ToRegexPatternSetMapOutput

func (i RegexPatternSetMap) ToRegexPatternSetMapOutput() RegexPatternSetMapOutput

func (RegexPatternSetMap) ToRegexPatternSetMapOutputWithContext

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

type RegexPatternSetMapInput

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

type RegexPatternSetMapOutput struct{ *pulumi.OutputState }

func (RegexPatternSetMapOutput) ElementType

func (RegexPatternSetMapOutput) ElementType() reflect.Type

func (RegexPatternSetMapOutput) MapIndex

func (RegexPatternSetMapOutput) ToRegexPatternSetMapOutput

func (o RegexPatternSetMapOutput) ToRegexPatternSetMapOutput() RegexPatternSetMapOutput

func (RegexPatternSetMapOutput) ToRegexPatternSetMapOutputWithContext

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

type RegexPatternSetOutput

type RegexPatternSetOutput struct{ *pulumi.OutputState }

func (RegexPatternSetOutput) ElementType

func (RegexPatternSetOutput) ElementType() reflect.Type

func (RegexPatternSetOutput) ToRegexPatternSetOutput

func (o RegexPatternSetOutput) ToRegexPatternSetOutput() RegexPatternSetOutput

func (RegexPatternSetOutput) ToRegexPatternSetOutputWithContext

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

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. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
}

Provides a WAF Rule Resource

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/waf"
"github.com/pulumi/pulumi/sdk/v3/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

func (*Rule) ElementType() reflect.Type

func (*Rule) ToRuleOutput

func (i *Rule) ToRuleOutput() RuleOutput

func (*Rule) ToRuleOutputWithContext

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

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. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a Rule resource.

func (RuleArgs) ElementType

func (RuleArgs) ElementType() reflect.Type

type RuleArray

type RuleArray []RuleInput

func (RuleArray) ElementType

func (RuleArray) ElementType() reflect.Type

func (RuleArray) ToRuleArrayOutput

func (i RuleArray) ToRuleArrayOutput() RuleArrayOutput

func (RuleArray) ToRuleArrayOutputWithContext

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

type RuleArrayInput

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

type RuleArrayOutput struct{ *pulumi.OutputState }

func (RuleArrayOutput) ElementType

func (RuleArrayOutput) ElementType() reflect.Type

func (RuleArrayOutput) Index

func (RuleArrayOutput) ToRuleArrayOutput

func (o RuleArrayOutput) ToRuleArrayOutput() RuleArrayOutput

func (RuleArrayOutput) ToRuleArrayOutputWithContext

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. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
}

Provides a WAF Rule Group Resource

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/waf"
"github.com/pulumi/pulumi/sdk/v3/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

func (*RuleGroup) ElementType() reflect.Type

func (*RuleGroup) ToRuleGroupOutput

func (i *RuleGroup) ToRuleGroupOutput() RuleGroupOutput

func (*RuleGroup) ToRuleGroupOutputWithContext

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

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. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a RuleGroup resource.

func (RuleGroupArgs) ElementType

func (RuleGroupArgs) ElementType() reflect.Type

type RuleGroupArray

type RuleGroupArray []RuleGroupInput

func (RuleGroupArray) ElementType

func (RuleGroupArray) ElementType() reflect.Type

func (RuleGroupArray) ToRuleGroupArrayOutput

func (i RuleGroupArray) ToRuleGroupArrayOutput() RuleGroupArrayOutput

func (RuleGroupArray) ToRuleGroupArrayOutputWithContext

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

type RuleGroupArrayInput

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

type RuleGroupArrayOutput struct{ *pulumi.OutputState }

func (RuleGroupArrayOutput) ElementType

func (RuleGroupArrayOutput) ElementType() reflect.Type

func (RuleGroupArrayOutput) Index

func (RuleGroupArrayOutput) ToRuleGroupArrayOutput

func (o RuleGroupArrayOutput) ToRuleGroupArrayOutput() RuleGroupArrayOutput

func (RuleGroupArrayOutput) ToRuleGroupArrayOutputWithContext

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

type RuleGroupInput

type RuleGroupInput interface {
	pulumi.Input

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

type RuleGroupMap

type RuleGroupMap map[string]RuleGroupInput

func (RuleGroupMap) ElementType

func (RuleGroupMap) ElementType() reflect.Type

func (RuleGroupMap) ToRuleGroupMapOutput

func (i RuleGroupMap) ToRuleGroupMapOutput() RuleGroupMapOutput

func (RuleGroupMap) ToRuleGroupMapOutputWithContext

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

type RuleGroupMapInput

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

type RuleGroupMapOutput struct{ *pulumi.OutputState }

func (RuleGroupMapOutput) ElementType

func (RuleGroupMapOutput) ElementType() reflect.Type

func (RuleGroupMapOutput) MapIndex

func (RuleGroupMapOutput) ToRuleGroupMapOutput

func (o RuleGroupMapOutput) ToRuleGroupMapOutput() RuleGroupMapOutput

func (RuleGroupMapOutput) ToRuleGroupMapOutputWithContext

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

type RuleGroupOutput

type RuleGroupOutput struct{ *pulumi.OutputState }

func (RuleGroupOutput) ElementType

func (RuleGroupOutput) ElementType() reflect.Type

func (RuleGroupOutput) ToRuleGroupOutput

func (o RuleGroupOutput) ToRuleGroupOutput() RuleGroupOutput

func (RuleGroupOutput) ToRuleGroupOutputWithContext

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

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. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
}

func (RuleGroupState) ElementType

func (RuleGroupState) ElementType() reflect.Type

type RuleInput

type RuleInput interface {
	pulumi.Input

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

type RuleMap

type RuleMap map[string]RuleInput

func (RuleMap) ElementType

func (RuleMap) ElementType() reflect.Type

func (RuleMap) ToRuleMapOutput

func (i RuleMap) ToRuleMapOutput() RuleMapOutput

func (RuleMap) ToRuleMapOutputWithContext

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

type RuleMapInput

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

type RuleMapOutput struct{ *pulumi.OutputState }

func (RuleMapOutput) ElementType

func (RuleMapOutput) ElementType() reflect.Type

func (RuleMapOutput) MapIndex

func (RuleMapOutput) ToRuleMapOutput

func (o RuleMapOutput) ToRuleMapOutput() RuleMapOutput

func (RuleMapOutput) ToRuleMapOutputWithContext

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

type RuleOutput

type RuleOutput struct{ *pulumi.OutputState }

func (RuleOutput) ElementType

func (RuleOutput) ElementType() reflect.Type

func (RuleOutput) ToRuleOutput

func (o RuleOutput) ToRuleOutput() RuleOutput

func (RuleOutput) ToRuleOutputWithContext

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

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 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. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll 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/v4/go/aws/waf"
"github.com/pulumi/pulumi/sdk/v3/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

func (*SizeConstraintSet) ElementType() reflect.Type

func (*SizeConstraintSet) ToSizeConstraintSetOutput

func (i *SizeConstraintSet) ToSizeConstraintSetOutput() SizeConstraintSetOutput

func (*SizeConstraintSet) ToSizeConstraintSetOutputWithContext

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

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

type SizeConstraintSetArray []SizeConstraintSetInput

func (SizeConstraintSetArray) ElementType

func (SizeConstraintSetArray) ElementType() reflect.Type

func (SizeConstraintSetArray) ToSizeConstraintSetArrayOutput

func (i SizeConstraintSetArray) ToSizeConstraintSetArrayOutput() SizeConstraintSetArrayOutput

func (SizeConstraintSetArray) ToSizeConstraintSetArrayOutputWithContext

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

type SizeConstraintSetArrayInput

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

type SizeConstraintSetArrayOutput struct{ *pulumi.OutputState }

func (SizeConstraintSetArrayOutput) ElementType

func (SizeConstraintSetArrayOutput) Index

func (SizeConstraintSetArrayOutput) ToSizeConstraintSetArrayOutput

func (o SizeConstraintSetArrayOutput) ToSizeConstraintSetArrayOutput() SizeConstraintSetArrayOutput

func (SizeConstraintSetArrayOutput) ToSizeConstraintSetArrayOutputWithContext

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

type SizeConstraintSetInput

type SizeConstraintSetInput interface {
	pulumi.Input

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

type SizeConstraintSetMap

type SizeConstraintSetMap map[string]SizeConstraintSetInput

func (SizeConstraintSetMap) ElementType

func (SizeConstraintSetMap) ElementType() reflect.Type

func (SizeConstraintSetMap) ToSizeConstraintSetMapOutput

func (i SizeConstraintSetMap) ToSizeConstraintSetMapOutput() SizeConstraintSetMapOutput

func (SizeConstraintSetMap) ToSizeConstraintSetMapOutputWithContext

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

type SizeConstraintSetMapInput

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

type SizeConstraintSetMapOutput struct{ *pulumi.OutputState }

func (SizeConstraintSetMapOutput) ElementType

func (SizeConstraintSetMapOutput) ElementType() reflect.Type

func (SizeConstraintSetMapOutput) MapIndex

func (SizeConstraintSetMapOutput) ToSizeConstraintSetMapOutput

func (o SizeConstraintSetMapOutput) ToSizeConstraintSetMapOutput() SizeConstraintSetMapOutput

func (SizeConstraintSetMapOutput) ToSizeConstraintSetMapOutputWithContext

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

type SizeConstraintSetOutput

type SizeConstraintSetOutput struct{ *pulumi.OutputState }

func (SizeConstraintSetOutput) ElementType

func (SizeConstraintSetOutput) ElementType() reflect.Type

func (SizeConstraintSetOutput) ToSizeConstraintSetOutput

func (o SizeConstraintSetOutput) ToSizeConstraintSetOutput() SizeConstraintSetOutput

func (SizeConstraintSetOutput) ToSizeConstraintSetOutputWithContext

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

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/v4/go/aws/waf"
"github.com/pulumi/pulumi/sdk/v3/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

func (*SqlInjectionMatchSet) ElementType() reflect.Type

func (*SqlInjectionMatchSet) ToSqlInjectionMatchSetOutput

func (i *SqlInjectionMatchSet) ToSqlInjectionMatchSetOutput() SqlInjectionMatchSetOutput

func (*SqlInjectionMatchSet) ToSqlInjectionMatchSetOutputWithContext

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

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

type SqlInjectionMatchSetArray []SqlInjectionMatchSetInput

func (SqlInjectionMatchSetArray) ElementType

func (SqlInjectionMatchSetArray) ElementType() reflect.Type

func (SqlInjectionMatchSetArray) ToSqlInjectionMatchSetArrayOutput

func (i SqlInjectionMatchSetArray) ToSqlInjectionMatchSetArrayOutput() SqlInjectionMatchSetArrayOutput

func (SqlInjectionMatchSetArray) ToSqlInjectionMatchSetArrayOutputWithContext

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

type SqlInjectionMatchSetArrayInput

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

type SqlInjectionMatchSetArrayOutput struct{ *pulumi.OutputState }

func (SqlInjectionMatchSetArrayOutput) ElementType

func (SqlInjectionMatchSetArrayOutput) Index

func (SqlInjectionMatchSetArrayOutput) ToSqlInjectionMatchSetArrayOutput

func (o SqlInjectionMatchSetArrayOutput) ToSqlInjectionMatchSetArrayOutput() SqlInjectionMatchSetArrayOutput

func (SqlInjectionMatchSetArrayOutput) ToSqlInjectionMatchSetArrayOutputWithContext

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

type SqlInjectionMatchSetInput

type SqlInjectionMatchSetInput interface {
	pulumi.Input

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

type SqlInjectionMatchSetMap

type SqlInjectionMatchSetMap map[string]SqlInjectionMatchSetInput

func (SqlInjectionMatchSetMap) ElementType

func (SqlInjectionMatchSetMap) ElementType() reflect.Type

func (SqlInjectionMatchSetMap) ToSqlInjectionMatchSetMapOutput

func (i SqlInjectionMatchSetMap) ToSqlInjectionMatchSetMapOutput() SqlInjectionMatchSetMapOutput

func (SqlInjectionMatchSetMap) ToSqlInjectionMatchSetMapOutputWithContext

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

type SqlInjectionMatchSetMapInput

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

type SqlInjectionMatchSetMapOutput struct{ *pulumi.OutputState }

func (SqlInjectionMatchSetMapOutput) ElementType

func (SqlInjectionMatchSetMapOutput) MapIndex

func (SqlInjectionMatchSetMapOutput) ToSqlInjectionMatchSetMapOutput

func (o SqlInjectionMatchSetMapOutput) ToSqlInjectionMatchSetMapOutput() SqlInjectionMatchSetMapOutput

func (SqlInjectionMatchSetMapOutput) ToSqlInjectionMatchSetMapOutputWithContext

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

type SqlInjectionMatchSetOutput

type SqlInjectionMatchSetOutput struct{ *pulumi.OutputState }

func (SqlInjectionMatchSetOutput) ElementType

func (SqlInjectionMatchSetOutput) ElementType() reflect.Type

func (SqlInjectionMatchSetOutput) ToSqlInjectionMatchSetOutput

func (o SqlInjectionMatchSetOutput) ToSqlInjectionMatchSetOutput() SqlInjectionMatchSetOutput

func (SqlInjectionMatchSetOutput) ToSqlInjectionMatchSetOutputWithContext

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

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. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
}

Provides a WAF Web ACL Resource

## Example Usage

This example blocks requests coming from `192.0.7.0/24` and allows everything else.

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/waf"
"github.com/pulumi/pulumi/sdk/v3/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/v4/go/aws/waf"
"github.com/pulumi/pulumi/sdk/v3/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

func (*WebAcl) ElementType() reflect.Type

func (*WebAcl) ToWebAclOutput

func (i *WebAcl) ToWebAclOutput() WebAclOutput

func (*WebAcl) ToWebAclOutputWithContext

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

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. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a WebAcl resource.

func (WebAclArgs) ElementType

func (WebAclArgs) ElementType() reflect.Type

type WebAclArray

type WebAclArray []WebAclInput

func (WebAclArray) ElementType

func (WebAclArray) ElementType() reflect.Type

func (WebAclArray) ToWebAclArrayOutput

func (i WebAclArray) ToWebAclArrayOutput() WebAclArrayOutput

func (WebAclArray) ToWebAclArrayOutputWithContext

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

type WebAclArrayInput

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

type WebAclArrayOutput struct{ *pulumi.OutputState }

func (WebAclArrayOutput) ElementType

func (WebAclArrayOutput) ElementType() reflect.Type

func (WebAclArrayOutput) Index

func (WebAclArrayOutput) ToWebAclArrayOutput

func (o WebAclArrayOutput) ToWebAclArrayOutput() WebAclArrayOutput

func (WebAclArrayOutput) ToWebAclArrayOutputWithContext

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

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

type WebAclMap map[string]WebAclInput

func (WebAclMap) ElementType

func (WebAclMap) ElementType() reflect.Type

func (WebAclMap) ToWebAclMapOutput

func (i WebAclMap) ToWebAclMapOutput() WebAclMapOutput

func (WebAclMap) ToWebAclMapOutputWithContext

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

type WebAclMapInput

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

type WebAclMapOutput struct{ *pulumi.OutputState }

func (WebAclMapOutput) ElementType

func (WebAclMapOutput) ElementType() reflect.Type

func (WebAclMapOutput) MapIndex

func (WebAclMapOutput) ToWebAclMapOutput

func (o WebAclMapOutput) ToWebAclMapOutput() WebAclMapOutput

func (WebAclMapOutput) ToWebAclMapOutputWithContext

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

type WebAclOutput

type WebAclOutput struct{ *pulumi.OutputState }

func (WebAclOutput) ElementType

func (WebAclOutput) ElementType() reflect.Type

func (WebAclOutput) ToWebAclOutput

func (o WebAclOutput) ToWebAclOutput() WebAclOutput

func (WebAclOutput) ToWebAclOutputWithContext

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

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. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll 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/v4/go/aws/waf"
"github.com/pulumi/pulumi/sdk/v3/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

func (*XssMatchSet) ElementType() reflect.Type

func (*XssMatchSet) ToXssMatchSetOutput

func (i *XssMatchSet) ToXssMatchSetOutput() XssMatchSetOutput

func (*XssMatchSet) ToXssMatchSetOutputWithContext

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

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

type XssMatchSetArray []XssMatchSetInput

func (XssMatchSetArray) ElementType

func (XssMatchSetArray) ElementType() reflect.Type

func (XssMatchSetArray) ToXssMatchSetArrayOutput

func (i XssMatchSetArray) ToXssMatchSetArrayOutput() XssMatchSetArrayOutput

func (XssMatchSetArray) ToXssMatchSetArrayOutputWithContext

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

type XssMatchSetArrayInput

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

type XssMatchSetArrayOutput struct{ *pulumi.OutputState }

func (XssMatchSetArrayOutput) ElementType

func (XssMatchSetArrayOutput) ElementType() reflect.Type

func (XssMatchSetArrayOutput) Index

func (XssMatchSetArrayOutput) ToXssMatchSetArrayOutput

func (o XssMatchSetArrayOutput) ToXssMatchSetArrayOutput() XssMatchSetArrayOutput

func (XssMatchSetArrayOutput) ToXssMatchSetArrayOutputWithContext

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

type XssMatchSetInput

type XssMatchSetInput interface {
	pulumi.Input

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

type XssMatchSetMap

type XssMatchSetMap map[string]XssMatchSetInput

func (XssMatchSetMap) ElementType

func (XssMatchSetMap) ElementType() reflect.Type

func (XssMatchSetMap) ToXssMatchSetMapOutput

func (i XssMatchSetMap) ToXssMatchSetMapOutput() XssMatchSetMapOutput

func (XssMatchSetMap) ToXssMatchSetMapOutputWithContext

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

type XssMatchSetMapInput

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

type XssMatchSetMapOutput struct{ *pulumi.OutputState }

func (XssMatchSetMapOutput) ElementType

func (XssMatchSetMapOutput) ElementType() reflect.Type

func (XssMatchSetMapOutput) MapIndex

func (XssMatchSetMapOutput) ToXssMatchSetMapOutput

func (o XssMatchSetMapOutput) ToXssMatchSetMapOutput() XssMatchSetMapOutput

func (XssMatchSetMapOutput) ToXssMatchSetMapOutputWithContext

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

type XssMatchSetOutput

type XssMatchSetOutput struct{ *pulumi.OutputState }

func (XssMatchSetOutput) ElementType

func (XssMatchSetOutput) ElementType() reflect.Type

func (XssMatchSetOutput) ToXssMatchSetOutput

func (o XssMatchSetOutput) ToXssMatchSetOutput() XssMatchSetOutput

func (XssMatchSetOutput) ToXssMatchSetOutputWithContext

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

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