aws.waf.ByteMatchSet
Explore with Pulumi AI
Provides a WAF Byte Match Set Resource
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const byteSet = new aws.waf.ByteMatchSet("byte_set", {
    name: "my_waf_byte_match_set",
    byteMatchTuples: [{
        textTransformation: "NONE",
        targetString: "badrefer1",
        positionalConstraint: "CONTAINS",
        fieldToMatch: {
            type: "HEADER",
            data: "referer",
        },
    }],
});
import pulumi
import pulumi_aws as aws
byte_set = aws.waf.ByteMatchSet("byte_set",
    name="my_waf_byte_match_set",
    byte_match_tuples=[{
        "text_transformation": "NONE",
        "target_string": "badrefer1",
        "positional_constraint": "CONTAINS",
        "field_to_match": {
            "type": "HEADER",
            "data": "referer",
        },
    }])
package main
import (
	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/waf"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := waf.NewByteMatchSet(ctx, "byte_set", &waf.ByteMatchSetArgs{
			Name: pulumi.String("my_waf_byte_match_set"),
			ByteMatchTuples: waf.ByteMatchSetByteMatchTupleArray{
				&waf.ByteMatchSetByteMatchTupleArgs{
					TextTransformation:   pulumi.String("NONE"),
					TargetString:         pulumi.String("badrefer1"),
					PositionalConstraint: pulumi.String("CONTAINS"),
					FieldToMatch: &waf.ByteMatchSetByteMatchTupleFieldToMatchArgs{
						Type: pulumi.String("HEADER"),
						Data: pulumi.String("referer"),
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() => 
{
    var byteSet = new Aws.Waf.ByteMatchSet("byte_set", new()
    {
        Name = "my_waf_byte_match_set",
        ByteMatchTuples = new[]
        {
            new Aws.Waf.Inputs.ByteMatchSetByteMatchTupleArgs
            {
                TextTransformation = "NONE",
                TargetString = "badrefer1",
                PositionalConstraint = "CONTAINS",
                FieldToMatch = new Aws.Waf.Inputs.ByteMatchSetByteMatchTupleFieldToMatchArgs
                {
                    Type = "HEADER",
                    Data = "referer",
                },
            },
        },
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.waf.ByteMatchSet;
import com.pulumi.aws.waf.ByteMatchSetArgs;
import com.pulumi.aws.waf.inputs.ByteMatchSetByteMatchTupleArgs;
import com.pulumi.aws.waf.inputs.ByteMatchSetByteMatchTupleFieldToMatchArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        var byteSet = new ByteMatchSet("byteSet", ByteMatchSetArgs.builder()
            .name("my_waf_byte_match_set")
            .byteMatchTuples(ByteMatchSetByteMatchTupleArgs.builder()
                .textTransformation("NONE")
                .targetString("badrefer1")
                .positionalConstraint("CONTAINS")
                .fieldToMatch(ByteMatchSetByteMatchTupleFieldToMatchArgs.builder()
                    .type("HEADER")
                    .data("referer")
                    .build())
                .build())
            .build());
    }
}
resources:
  byteSet:
    type: aws:waf:ByteMatchSet
    name: byte_set
    properties:
      name: my_waf_byte_match_set
      byteMatchTuples:
        - textTransformation: NONE
          targetString: badrefer1
          positionalConstraint: CONTAINS
          fieldToMatch:
            type: HEADER
            data: referer
Create ByteMatchSet Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new ByteMatchSet(name: string, args?: ByteMatchSetArgs, opts?: CustomResourceOptions);@overload
def ByteMatchSet(resource_name: str,
                 args: Optional[ByteMatchSetArgs] = None,
                 opts: Optional[ResourceOptions] = None)
@overload
def ByteMatchSet(resource_name: str,
                 opts: Optional[ResourceOptions] = None,
                 byte_match_tuples: Optional[Sequence[ByteMatchSetByteMatchTupleArgs]] = None,
                 name: Optional[str] = None)func NewByteMatchSet(ctx *Context, name string, args *ByteMatchSetArgs, opts ...ResourceOption) (*ByteMatchSet, error)public ByteMatchSet(string name, ByteMatchSetArgs? args = null, CustomResourceOptions? opts = null)
public ByteMatchSet(String name, ByteMatchSetArgs args)
public ByteMatchSet(String name, ByteMatchSetArgs args, CustomResourceOptions options)
type: aws:waf:ByteMatchSet
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args ByteMatchSetArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args ByteMatchSetArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args ByteMatchSetArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args ByteMatchSetArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args ByteMatchSetArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var byteMatchSetResource = new Aws.Waf.ByteMatchSet("byteMatchSetResource", new()
{
    ByteMatchTuples = new[]
    {
        new Aws.Waf.Inputs.ByteMatchSetByteMatchTupleArgs
        {
            FieldToMatch = new Aws.Waf.Inputs.ByteMatchSetByteMatchTupleFieldToMatchArgs
            {
                Type = "string",
                Data = "string",
            },
            PositionalConstraint = "string",
            TextTransformation = "string",
            TargetString = "string",
        },
    },
    Name = "string",
});
example, err := waf.NewByteMatchSet(ctx, "byteMatchSetResource", &waf.ByteMatchSetArgs{
	ByteMatchTuples: waf.ByteMatchSetByteMatchTupleArray{
		&waf.ByteMatchSetByteMatchTupleArgs{
			FieldToMatch: &waf.ByteMatchSetByteMatchTupleFieldToMatchArgs{
				Type: pulumi.String("string"),
				Data: pulumi.String("string"),
			},
			PositionalConstraint: pulumi.String("string"),
			TextTransformation:   pulumi.String("string"),
			TargetString:         pulumi.String("string"),
		},
	},
	Name: pulumi.String("string"),
})
var byteMatchSetResource = new ByteMatchSet("byteMatchSetResource", ByteMatchSetArgs.builder()
    .byteMatchTuples(ByteMatchSetByteMatchTupleArgs.builder()
        .fieldToMatch(ByteMatchSetByteMatchTupleFieldToMatchArgs.builder()
            .type("string")
            .data("string")
            .build())
        .positionalConstraint("string")
        .textTransformation("string")
        .targetString("string")
        .build())
    .name("string")
    .build());
byte_match_set_resource = aws.waf.ByteMatchSet("byteMatchSetResource",
    byte_match_tuples=[{
        "field_to_match": {
            "type": "string",
            "data": "string",
        },
        "positional_constraint": "string",
        "text_transformation": "string",
        "target_string": "string",
    }],
    name="string")
const byteMatchSetResource = new aws.waf.ByteMatchSet("byteMatchSetResource", {
    byteMatchTuples: [{
        fieldToMatch: {
            type: "string",
            data: "string",
        },
        positionalConstraint: "string",
        textTransformation: "string",
        targetString: "string",
    }],
    name: "string",
});
type: aws:waf:ByteMatchSet
properties:
    byteMatchTuples:
        - fieldToMatch:
            data: string
            type: string
          positionalConstraint: string
          targetString: string
          textTransformation: string
    name: string
ByteMatchSet Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The ByteMatchSet resource accepts the following input properties:
- ByteMatch List<ByteTuples Match Set Byte Match Tuple> 
- 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.
- Name string
- The name or description of the Byte Match Set.
- ByteMatch []ByteTuples Match Set Byte Match Tuple Args 
- 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.
- Name string
- The name or description of the Byte Match Set.
- byteMatch List<ByteTuples Match Set Byte Match Tuple> 
- 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.
- name String
- The name or description of the Byte Match Set.
- byteMatch ByteTuples Match Set Byte Match Tuple[] 
- 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.
- name string
- The name or description of the Byte Match Set.
- byte_match_ Sequence[Bytetuples Match Set Byte Match Tuple Args] 
- 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.
- name str
- The name or description of the Byte Match Set.
- byteMatch List<Property Map>Tuples 
- 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.
- name String
- The name or description of the Byte Match Set.
Outputs
All input properties are implicitly available as output properties. Additionally, the ByteMatchSet resource produces the following output properties:
Look up Existing ByteMatchSet Resource
Get an existing ByteMatchSet resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: ByteMatchSetState, opts?: CustomResourceOptions): ByteMatchSet@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        arn: Optional[str] = None,
        byte_match_tuples: Optional[Sequence[ByteMatchSetByteMatchTupleArgs]] = None,
        name: Optional[str] = None) -> ByteMatchSetfunc GetByteMatchSet(ctx *Context, name string, id IDInput, state *ByteMatchSetState, opts ...ResourceOption) (*ByteMatchSet, error)public static ByteMatchSet Get(string name, Input<string> id, ByteMatchSetState? state, CustomResourceOptions? opts = null)public static ByteMatchSet get(String name, Output<String> id, ByteMatchSetState state, CustomResourceOptions options)resources:  _:    type: aws:waf:ByteMatchSet    get:      id: ${id}- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Arn string
- Amazon Resource Name (ARN) of the byte match set.
- ByteMatch List<ByteTuples Match Set Byte Match Tuple> 
- 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.
- Name string
- The name or description of the Byte Match Set.
- Arn string
- Amazon Resource Name (ARN) of the byte match set.
- ByteMatch []ByteTuples Match Set Byte Match Tuple Args 
- 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.
- Name string
- The name or description of the Byte Match Set.
- arn String
- Amazon Resource Name (ARN) of the byte match set.
- byteMatch List<ByteTuples Match Set Byte Match Tuple> 
- 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.
- name String
- The name or description of the Byte Match Set.
- arn string
- Amazon Resource Name (ARN) of the byte match set.
- byteMatch ByteTuples Match Set Byte Match Tuple[] 
- 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.
- name string
- The name or description of the Byte Match Set.
- arn str
- Amazon Resource Name (ARN) of the byte match set.
- byte_match_ Sequence[Bytetuples Match Set Byte Match Tuple Args] 
- 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.
- name str
- The name or description of the Byte Match Set.
- arn String
- Amazon Resource Name (ARN) of the byte match set.
- byteMatch List<Property Map>Tuples 
- 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.
- name String
- The name or description of the Byte Match Set.
Supporting Types
ByteMatchSetByteMatchTuple, ByteMatchSetByteMatchTupleArgs            
- FieldTo ByteMatch Match Set Byte Match Tuple Field To Match 
- The part of a web request that you want to search, such as a specified header or a query string.
- PositionalConstraint string
- 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_WORDorEXACTLY. See docs for all supported values.
- TextTransformation string
- 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 target_stringbefore inspecting a request for a match. e.g.,CMD_LINE,HTML_ENTITY_DECODEorNONE. See docs for all supported values.
- TargetString string
- The value that you want to search for within the field specified by field_to_match, e.g.,badrefer1. See docs for all supported values.
- FieldTo ByteMatch Match Set Byte Match Tuple Field To Match 
- The part of a web request that you want to search, such as a specified header or a query string.
- PositionalConstraint string
- 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_WORDorEXACTLY. See docs for all supported values.
- TextTransformation string
- 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 target_stringbefore inspecting a request for a match. e.g.,CMD_LINE,HTML_ENTITY_DECODEorNONE. See docs for all supported values.
- TargetString string
- The value that you want to search for within the field specified by field_to_match, e.g.,badrefer1. See docs for all supported values.
- fieldTo ByteMatch Match Set Byte Match Tuple Field To Match 
- The part of a web request that you want to search, such as a specified header or a query string.
- positionalConstraint String
- 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_WORDorEXACTLY. See docs for all supported values.
- textTransformation String
- 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 target_stringbefore inspecting a request for a match. e.g.,CMD_LINE,HTML_ENTITY_DECODEorNONE. See docs for all supported values.
- targetString String
- The value that you want to search for within the field specified by field_to_match, e.g.,badrefer1. See docs for all supported values.
- fieldTo ByteMatch Match Set Byte Match Tuple Field To Match 
- The part of a web request that you want to search, such as a specified header or a query string.
- positionalConstraint string
- 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_WORDorEXACTLY. See docs for all supported values.
- textTransformation string
- 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 target_stringbefore inspecting a request for a match. e.g.,CMD_LINE,HTML_ENTITY_DECODEorNONE. See docs for all supported values.
- targetString string
- The value that you want to search for within the field specified by field_to_match, e.g.,badrefer1. See docs for all supported values.
- field_to_ Bytematch Match Set Byte Match Tuple Field To Match 
- The part of a web request that you want to search, such as a specified header or a query string.
- positional_constraint str
- 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_WORDorEXACTLY. See docs for all supported values.
- text_transformation str
- 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 target_stringbefore inspecting a request for a match. e.g.,CMD_LINE,HTML_ENTITY_DECODEorNONE. See docs for all supported values.
- target_string str
- The value that you want to search for within the field specified by field_to_match, e.g.,badrefer1. See docs for all supported values.
- fieldTo Property MapMatch 
- The part of a web request that you want to search, such as a specified header or a query string.
- positionalConstraint String
- 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_WORDorEXACTLY. See docs for all supported values.
- textTransformation String
- 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 target_stringbefore inspecting a request for a match. e.g.,CMD_LINE,HTML_ENTITY_DECODEorNONE. See docs for all supported values.
- targetString String
- The value that you want to search for within the field specified by field_to_match, e.g.,badrefer1. See docs for all supported values.
ByteMatchSetByteMatchTupleFieldToMatch, ByteMatchSetByteMatchTupleFieldToMatchArgs                  
- Type string
- The part of the web request that you want AWS WAF to search for a specified string.
e.g., HEADER,METHODorBODY. See docs for all supported values.
- Data string
- When typeisHEADER, enter the name of the header that you want to search, e.g.,User-AgentorReferer. Iftypeis any other value, omit this field.
- Type string
- The part of the web request that you want AWS WAF to search for a specified string.
e.g., HEADER,METHODorBODY. See docs for all supported values.
- Data string
- When typeisHEADER, enter the name of the header that you want to search, e.g.,User-AgentorReferer. Iftypeis any other value, omit this field.
- type String
- The part of the web request that you want AWS WAF to search for a specified string.
e.g., HEADER,METHODorBODY. See docs for all supported values.
- data String
- When typeisHEADER, enter the name of the header that you want to search, e.g.,User-AgentorReferer. Iftypeis any other value, omit this field.
- type string
- The part of the web request that you want AWS WAF to search for a specified string.
e.g., HEADER,METHODorBODY. See docs for all supported values.
- data string
- When typeisHEADER, enter the name of the header that you want to search, e.g.,User-AgentorReferer. Iftypeis any other value, omit this field.
- type str
- The part of the web request that you want AWS WAF to search for a specified string.
e.g., HEADER,METHODorBODY. See docs for all supported values.
- data str
- When typeisHEADER, enter the name of the header that you want to search, e.g.,User-AgentorReferer. Iftypeis any other value, omit this field.
- type String
- The part of the web request that you want AWS WAF to search for a specified string.
e.g., HEADER,METHODorBODY. See docs for all supported values.
- data String
- When typeisHEADER, enter the name of the header that you want to search, e.g.,User-AgentorReferer. Iftypeis any other value, omit this field.
Import
Using pulumi import, import WAF Byte Match Set using the id. For example:
$ pulumi import aws:waf/byteMatchSet:ByteMatchSet byte_set a1b2c3d4-d5f6-7777-8888-9999aaaabbbbcccc
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- AWS Classic pulumi/pulumi-aws
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the awsTerraform Provider.