1. Packages
  2. Azure Classic
  3. API Docs
  4. cdn
  5. FrontdoorRule

We recommend using Azure Native.

Azure Classic v5.81.0 published on Monday, Jun 24, 2024 by Pulumi

azure.cdn.FrontdoorRule

Explore with Pulumi AI

azure logo

We recommend using Azure Native.

Azure Classic v5.81.0 published on Monday, Jun 24, 2024 by Pulumi

    Manages a Front Door (standard/premium) Rule.

    !>IMPORTANT: The Rules resource must include a depends_on meta-argument which references the azure.cdn.FrontdoorOrigin and the azure.cdn.FrontdoorOriginGroup.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as azure from "@pulumi/azure";
    
    const example = new azure.core.ResourceGroup("example", {
        name: "example-cdn-frontdoor",
        location: "West Europe",
    });
    const exampleFrontdoorProfile = new azure.cdn.FrontdoorProfile("example", {
        name: "example-profile",
        resourceGroupName: example.name,
        skuName: "Premium_AzureFrontDoor",
    });
    const exampleFrontdoorEndpoint = new azure.cdn.FrontdoorEndpoint("example", {
        name: "example-endpoint",
        cdnFrontdoorProfileId: exampleFrontdoorProfile.id,
        tags: {
            endpoint: "contoso.com",
        },
    });
    const exampleFrontdoorOriginGroup = new azure.cdn.FrontdoorOriginGroup("example", {
        name: "example-originGroup",
        cdnFrontdoorProfileId: exampleFrontdoorProfile.id,
        sessionAffinityEnabled: true,
        restoreTrafficTimeToHealedOrNewEndpointInMinutes: 10,
        healthProbe: {
            intervalInSeconds: 240,
            path: "/healthProbe",
            protocol: "Https",
            requestType: "GET",
        },
        loadBalancing: {
            additionalLatencyInMilliseconds: 0,
            sampleSize: 16,
            successfulSamplesRequired: 3,
        },
    });
    const exampleFrontdoorOrigin = new azure.cdn.FrontdoorOrigin("example", {
        name: "example-origin",
        cdnFrontdoorOriginGroupId: exampleFrontdoorOriginGroup.id,
        enabled: true,
        certificateNameCheckEnabled: false,
        hostName: exampleFrontdoorEndpoint.hostName,
        httpPort: 80,
        httpsPort: 443,
        originHostHeader: "contoso.com",
        priority: 1,
        weight: 500,
    });
    const exampleFrontdoorRuleSet = new azure.cdn.FrontdoorRuleSet("example", {
        name: "exampleruleset",
        cdnFrontdoorProfileId: exampleFrontdoorProfile.id,
    });
    const exampleFrontdoorRule = new azure.cdn.FrontdoorRule("example", {
        name: "examplerule",
        cdnFrontdoorRuleSetId: exampleFrontdoorRuleSet.id,
        order: 1,
        behaviorOnMatch: "Continue",
        actions: {
            routeConfigurationOverrideAction: {
                cdnFrontdoorOriginGroupId: exampleFrontdoorOriginGroup.id,
                forwardingProtocol: "HttpsOnly",
                queryStringCachingBehavior: "IncludeSpecifiedQueryStrings",
                queryStringParameters: [
                    "foo",
                    "clientIp={client_ip}",
                ],
                compressionEnabled: true,
                cacheBehavior: "OverrideIfOriginMissing",
                cacheDuration: "365.23:59:59",
            },
            urlRedirectAction: {
                redirectType: "PermanentRedirect",
                redirectProtocol: "MatchRequest",
                queryString: "clientIp={client_ip}",
                destinationPath: "/exampleredirection",
                destinationHostname: "contoso.com",
                destinationFragment: "UrlRedirect",
            },
        },
        conditions: {
            hostNameConditions: [{
                operator: "Equal",
                negateCondition: false,
                matchValues: [
                    "www.contoso.com",
                    "images.contoso.com",
                    "video.contoso.com",
                ],
                transforms: [
                    "Lowercase",
                    "Trim",
                ],
            }],
            isDeviceConditions: [{
                operator: "Equal",
                negateCondition: false,
                matchValues: "Mobile",
            }],
            postArgsConditions: [{
                postArgsName: "customerName",
                operator: "BeginsWith",
                matchValues: [
                    "J",
                    "K",
                ],
                transforms: ["Uppercase"],
            }],
            requestMethodConditions: [{
                operator: "Equal",
                negateCondition: false,
                matchValues: ["DELETE"],
            }],
            urlFilenameConditions: [{
                operator: "Equal",
                negateCondition: false,
                matchValues: ["media.mp4"],
                transforms: [
                    "Lowercase",
                    "RemoveNulls",
                    "Trim",
                ],
            }],
        },
    }, {
        dependsOn: [
            exampleFrontdoorOriginGroup,
            exampleFrontdoorOrigin,
        ],
    });
    
    import pulumi
    import pulumi_azure as azure
    
    example = azure.core.ResourceGroup("example",
        name="example-cdn-frontdoor",
        location="West Europe")
    example_frontdoor_profile = azure.cdn.FrontdoorProfile("example",
        name="example-profile",
        resource_group_name=example.name,
        sku_name="Premium_AzureFrontDoor")
    example_frontdoor_endpoint = azure.cdn.FrontdoorEndpoint("example",
        name="example-endpoint",
        cdn_frontdoor_profile_id=example_frontdoor_profile.id,
        tags={
            "endpoint": "contoso.com",
        })
    example_frontdoor_origin_group = azure.cdn.FrontdoorOriginGroup("example",
        name="example-originGroup",
        cdn_frontdoor_profile_id=example_frontdoor_profile.id,
        session_affinity_enabled=True,
        restore_traffic_time_to_healed_or_new_endpoint_in_minutes=10,
        health_probe=azure.cdn.FrontdoorOriginGroupHealthProbeArgs(
            interval_in_seconds=240,
            path="/healthProbe",
            protocol="Https",
            request_type="GET",
        ),
        load_balancing=azure.cdn.FrontdoorOriginGroupLoadBalancingArgs(
            additional_latency_in_milliseconds=0,
            sample_size=16,
            successful_samples_required=3,
        ))
    example_frontdoor_origin = azure.cdn.FrontdoorOrigin("example",
        name="example-origin",
        cdn_frontdoor_origin_group_id=example_frontdoor_origin_group.id,
        enabled=True,
        certificate_name_check_enabled=False,
        host_name=example_frontdoor_endpoint.host_name,
        http_port=80,
        https_port=443,
        origin_host_header="contoso.com",
        priority=1,
        weight=500)
    example_frontdoor_rule_set = azure.cdn.FrontdoorRuleSet("example",
        name="exampleruleset",
        cdn_frontdoor_profile_id=example_frontdoor_profile.id)
    example_frontdoor_rule = azure.cdn.FrontdoorRule("example",
        name="examplerule",
        cdn_frontdoor_rule_set_id=example_frontdoor_rule_set.id,
        order=1,
        behavior_on_match="Continue",
        actions=azure.cdn.FrontdoorRuleActionsArgs(
            route_configuration_override_action=azure.cdn.FrontdoorRuleActionsRouteConfigurationOverrideActionArgs(
                cdn_frontdoor_origin_group_id=example_frontdoor_origin_group.id,
                forwarding_protocol="HttpsOnly",
                query_string_caching_behavior="IncludeSpecifiedQueryStrings",
                query_string_parameters=[
                    "foo",
                    "clientIp={client_ip}",
                ],
                compression_enabled=True,
                cache_behavior="OverrideIfOriginMissing",
                cache_duration="365.23:59:59",
            ),
            url_redirect_action=azure.cdn.FrontdoorRuleActionsUrlRedirectActionArgs(
                redirect_type="PermanentRedirect",
                redirect_protocol="MatchRequest",
                query_string="clientIp={client_ip}",
                destination_path="/exampleredirection",
                destination_hostname="contoso.com",
                destination_fragment="UrlRedirect",
            ),
        ),
        conditions=azure.cdn.FrontdoorRuleConditionsArgs(
            host_name_conditions=[azure.cdn.FrontdoorRuleConditionsHostNameConditionArgs(
                operator="Equal",
                negate_condition=False,
                match_values=[
                    "www.contoso.com",
                    "images.contoso.com",
                    "video.contoso.com",
                ],
                transforms=[
                    "Lowercase",
                    "Trim",
                ],
            )],
            is_device_conditions=[azure.cdn.FrontdoorRuleConditionsIsDeviceConditionArgs(
                operator="Equal",
                negate_condition=False,
                match_values="Mobile",
            )],
            post_args_conditions=[azure.cdn.FrontdoorRuleConditionsPostArgsConditionArgs(
                post_args_name="customerName",
                operator="BeginsWith",
                match_values=[
                    "J",
                    "K",
                ],
                transforms=["Uppercase"],
            )],
            request_method_conditions=[azure.cdn.FrontdoorRuleConditionsRequestMethodConditionArgs(
                operator="Equal",
                negate_condition=False,
                match_values=["DELETE"],
            )],
            url_filename_conditions=[azure.cdn.FrontdoorRuleConditionsUrlFilenameConditionArgs(
                operator="Equal",
                negate_condition=False,
                match_values=["media.mp4"],
                transforms=[
                    "Lowercase",
                    "RemoveNulls",
                    "Trim",
                ],
            )],
        ),
        opts=pulumi.ResourceOptions(depends_on=[
                example_frontdoor_origin_group,
                example_frontdoor_origin,
            ]))
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/cdn"
    	"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		example, err := core.NewResourceGroup(ctx, "example", &core.ResourceGroupArgs{
    			Name:     pulumi.String("example-cdn-frontdoor"),
    			Location: pulumi.String("West Europe"),
    		})
    		if err != nil {
    			return err
    		}
    		exampleFrontdoorProfile, err := cdn.NewFrontdoorProfile(ctx, "example", &cdn.FrontdoorProfileArgs{
    			Name:              pulumi.String("example-profile"),
    			ResourceGroupName: example.Name,
    			SkuName:           pulumi.String("Premium_AzureFrontDoor"),
    		})
    		if err != nil {
    			return err
    		}
    		exampleFrontdoorEndpoint, err := cdn.NewFrontdoorEndpoint(ctx, "example", &cdn.FrontdoorEndpointArgs{
    			Name:                  pulumi.String("example-endpoint"),
    			CdnFrontdoorProfileId: exampleFrontdoorProfile.ID(),
    			Tags: pulumi.StringMap{
    				"endpoint": pulumi.String("contoso.com"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		exampleFrontdoorOriginGroup, err := cdn.NewFrontdoorOriginGroup(ctx, "example", &cdn.FrontdoorOriginGroupArgs{
    			Name:                   pulumi.String("example-originGroup"),
    			CdnFrontdoorProfileId:  exampleFrontdoorProfile.ID(),
    			SessionAffinityEnabled: pulumi.Bool(true),
    			RestoreTrafficTimeToHealedOrNewEndpointInMinutes: pulumi.Int(10),
    			HealthProbe: &cdn.FrontdoorOriginGroupHealthProbeArgs{
    				IntervalInSeconds: pulumi.Int(240),
    				Path:              pulumi.String("/healthProbe"),
    				Protocol:          pulumi.String("Https"),
    				RequestType:       pulumi.String("GET"),
    			},
    			LoadBalancing: &cdn.FrontdoorOriginGroupLoadBalancingArgs{
    				AdditionalLatencyInMilliseconds: pulumi.Int(0),
    				SampleSize:                      pulumi.Int(16),
    				SuccessfulSamplesRequired:       pulumi.Int(3),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		exampleFrontdoorOrigin, err := cdn.NewFrontdoorOrigin(ctx, "example", &cdn.FrontdoorOriginArgs{
    			Name:                        pulumi.String("example-origin"),
    			CdnFrontdoorOriginGroupId:   exampleFrontdoorOriginGroup.ID(),
    			Enabled:                     pulumi.Bool(true),
    			CertificateNameCheckEnabled: pulumi.Bool(false),
    			HostName:                    exampleFrontdoorEndpoint.HostName,
    			HttpPort:                    pulumi.Int(80),
    			HttpsPort:                   pulumi.Int(443),
    			OriginHostHeader:            pulumi.String("contoso.com"),
    			Priority:                    pulumi.Int(1),
    			Weight:                      pulumi.Int(500),
    		})
    		if err != nil {
    			return err
    		}
    		exampleFrontdoorRuleSet, err := cdn.NewFrontdoorRuleSet(ctx, "example", &cdn.FrontdoorRuleSetArgs{
    			Name:                  pulumi.String("exampleruleset"),
    			CdnFrontdoorProfileId: exampleFrontdoorProfile.ID(),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = cdn.NewFrontdoorRule(ctx, "example", &cdn.FrontdoorRuleArgs{
    			Name:                  pulumi.String("examplerule"),
    			CdnFrontdoorRuleSetId: exampleFrontdoorRuleSet.ID(),
    			Order:                 pulumi.Int(1),
    			BehaviorOnMatch:       pulumi.String("Continue"),
    			Actions: &cdn.FrontdoorRuleActionsArgs{
    				RouteConfigurationOverrideAction: &cdn.FrontdoorRuleActionsRouteConfigurationOverrideActionArgs{
    					CdnFrontdoorOriginGroupId:  exampleFrontdoorOriginGroup.ID(),
    					ForwardingProtocol:         pulumi.String("HttpsOnly"),
    					QueryStringCachingBehavior: pulumi.String("IncludeSpecifiedQueryStrings"),
    					QueryStringParameters: pulumi.StringArray{
    						pulumi.String("foo"),
    						pulumi.String("clientIp={client_ip}"),
    					},
    					CompressionEnabled: pulumi.Bool(true),
    					CacheBehavior:      pulumi.String("OverrideIfOriginMissing"),
    					CacheDuration:      pulumi.String("365.23:59:59"),
    				},
    				UrlRedirectAction: &cdn.FrontdoorRuleActionsUrlRedirectActionArgs{
    					RedirectType:        pulumi.String("PermanentRedirect"),
    					RedirectProtocol:    pulumi.String("MatchRequest"),
    					QueryString:         pulumi.String("clientIp={client_ip}"),
    					DestinationPath:     pulumi.String("/exampleredirection"),
    					DestinationHostname: pulumi.String("contoso.com"),
    					DestinationFragment: pulumi.String("UrlRedirect"),
    				},
    			},
    			Conditions: &cdn.FrontdoorRuleConditionsArgs{
    				HostNameConditions: cdn.FrontdoorRuleConditionsHostNameConditionArray{
    					&cdn.FrontdoorRuleConditionsHostNameConditionArgs{
    						Operator:        pulumi.String("Equal"),
    						NegateCondition: pulumi.Bool(false),
    						MatchValues: pulumi.StringArray{
    							pulumi.String("www.contoso.com"),
    							pulumi.String("images.contoso.com"),
    							pulumi.String("video.contoso.com"),
    						},
    						Transforms: pulumi.StringArray{
    							pulumi.String("Lowercase"),
    							pulumi.String("Trim"),
    						},
    					},
    				},
    				IsDeviceConditions: cdn.FrontdoorRuleConditionsIsDeviceConditionArray{
    					&cdn.FrontdoorRuleConditionsIsDeviceConditionArgs{
    						Operator:        pulumi.String("Equal"),
    						NegateCondition: pulumi.Bool(false),
    						MatchValues:     pulumi.String("Mobile"),
    					},
    				},
    				PostArgsConditions: cdn.FrontdoorRuleConditionsPostArgsConditionArray{
    					&cdn.FrontdoorRuleConditionsPostArgsConditionArgs{
    						PostArgsName: pulumi.String("customerName"),
    						Operator:     pulumi.String("BeginsWith"),
    						MatchValues: pulumi.StringArray{
    							pulumi.String("J"),
    							pulumi.String("K"),
    						},
    						Transforms: pulumi.StringArray{
    							pulumi.String("Uppercase"),
    						},
    					},
    				},
    				RequestMethodConditions: cdn.FrontdoorRuleConditionsRequestMethodConditionArray{
    					&cdn.FrontdoorRuleConditionsRequestMethodConditionArgs{
    						Operator:        pulumi.String("Equal"),
    						NegateCondition: pulumi.Bool(false),
    						MatchValues: pulumi.StringArray{
    							pulumi.String("DELETE"),
    						},
    					},
    				},
    				UrlFilenameConditions: cdn.FrontdoorRuleConditionsUrlFilenameConditionArray{
    					&cdn.FrontdoorRuleConditionsUrlFilenameConditionArgs{
    						Operator:        pulumi.String("Equal"),
    						NegateCondition: pulumi.Bool(false),
    						MatchValues: pulumi.StringArray{
    							pulumi.String("media.mp4"),
    						},
    						Transforms: pulumi.StringArray{
    							pulumi.String("Lowercase"),
    							pulumi.String("RemoveNulls"),
    							pulumi.String("Trim"),
    						},
    					},
    				},
    			},
    		}, pulumi.DependsOn([]pulumi.Resource{
    			exampleFrontdoorOriginGroup,
    			exampleFrontdoorOrigin,
    		}))
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Azure = Pulumi.Azure;
    
    return await Deployment.RunAsync(() => 
    {
        var example = new Azure.Core.ResourceGroup("example", new()
        {
            Name = "example-cdn-frontdoor",
            Location = "West Europe",
        });
    
        var exampleFrontdoorProfile = new Azure.Cdn.FrontdoorProfile("example", new()
        {
            Name = "example-profile",
            ResourceGroupName = example.Name,
            SkuName = "Premium_AzureFrontDoor",
        });
    
        var exampleFrontdoorEndpoint = new Azure.Cdn.FrontdoorEndpoint("example", new()
        {
            Name = "example-endpoint",
            CdnFrontdoorProfileId = exampleFrontdoorProfile.Id,
            Tags = 
            {
                { "endpoint", "contoso.com" },
            },
        });
    
        var exampleFrontdoorOriginGroup = new Azure.Cdn.FrontdoorOriginGroup("example", new()
        {
            Name = "example-originGroup",
            CdnFrontdoorProfileId = exampleFrontdoorProfile.Id,
            SessionAffinityEnabled = true,
            RestoreTrafficTimeToHealedOrNewEndpointInMinutes = 10,
            HealthProbe = new Azure.Cdn.Inputs.FrontdoorOriginGroupHealthProbeArgs
            {
                IntervalInSeconds = 240,
                Path = "/healthProbe",
                Protocol = "Https",
                RequestType = "GET",
            },
            LoadBalancing = new Azure.Cdn.Inputs.FrontdoorOriginGroupLoadBalancingArgs
            {
                AdditionalLatencyInMilliseconds = 0,
                SampleSize = 16,
                SuccessfulSamplesRequired = 3,
            },
        });
    
        var exampleFrontdoorOrigin = new Azure.Cdn.FrontdoorOrigin("example", new()
        {
            Name = "example-origin",
            CdnFrontdoorOriginGroupId = exampleFrontdoorOriginGroup.Id,
            Enabled = true,
            CertificateNameCheckEnabled = false,
            HostName = exampleFrontdoorEndpoint.HostName,
            HttpPort = 80,
            HttpsPort = 443,
            OriginHostHeader = "contoso.com",
            Priority = 1,
            Weight = 500,
        });
    
        var exampleFrontdoorRuleSet = new Azure.Cdn.FrontdoorRuleSet("example", new()
        {
            Name = "exampleruleset",
            CdnFrontdoorProfileId = exampleFrontdoorProfile.Id,
        });
    
        var exampleFrontdoorRule = new Azure.Cdn.FrontdoorRule("example", new()
        {
            Name = "examplerule",
            CdnFrontdoorRuleSetId = exampleFrontdoorRuleSet.Id,
            Order = 1,
            BehaviorOnMatch = "Continue",
            Actions = new Azure.Cdn.Inputs.FrontdoorRuleActionsArgs
            {
                RouteConfigurationOverrideAction = new Azure.Cdn.Inputs.FrontdoorRuleActionsRouteConfigurationOverrideActionArgs
                {
                    CdnFrontdoorOriginGroupId = exampleFrontdoorOriginGroup.Id,
                    ForwardingProtocol = "HttpsOnly",
                    QueryStringCachingBehavior = "IncludeSpecifiedQueryStrings",
                    QueryStringParameters = new[]
                    {
                        "foo",
                        "clientIp={client_ip}",
                    },
                    CompressionEnabled = true,
                    CacheBehavior = "OverrideIfOriginMissing",
                    CacheDuration = "365.23:59:59",
                },
                UrlRedirectAction = new Azure.Cdn.Inputs.FrontdoorRuleActionsUrlRedirectActionArgs
                {
                    RedirectType = "PermanentRedirect",
                    RedirectProtocol = "MatchRequest",
                    QueryString = "clientIp={client_ip}",
                    DestinationPath = "/exampleredirection",
                    DestinationHostname = "contoso.com",
                    DestinationFragment = "UrlRedirect",
                },
            },
            Conditions = new Azure.Cdn.Inputs.FrontdoorRuleConditionsArgs
            {
                HostNameConditions = new[]
                {
                    new Azure.Cdn.Inputs.FrontdoorRuleConditionsHostNameConditionArgs
                    {
                        Operator = "Equal",
                        NegateCondition = false,
                        MatchValues = new[]
                        {
                            "www.contoso.com",
                            "images.contoso.com",
                            "video.contoso.com",
                        },
                        Transforms = new[]
                        {
                            "Lowercase",
                            "Trim",
                        },
                    },
                },
                IsDeviceConditions = new[]
                {
                    new Azure.Cdn.Inputs.FrontdoorRuleConditionsIsDeviceConditionArgs
                    {
                        Operator = "Equal",
                        NegateCondition = false,
                        MatchValues = "Mobile",
                    },
                },
                PostArgsConditions = new[]
                {
                    new Azure.Cdn.Inputs.FrontdoorRuleConditionsPostArgsConditionArgs
                    {
                        PostArgsName = "customerName",
                        Operator = "BeginsWith",
                        MatchValues = new[]
                        {
                            "J",
                            "K",
                        },
                        Transforms = new[]
                        {
                            "Uppercase",
                        },
                    },
                },
                RequestMethodConditions = new[]
                {
                    new Azure.Cdn.Inputs.FrontdoorRuleConditionsRequestMethodConditionArgs
                    {
                        Operator = "Equal",
                        NegateCondition = false,
                        MatchValues = new[]
                        {
                            "DELETE",
                        },
                    },
                },
                UrlFilenameConditions = new[]
                {
                    new Azure.Cdn.Inputs.FrontdoorRuleConditionsUrlFilenameConditionArgs
                    {
                        Operator = "Equal",
                        NegateCondition = false,
                        MatchValues = new[]
                        {
                            "media.mp4",
                        },
                        Transforms = new[]
                        {
                            "Lowercase",
                            "RemoveNulls",
                            "Trim",
                        },
                    },
                },
            },
        }, new CustomResourceOptions
        {
            DependsOn =
            {
                exampleFrontdoorOriginGroup,
                exampleFrontdoorOrigin,
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.azure.core.ResourceGroup;
    import com.pulumi.azure.core.ResourceGroupArgs;
    import com.pulumi.azure.cdn.FrontdoorProfile;
    import com.pulumi.azure.cdn.FrontdoorProfileArgs;
    import com.pulumi.azure.cdn.FrontdoorEndpoint;
    import com.pulumi.azure.cdn.FrontdoorEndpointArgs;
    import com.pulumi.azure.cdn.FrontdoorOriginGroup;
    import com.pulumi.azure.cdn.FrontdoorOriginGroupArgs;
    import com.pulumi.azure.cdn.inputs.FrontdoorOriginGroupHealthProbeArgs;
    import com.pulumi.azure.cdn.inputs.FrontdoorOriginGroupLoadBalancingArgs;
    import com.pulumi.azure.cdn.FrontdoorOrigin;
    import com.pulumi.azure.cdn.FrontdoorOriginArgs;
    import com.pulumi.azure.cdn.FrontdoorRuleSet;
    import com.pulumi.azure.cdn.FrontdoorRuleSetArgs;
    import com.pulumi.azure.cdn.FrontdoorRule;
    import com.pulumi.azure.cdn.FrontdoorRuleArgs;
    import com.pulumi.azure.cdn.inputs.FrontdoorRuleActionsArgs;
    import com.pulumi.azure.cdn.inputs.FrontdoorRuleActionsRouteConfigurationOverrideActionArgs;
    import com.pulumi.azure.cdn.inputs.FrontdoorRuleActionsUrlRedirectActionArgs;
    import com.pulumi.azure.cdn.inputs.FrontdoorRuleConditionsArgs;
    import com.pulumi.resources.CustomResourceOptions;
    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 example = new ResourceGroup("example", ResourceGroupArgs.builder()
                .name("example-cdn-frontdoor")
                .location("West Europe")
                .build());
    
            var exampleFrontdoorProfile = new FrontdoorProfile("exampleFrontdoorProfile", FrontdoorProfileArgs.builder()
                .name("example-profile")
                .resourceGroupName(example.name())
                .skuName("Premium_AzureFrontDoor")
                .build());
    
            var exampleFrontdoorEndpoint = new FrontdoorEndpoint("exampleFrontdoorEndpoint", FrontdoorEndpointArgs.builder()
                .name("example-endpoint")
                .cdnFrontdoorProfileId(exampleFrontdoorProfile.id())
                .tags(Map.of("endpoint", "contoso.com"))
                .build());
    
            var exampleFrontdoorOriginGroup = new FrontdoorOriginGroup("exampleFrontdoorOriginGroup", FrontdoorOriginGroupArgs.builder()
                .name("example-originGroup")
                .cdnFrontdoorProfileId(exampleFrontdoorProfile.id())
                .sessionAffinityEnabled(true)
                .restoreTrafficTimeToHealedOrNewEndpointInMinutes(10)
                .healthProbe(FrontdoorOriginGroupHealthProbeArgs.builder()
                    .intervalInSeconds(240)
                    .path("/healthProbe")
                    .protocol("Https")
                    .requestType("GET")
                    .build())
                .loadBalancing(FrontdoorOriginGroupLoadBalancingArgs.builder()
                    .additionalLatencyInMilliseconds(0)
                    .sampleSize(16)
                    .successfulSamplesRequired(3)
                    .build())
                .build());
    
            var exampleFrontdoorOrigin = new FrontdoorOrigin("exampleFrontdoorOrigin", FrontdoorOriginArgs.builder()
                .name("example-origin")
                .cdnFrontdoorOriginGroupId(exampleFrontdoorOriginGroup.id())
                .enabled(true)
                .certificateNameCheckEnabled(false)
                .hostName(exampleFrontdoorEndpoint.hostName())
                .httpPort(80)
                .httpsPort(443)
                .originHostHeader("contoso.com")
                .priority(1)
                .weight(500)
                .build());
    
            var exampleFrontdoorRuleSet = new FrontdoorRuleSet("exampleFrontdoorRuleSet", FrontdoorRuleSetArgs.builder()
                .name("exampleruleset")
                .cdnFrontdoorProfileId(exampleFrontdoorProfile.id())
                .build());
    
            var exampleFrontdoorRule = new FrontdoorRule("exampleFrontdoorRule", FrontdoorRuleArgs.builder()
                .name("examplerule")
                .cdnFrontdoorRuleSetId(exampleFrontdoorRuleSet.id())
                .order(1)
                .behaviorOnMatch("Continue")
                .actions(FrontdoorRuleActionsArgs.builder()
                    .routeConfigurationOverrideAction(FrontdoorRuleActionsRouteConfigurationOverrideActionArgs.builder()
                        .cdnFrontdoorOriginGroupId(exampleFrontdoorOriginGroup.id())
                        .forwardingProtocol("HttpsOnly")
                        .queryStringCachingBehavior("IncludeSpecifiedQueryStrings")
                        .queryStringParameters(                    
                            "foo",
                            "clientIp={client_ip}")
                        .compressionEnabled(true)
                        .cacheBehavior("OverrideIfOriginMissing")
                        .cacheDuration("365.23:59:59")
                        .build())
                    .urlRedirectAction(FrontdoorRuleActionsUrlRedirectActionArgs.builder()
                        .redirectType("PermanentRedirect")
                        .redirectProtocol("MatchRequest")
                        .queryString("clientIp={client_ip}")
                        .destinationPath("/exampleredirection")
                        .destinationHostname("contoso.com")
                        .destinationFragment("UrlRedirect")
                        .build())
                    .build())
                .conditions(FrontdoorRuleConditionsArgs.builder()
                    .hostNameConditions(FrontdoorRuleConditionsHostNameConditionArgs.builder()
                        .operator("Equal")
                        .negateCondition(false)
                        .matchValues(                    
                            "www.contoso.com",
                            "images.contoso.com",
                            "video.contoso.com")
                        .transforms(                    
                            "Lowercase",
                            "Trim")
                        .build())
                    .isDeviceConditions(FrontdoorRuleConditionsIsDeviceConditionArgs.builder()
                        .operator("Equal")
                        .negateCondition(false)
                        .matchValues("Mobile")
                        .build())
                    .postArgsConditions(FrontdoorRuleConditionsPostArgsConditionArgs.builder()
                        .postArgsName("customerName")
                        .operator("BeginsWith")
                        .matchValues(                    
                            "J",
                            "K")
                        .transforms("Uppercase")
                        .build())
                    .requestMethodConditions(FrontdoorRuleConditionsRequestMethodConditionArgs.builder()
                        .operator("Equal")
                        .negateCondition(false)
                        .matchValues("DELETE")
                        .build())
                    .urlFilenameConditions(FrontdoorRuleConditionsUrlFilenameConditionArgs.builder()
                        .operator("Equal")
                        .negateCondition(false)
                        .matchValues("media.mp4")
                        .transforms(                    
                            "Lowercase",
                            "RemoveNulls",
                            "Trim")
                        .build())
                    .build())
                .build(), CustomResourceOptions.builder()
                    .dependsOn(                
                        exampleFrontdoorOriginGroup,
                        exampleFrontdoorOrigin)
                    .build());
    
        }
    }
    
    resources:
      example:
        type: azure:core:ResourceGroup
        properties:
          name: example-cdn-frontdoor
          location: West Europe
      exampleFrontdoorProfile:
        type: azure:cdn:FrontdoorProfile
        name: example
        properties:
          name: example-profile
          resourceGroupName: ${example.name}
          skuName: Premium_AzureFrontDoor
      exampleFrontdoorEndpoint:
        type: azure:cdn:FrontdoorEndpoint
        name: example
        properties:
          name: example-endpoint
          cdnFrontdoorProfileId: ${exampleFrontdoorProfile.id}
          tags:
            endpoint: contoso.com
      exampleFrontdoorOriginGroup:
        type: azure:cdn:FrontdoorOriginGroup
        name: example
        properties:
          name: example-originGroup
          cdnFrontdoorProfileId: ${exampleFrontdoorProfile.id}
          sessionAffinityEnabled: true
          restoreTrafficTimeToHealedOrNewEndpointInMinutes: 10
          healthProbe:
            intervalInSeconds: 240
            path: /healthProbe
            protocol: Https
            requestType: GET
          loadBalancing:
            additionalLatencyInMilliseconds: 0
            sampleSize: 16
            successfulSamplesRequired: 3
      exampleFrontdoorOrigin:
        type: azure:cdn:FrontdoorOrigin
        name: example
        properties:
          name: example-origin
          cdnFrontdoorOriginGroupId: ${exampleFrontdoorOriginGroup.id}
          enabled: true
          certificateNameCheckEnabled: false
          hostName: ${exampleFrontdoorEndpoint.hostName}
          httpPort: 80
          httpsPort: 443
          originHostHeader: contoso.com
          priority: 1
          weight: 500
      exampleFrontdoorRuleSet:
        type: azure:cdn:FrontdoorRuleSet
        name: example
        properties:
          name: exampleruleset
          cdnFrontdoorProfileId: ${exampleFrontdoorProfile.id}
      exampleFrontdoorRule:
        type: azure:cdn:FrontdoorRule
        name: example
        properties:
          name: examplerule
          cdnFrontdoorRuleSetId: ${exampleFrontdoorRuleSet.id}
          order: 1
          behaviorOnMatch: Continue
          actions:
            routeConfigurationOverrideAction:
              cdnFrontdoorOriginGroupId: ${exampleFrontdoorOriginGroup.id}
              forwardingProtocol: HttpsOnly
              queryStringCachingBehavior: IncludeSpecifiedQueryStrings
              queryStringParameters:
                - foo
                - clientIp={client_ip}
              compressionEnabled: true
              cacheBehavior: OverrideIfOriginMissing
              cacheDuration: 365.23:59:59
            urlRedirectAction:
              redirectType: PermanentRedirect
              redirectProtocol: MatchRequest
              queryString: clientIp={client_ip}
              destinationPath: /exampleredirection
              destinationHostname: contoso.com
              destinationFragment: UrlRedirect
          conditions:
            hostNameConditions:
              - operator: Equal
                negateCondition: false
                matchValues:
                  - www.contoso.com
                  - images.contoso.com
                  - video.contoso.com
                transforms:
                  - Lowercase
                  - Trim
            isDeviceConditions:
              - operator: Equal
                negateCondition: false
                matchValues: Mobile
            postArgsConditions:
              - postArgsName: customerName
                operator: BeginsWith
                matchValues:
                  - J
                  - K
                transforms:
                  - Uppercase
            requestMethodConditions:
              - operator: Equal
                negateCondition: false
                matchValues:
                  - DELETE
            urlFilenameConditions:
              - operator: Equal
                negateCondition: false
                matchValues:
                  - media.mp4
                transforms:
                  - Lowercase
                  - RemoveNulls
                  - Trim
        options:
          dependson:
            - ${exampleFrontdoorOriginGroup}
            - ${exampleFrontdoorOrigin}
    

    Specifying IP Address Ranges

    When specifying IP address ranges in the socket_address_condition and the remote_address_condition match_values use the following format:

    Use CIDR notation when specifying IP address blocks. This means that the syntax for an IP address block is the base IP address followed by a forward slash and the prefix size For example:

    • IPv4 example: 5.5.5.64/26 matches any requests that arrive from addresses 5.5.5.64 through 5.5.5.127.
    • IPv6 example: 1:2:3:/48 matches any requests that arrive from addresses 1:2:3:0:0:0:0:0 through 1:2:3:ffff:ffff:ffff:ffff:ffff.

    When you specify multiple IP addresses and IP address blocks, OR logic is applied.

    • IPv4 example: if you add two IP addresses 1.2.3.4 and 10.20.30.40, the condition is matched for any requests that arrive from either address 1.2.3.4 or 10.20.30.40.
    • IPv6 example: if you add two IP addresses 1:2:3:4:5:6:7:8 and 10:20:30:40:50:60:70:80, the condition is matched for any requests that arrive from either address 1:2:3:4:5:6:7:8 or 10:20:30:40:50:60:70:80.

    Action Server Variables

    Rule Set server variables provide access to structured information about the request. You can use server variables to dynamically change the request/response headers or URL rewrite paths/query strings, for example, when a new page load or when a form is posted.

    Supported Action Server Variables

    Variable nameDescription
    socket_ipThe IP address of the direct connection to Front Door Profiles edge. If the client used an HTTP proxy or a load balancer to send the request, the value of socket_ip is the IP address of the proxy or load balancer.
    client_ipThe IP address of the client that made the original request. If there was an X-Forwarded-For header in the request, then the client IP address is picked from the header.
    client_portThe IP port of the client that made the request.
    hostnameThe host name in the request from the client.
    geo_countryIndicates the requester’s country/region of origin through its country/region code.
    http_methodThe method used to make the URL request, such as GET or POST.
    http_versionThe request protocol. Usually HTTP/1.0, HTTP/1.1, or HTTP/2.0.
    query_stringThe list of variable/value pairs that follows the “?” in the requested URL. For example, in the request http://contoso.com:8080/article.aspx?id=123&title=fabrikam, the query_string value will be id=123&title=fabrikam.
    request_schemeThe request scheme: http or https.
    request_uriThe full original request URI (with arguments). For example, in the request http://contoso.com:8080/article.aspx?id=123&title=fabrikam, the request_uri value will be /article.aspx?id=123&title=fabrikam.
    ssl_protocolThe protocol of an established TLS connection.
    server_portThe port of the server that accepted a request.
    url_pathIdentifies the specific resource in the host that the web client wants to access. This is the part of the request URI without the arguments. For example, in the request http://contoso.com:8080/article.aspx?id=123&title=fabrikam, the uri_path value will be /article.aspx.

    Action Server Variable Format

    Server variables can be specified using the following formats:

    • {variable} - Include the entire server variable. For example, if the client IP address is 111.222.333.444 then the {client_ip} token would evaluate to 111.222.333.444.

    • {variable:offset} - Include the server variable after a specific offset, until the end of the variable. The offset is zero-based. For example, if the client IP address is 111.222.333.444 then the {client_ip:3} token would evaluate to .222.333.444.

    • {variable:offset:length} - Include the server variable after a specific offset, up to the specified length. The offset is zero-based. For example, if the client IP address is 111.222.333.444 then the {client_ip:4:3} token would evaluate to 222.

    Action Server Variables Support

    Action Server variables are supported on the following actions:

    • route_configuration_override_action
    • request_header_action
    • response_header_action
    • url_redirect_action
    • url_rewrite_action

    Condition Operator list

    For rules that accept values from the standard operator list, the following operators are valid:

    OperatorDescriptionCondition Value
    AnyMatches when there is any value, regardless of what it is.Any
    EqualMatches when the value exactly matches the specified string.Equal
    ContainsMatches when the value contains the specified string.Contains
    Less ThanMatches when the length of the value is less than the specified integer.LessThan
    Greater ThanMatches when the length of the value is greater than the specified integer.GreaterThan
    Less Than or EqualMatches when the length of the value is less than or equal to the specified integer.LessThanOrEqual
    Greater Than or EqualMatches when the length of the value is greater than or equal to the specified integer.GreaterThanOrEqual
    Begins WithMatches when the value begins with the specified string.BeginsWith
    Ends WithMatches when the value ends with the specified string.EndsWith
    RegExMatches when the value matches the specified regular expression. See below for further details.RegEx
    Not AnyMatches when there is no value.Any and negateCondition = true
    Not EqualMatches when the value does not match the specified string.Equal and negateCondition : true
    Not ContainsMatches when the value does not contain the specified string.Contains and negateCondition = true
    Not Less ThanMatches when the length of the value is not less than the specified integer.LessThan and negateCondition = true
    Not Greater ThanMatches when the length of the value is not greater than the specified integer.GreaterThan and negateCondition = true
    Not Less Than or EqualMatches when the length of the value is not less than or equal to the specified integer.LessThanOrEqual and negateCondition = true
    Not Greater Than or EqualsMatches when the length of the value is not greater than or equal to the specified integer.GreaterThanOrEqual and negateCondition = true
    Not Begins WithMatches when the value does not begin with the specified string.BeginsWith and negateCondition = true
    Not Ends WithMatches when the value does not end with the specified string.EndsWith and negateCondition = true
    Not RegExMatches when the value does not match the specified regular expression. See Condition Regular Expressions for further details.RegEx and negateCondition = true

    Condition Regular Expressions

    Regular expressions don’t support the following operations:

    • Backreferences and capturing subexpressions.
    • Arbitrary zero-width assertions.
    • Subroutine references and recursive patterns.
    • Conditional patterns.
    • Backtracking control verbs.
    • The \C single-byte directive.
    • The \R newline match directive.
    • The \K start of match reset directive.
    • Callouts and embedded code.
    • Atomic grouping and possessive quantifiers.

    Condition Transform List

    For rules that can transform strings, the following transforms are valid:

    TransformDescription
    LowercaseConverts the string to the lowercase representation.
    UppercaseConverts the string to the uppercase representation.
    TrimTrims leading and trailing whitespace from the string.
    RemoveNullsRemoves null values from the string.
    URLEncodeURL-encodes the string.
    URLDecodeURL-decodes the string.

    Create FrontdoorRule Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new FrontdoorRule(name: string, args: FrontdoorRuleArgs, opts?: CustomResourceOptions);
    @overload
    def FrontdoorRule(resource_name: str,
                      args: FrontdoorRuleArgs,
                      opts: Optional[ResourceOptions] = None)
    
    @overload
    def FrontdoorRule(resource_name: str,
                      opts: Optional[ResourceOptions] = None,
                      actions: Optional[FrontdoorRuleActionsArgs] = None,
                      cdn_frontdoor_rule_set_id: Optional[str] = None,
                      order: Optional[int] = None,
                      behavior_on_match: Optional[str] = None,
                      conditions: Optional[FrontdoorRuleConditionsArgs] = None,
                      name: Optional[str] = None)
    func NewFrontdoorRule(ctx *Context, name string, args FrontdoorRuleArgs, opts ...ResourceOption) (*FrontdoorRule, error)
    public FrontdoorRule(string name, FrontdoorRuleArgs args, CustomResourceOptions? opts = null)
    public FrontdoorRule(String name, FrontdoorRuleArgs args)
    public FrontdoorRule(String name, FrontdoorRuleArgs args, CustomResourceOptions options)
    
    type: azure:cdn:FrontdoorRule
    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 FrontdoorRuleArgs
    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 FrontdoorRuleArgs
    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 FrontdoorRuleArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args FrontdoorRuleArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args FrontdoorRuleArgs
    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 frontdoorRuleResource = new Azure.Cdn.FrontdoorRule("frontdoorRuleResource", new()
    {
        Actions = new Azure.Cdn.Inputs.FrontdoorRuleActionsArgs
        {
            RequestHeaderActions = new[]
            {
                new Azure.Cdn.Inputs.FrontdoorRuleActionsRequestHeaderActionArgs
                {
                    HeaderAction = "string",
                    HeaderName = "string",
                    Value = "string",
                },
            },
            ResponseHeaderActions = new[]
            {
                new Azure.Cdn.Inputs.FrontdoorRuleActionsResponseHeaderActionArgs
                {
                    HeaderAction = "string",
                    HeaderName = "string",
                    Value = "string",
                },
            },
            RouteConfigurationOverrideAction = new Azure.Cdn.Inputs.FrontdoorRuleActionsRouteConfigurationOverrideActionArgs
            {
                CacheBehavior = "string",
                CacheDuration = "string",
                CdnFrontdoorOriginGroupId = "string",
                CompressionEnabled = false,
                ForwardingProtocol = "string",
                QueryStringCachingBehavior = "string",
                QueryStringParameters = new[]
                {
                    "string",
                },
            },
            UrlRedirectAction = new Azure.Cdn.Inputs.FrontdoorRuleActionsUrlRedirectActionArgs
            {
                DestinationHostname = "string",
                RedirectType = "string",
                DestinationFragment = "string",
                DestinationPath = "string",
                QueryString = "string",
                RedirectProtocol = "string",
            },
            UrlRewriteAction = new Azure.Cdn.Inputs.FrontdoorRuleActionsUrlRewriteActionArgs
            {
                Destination = "string",
                SourcePattern = "string",
                PreserveUnmatchedPath = false,
            },
        },
        CdnFrontdoorRuleSetId = "string",
        Order = 0,
        BehaviorOnMatch = "string",
        Conditions = new Azure.Cdn.Inputs.FrontdoorRuleConditionsArgs
        {
            ClientPortConditions = new[]
            {
                new Azure.Cdn.Inputs.FrontdoorRuleConditionsClientPortConditionArgs
                {
                    Operator = "string",
                    MatchValues = new[]
                    {
                        "string",
                    },
                    NegateCondition = false,
                },
            },
            CookiesConditions = new[]
            {
                new Azure.Cdn.Inputs.FrontdoorRuleConditionsCookiesConditionArgs
                {
                    CookieName = "string",
                    Operator = "string",
                    MatchValues = new[]
                    {
                        "string",
                    },
                    NegateCondition = false,
                    Transforms = new[]
                    {
                        "string",
                    },
                },
            },
            HostNameConditions = new[]
            {
                new Azure.Cdn.Inputs.FrontdoorRuleConditionsHostNameConditionArgs
                {
                    Operator = "string",
                    MatchValues = new[]
                    {
                        "string",
                    },
                    NegateCondition = false,
                    Transforms = new[]
                    {
                        "string",
                    },
                },
            },
            HttpVersionConditions = new[]
            {
                new Azure.Cdn.Inputs.FrontdoorRuleConditionsHttpVersionConditionArgs
                {
                    MatchValues = new[]
                    {
                        "string",
                    },
                    NegateCondition = false,
                    Operator = "string",
                },
            },
            IsDeviceConditions = new[]
            {
                new Azure.Cdn.Inputs.FrontdoorRuleConditionsIsDeviceConditionArgs
                {
                    MatchValues = "string",
                    NegateCondition = false,
                    Operator = "string",
                },
            },
            PostArgsConditions = new[]
            {
                new Azure.Cdn.Inputs.FrontdoorRuleConditionsPostArgsConditionArgs
                {
                    Operator = "string",
                    PostArgsName = "string",
                    MatchValues = new[]
                    {
                        "string",
                    },
                    NegateCondition = false,
                    Transforms = new[]
                    {
                        "string",
                    },
                },
            },
            QueryStringConditions = new[]
            {
                new Azure.Cdn.Inputs.FrontdoorRuleConditionsQueryStringConditionArgs
                {
                    Operator = "string",
                    MatchValues = new[]
                    {
                        "string",
                    },
                    NegateCondition = false,
                    Transforms = new[]
                    {
                        "string",
                    },
                },
            },
            RemoteAddressConditions = new[]
            {
                new Azure.Cdn.Inputs.FrontdoorRuleConditionsRemoteAddressConditionArgs
                {
                    MatchValues = new[]
                    {
                        "string",
                    },
                    NegateCondition = false,
                    Operator = "string",
                },
            },
            RequestBodyConditions = new[]
            {
                new Azure.Cdn.Inputs.FrontdoorRuleConditionsRequestBodyConditionArgs
                {
                    MatchValues = new[]
                    {
                        "string",
                    },
                    Operator = "string",
                    NegateCondition = false,
                    Transforms = new[]
                    {
                        "string",
                    },
                },
            },
            RequestHeaderConditions = new[]
            {
                new Azure.Cdn.Inputs.FrontdoorRuleConditionsRequestHeaderConditionArgs
                {
                    HeaderName = "string",
                    Operator = "string",
                    MatchValues = new[]
                    {
                        "string",
                    },
                    NegateCondition = false,
                    Transforms = new[]
                    {
                        "string",
                    },
                },
            },
            RequestMethodConditions = new[]
            {
                new Azure.Cdn.Inputs.FrontdoorRuleConditionsRequestMethodConditionArgs
                {
                    MatchValues = new[]
                    {
                        "string",
                    },
                    NegateCondition = false,
                    Operator = "string",
                },
            },
            RequestSchemeConditions = new[]
            {
                new Azure.Cdn.Inputs.FrontdoorRuleConditionsRequestSchemeConditionArgs
                {
                    MatchValues = "string",
                    NegateCondition = false,
                    Operator = "string",
                },
            },
            RequestUriConditions = new[]
            {
                new Azure.Cdn.Inputs.FrontdoorRuleConditionsRequestUriConditionArgs
                {
                    Operator = "string",
                    MatchValues = new[]
                    {
                        "string",
                    },
                    NegateCondition = false,
                    Transforms = new[]
                    {
                        "string",
                    },
                },
            },
            ServerPortConditions = new[]
            {
                new Azure.Cdn.Inputs.FrontdoorRuleConditionsServerPortConditionArgs
                {
                    MatchValues = new[]
                    {
                        "string",
                    },
                    Operator = "string",
                    NegateCondition = false,
                },
            },
            SocketAddressConditions = new[]
            {
                new Azure.Cdn.Inputs.FrontdoorRuleConditionsSocketAddressConditionArgs
                {
                    MatchValues = new[]
                    {
                        "string",
                    },
                    NegateCondition = false,
                    Operator = "string",
                },
            },
            SslProtocolConditions = new[]
            {
                new Azure.Cdn.Inputs.FrontdoorRuleConditionsSslProtocolConditionArgs
                {
                    MatchValues = new[]
                    {
                        "string",
                    },
                    NegateCondition = false,
                    Operator = "string",
                },
            },
            UrlFileExtensionConditions = new[]
            {
                new Azure.Cdn.Inputs.FrontdoorRuleConditionsUrlFileExtensionConditionArgs
                {
                    MatchValues = new[]
                    {
                        "string",
                    },
                    Operator = "string",
                    NegateCondition = false,
                    Transforms = new[]
                    {
                        "string",
                    },
                },
            },
            UrlFilenameConditions = new[]
            {
                new Azure.Cdn.Inputs.FrontdoorRuleConditionsUrlFilenameConditionArgs
                {
                    Operator = "string",
                    MatchValues = new[]
                    {
                        "string",
                    },
                    NegateCondition = false,
                    Transforms = new[]
                    {
                        "string",
                    },
                },
            },
            UrlPathConditions = new[]
            {
                new Azure.Cdn.Inputs.FrontdoorRuleConditionsUrlPathConditionArgs
                {
                    Operator = "string",
                    MatchValues = new[]
                    {
                        "string",
                    },
                    NegateCondition = false,
                    Transforms = new[]
                    {
                        "string",
                    },
                },
            },
        },
        Name = "string",
    });
    
    example, err := cdn.NewFrontdoorRule(ctx, "frontdoorRuleResource", &cdn.FrontdoorRuleArgs{
    	Actions: &cdn.FrontdoorRuleActionsArgs{
    		RequestHeaderActions: cdn.FrontdoorRuleActionsRequestHeaderActionArray{
    			&cdn.FrontdoorRuleActionsRequestHeaderActionArgs{
    				HeaderAction: pulumi.String("string"),
    				HeaderName:   pulumi.String("string"),
    				Value:        pulumi.String("string"),
    			},
    		},
    		ResponseHeaderActions: cdn.FrontdoorRuleActionsResponseHeaderActionArray{
    			&cdn.FrontdoorRuleActionsResponseHeaderActionArgs{
    				HeaderAction: pulumi.String("string"),
    				HeaderName:   pulumi.String("string"),
    				Value:        pulumi.String("string"),
    			},
    		},
    		RouteConfigurationOverrideAction: &cdn.FrontdoorRuleActionsRouteConfigurationOverrideActionArgs{
    			CacheBehavior:              pulumi.String("string"),
    			CacheDuration:              pulumi.String("string"),
    			CdnFrontdoorOriginGroupId:  pulumi.String("string"),
    			CompressionEnabled:         pulumi.Bool(false),
    			ForwardingProtocol:         pulumi.String("string"),
    			QueryStringCachingBehavior: pulumi.String("string"),
    			QueryStringParameters: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    		},
    		UrlRedirectAction: &cdn.FrontdoorRuleActionsUrlRedirectActionArgs{
    			DestinationHostname: pulumi.String("string"),
    			RedirectType:        pulumi.String("string"),
    			DestinationFragment: pulumi.String("string"),
    			DestinationPath:     pulumi.String("string"),
    			QueryString:         pulumi.String("string"),
    			RedirectProtocol:    pulumi.String("string"),
    		},
    		UrlRewriteAction: &cdn.FrontdoorRuleActionsUrlRewriteActionArgs{
    			Destination:           pulumi.String("string"),
    			SourcePattern:         pulumi.String("string"),
    			PreserveUnmatchedPath: pulumi.Bool(false),
    		},
    	},
    	CdnFrontdoorRuleSetId: pulumi.String("string"),
    	Order:                 pulumi.Int(0),
    	BehaviorOnMatch:       pulumi.String("string"),
    	Conditions: &cdn.FrontdoorRuleConditionsArgs{
    		ClientPortConditions: cdn.FrontdoorRuleConditionsClientPortConditionArray{
    			&cdn.FrontdoorRuleConditionsClientPortConditionArgs{
    				Operator: pulumi.String("string"),
    				MatchValues: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				NegateCondition: pulumi.Bool(false),
    			},
    		},
    		CookiesConditions: cdn.FrontdoorRuleConditionsCookiesConditionArray{
    			&cdn.FrontdoorRuleConditionsCookiesConditionArgs{
    				CookieName: pulumi.String("string"),
    				Operator:   pulumi.String("string"),
    				MatchValues: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				NegateCondition: pulumi.Bool(false),
    				Transforms: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    			},
    		},
    		HostNameConditions: cdn.FrontdoorRuleConditionsHostNameConditionArray{
    			&cdn.FrontdoorRuleConditionsHostNameConditionArgs{
    				Operator: pulumi.String("string"),
    				MatchValues: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				NegateCondition: pulumi.Bool(false),
    				Transforms: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    			},
    		},
    		HttpVersionConditions: cdn.FrontdoorRuleConditionsHttpVersionConditionArray{
    			&cdn.FrontdoorRuleConditionsHttpVersionConditionArgs{
    				MatchValues: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				NegateCondition: pulumi.Bool(false),
    				Operator:        pulumi.String("string"),
    			},
    		},
    		IsDeviceConditions: cdn.FrontdoorRuleConditionsIsDeviceConditionArray{
    			&cdn.FrontdoorRuleConditionsIsDeviceConditionArgs{
    				MatchValues:     pulumi.String("string"),
    				NegateCondition: pulumi.Bool(false),
    				Operator:        pulumi.String("string"),
    			},
    		},
    		PostArgsConditions: cdn.FrontdoorRuleConditionsPostArgsConditionArray{
    			&cdn.FrontdoorRuleConditionsPostArgsConditionArgs{
    				Operator:     pulumi.String("string"),
    				PostArgsName: pulumi.String("string"),
    				MatchValues: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				NegateCondition: pulumi.Bool(false),
    				Transforms: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    			},
    		},
    		QueryStringConditions: cdn.FrontdoorRuleConditionsQueryStringConditionArray{
    			&cdn.FrontdoorRuleConditionsQueryStringConditionArgs{
    				Operator: pulumi.String("string"),
    				MatchValues: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				NegateCondition: pulumi.Bool(false),
    				Transforms: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    			},
    		},
    		RemoteAddressConditions: cdn.FrontdoorRuleConditionsRemoteAddressConditionArray{
    			&cdn.FrontdoorRuleConditionsRemoteAddressConditionArgs{
    				MatchValues: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				NegateCondition: pulumi.Bool(false),
    				Operator:        pulumi.String("string"),
    			},
    		},
    		RequestBodyConditions: cdn.FrontdoorRuleConditionsRequestBodyConditionArray{
    			&cdn.FrontdoorRuleConditionsRequestBodyConditionArgs{
    				MatchValues: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				Operator:        pulumi.String("string"),
    				NegateCondition: pulumi.Bool(false),
    				Transforms: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    			},
    		},
    		RequestHeaderConditions: cdn.FrontdoorRuleConditionsRequestHeaderConditionArray{
    			&cdn.FrontdoorRuleConditionsRequestHeaderConditionArgs{
    				HeaderName: pulumi.String("string"),
    				Operator:   pulumi.String("string"),
    				MatchValues: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				NegateCondition: pulumi.Bool(false),
    				Transforms: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    			},
    		},
    		RequestMethodConditions: cdn.FrontdoorRuleConditionsRequestMethodConditionArray{
    			&cdn.FrontdoorRuleConditionsRequestMethodConditionArgs{
    				MatchValues: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				NegateCondition: pulumi.Bool(false),
    				Operator:        pulumi.String("string"),
    			},
    		},
    		RequestSchemeConditions: cdn.FrontdoorRuleConditionsRequestSchemeConditionArray{
    			&cdn.FrontdoorRuleConditionsRequestSchemeConditionArgs{
    				MatchValues:     pulumi.String("string"),
    				NegateCondition: pulumi.Bool(false),
    				Operator:        pulumi.String("string"),
    			},
    		},
    		RequestUriConditions: cdn.FrontdoorRuleConditionsRequestUriConditionArray{
    			&cdn.FrontdoorRuleConditionsRequestUriConditionArgs{
    				Operator: pulumi.String("string"),
    				MatchValues: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				NegateCondition: pulumi.Bool(false),
    				Transforms: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    			},
    		},
    		ServerPortConditions: cdn.FrontdoorRuleConditionsServerPortConditionArray{
    			&cdn.FrontdoorRuleConditionsServerPortConditionArgs{
    				MatchValues: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				Operator:        pulumi.String("string"),
    				NegateCondition: pulumi.Bool(false),
    			},
    		},
    		SocketAddressConditions: cdn.FrontdoorRuleConditionsSocketAddressConditionArray{
    			&cdn.FrontdoorRuleConditionsSocketAddressConditionArgs{
    				MatchValues: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				NegateCondition: pulumi.Bool(false),
    				Operator:        pulumi.String("string"),
    			},
    		},
    		SslProtocolConditions: cdn.FrontdoorRuleConditionsSslProtocolConditionArray{
    			&cdn.FrontdoorRuleConditionsSslProtocolConditionArgs{
    				MatchValues: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				NegateCondition: pulumi.Bool(false),
    				Operator:        pulumi.String("string"),
    			},
    		},
    		UrlFileExtensionConditions: cdn.FrontdoorRuleConditionsUrlFileExtensionConditionArray{
    			&cdn.FrontdoorRuleConditionsUrlFileExtensionConditionArgs{
    				MatchValues: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				Operator:        pulumi.String("string"),
    				NegateCondition: pulumi.Bool(false),
    				Transforms: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    			},
    		},
    		UrlFilenameConditions: cdn.FrontdoorRuleConditionsUrlFilenameConditionArray{
    			&cdn.FrontdoorRuleConditionsUrlFilenameConditionArgs{
    				Operator: pulumi.String("string"),
    				MatchValues: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				NegateCondition: pulumi.Bool(false),
    				Transforms: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    			},
    		},
    		UrlPathConditions: cdn.FrontdoorRuleConditionsUrlPathConditionArray{
    			&cdn.FrontdoorRuleConditionsUrlPathConditionArgs{
    				Operator: pulumi.String("string"),
    				MatchValues: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				NegateCondition: pulumi.Bool(false),
    				Transforms: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    			},
    		},
    	},
    	Name: pulumi.String("string"),
    })
    
    var frontdoorRuleResource = new FrontdoorRule("frontdoorRuleResource", FrontdoorRuleArgs.builder()
        .actions(FrontdoorRuleActionsArgs.builder()
            .requestHeaderActions(FrontdoorRuleActionsRequestHeaderActionArgs.builder()
                .headerAction("string")
                .headerName("string")
                .value("string")
                .build())
            .responseHeaderActions(FrontdoorRuleActionsResponseHeaderActionArgs.builder()
                .headerAction("string")
                .headerName("string")
                .value("string")
                .build())
            .routeConfigurationOverrideAction(FrontdoorRuleActionsRouteConfigurationOverrideActionArgs.builder()
                .cacheBehavior("string")
                .cacheDuration("string")
                .cdnFrontdoorOriginGroupId("string")
                .compressionEnabled(false)
                .forwardingProtocol("string")
                .queryStringCachingBehavior("string")
                .queryStringParameters("string")
                .build())
            .urlRedirectAction(FrontdoorRuleActionsUrlRedirectActionArgs.builder()
                .destinationHostname("string")
                .redirectType("string")
                .destinationFragment("string")
                .destinationPath("string")
                .queryString("string")
                .redirectProtocol("string")
                .build())
            .urlRewriteAction(FrontdoorRuleActionsUrlRewriteActionArgs.builder()
                .destination("string")
                .sourcePattern("string")
                .preserveUnmatchedPath(false)
                .build())
            .build())
        .cdnFrontdoorRuleSetId("string")
        .order(0)
        .behaviorOnMatch("string")
        .conditions(FrontdoorRuleConditionsArgs.builder()
            .clientPortConditions(FrontdoorRuleConditionsClientPortConditionArgs.builder()
                .operator("string")
                .matchValues("string")
                .negateCondition(false)
                .build())
            .cookiesConditions(FrontdoorRuleConditionsCookiesConditionArgs.builder()
                .cookieName("string")
                .operator("string")
                .matchValues("string")
                .negateCondition(false)
                .transforms("string")
                .build())
            .hostNameConditions(FrontdoorRuleConditionsHostNameConditionArgs.builder()
                .operator("string")
                .matchValues("string")
                .negateCondition(false)
                .transforms("string")
                .build())
            .httpVersionConditions(FrontdoorRuleConditionsHttpVersionConditionArgs.builder()
                .matchValues("string")
                .negateCondition(false)
                .operator("string")
                .build())
            .isDeviceConditions(FrontdoorRuleConditionsIsDeviceConditionArgs.builder()
                .matchValues("string")
                .negateCondition(false)
                .operator("string")
                .build())
            .postArgsConditions(FrontdoorRuleConditionsPostArgsConditionArgs.builder()
                .operator("string")
                .postArgsName("string")
                .matchValues("string")
                .negateCondition(false)
                .transforms("string")
                .build())
            .queryStringConditions(FrontdoorRuleConditionsQueryStringConditionArgs.builder()
                .operator("string")
                .matchValues("string")
                .negateCondition(false)
                .transforms("string")
                .build())
            .remoteAddressConditions(FrontdoorRuleConditionsRemoteAddressConditionArgs.builder()
                .matchValues("string")
                .negateCondition(false)
                .operator("string")
                .build())
            .requestBodyConditions(FrontdoorRuleConditionsRequestBodyConditionArgs.builder()
                .matchValues("string")
                .operator("string")
                .negateCondition(false)
                .transforms("string")
                .build())
            .requestHeaderConditions(FrontdoorRuleConditionsRequestHeaderConditionArgs.builder()
                .headerName("string")
                .operator("string")
                .matchValues("string")
                .negateCondition(false)
                .transforms("string")
                .build())
            .requestMethodConditions(FrontdoorRuleConditionsRequestMethodConditionArgs.builder()
                .matchValues("string")
                .negateCondition(false)
                .operator("string")
                .build())
            .requestSchemeConditions(FrontdoorRuleConditionsRequestSchemeConditionArgs.builder()
                .matchValues("string")
                .negateCondition(false)
                .operator("string")
                .build())
            .requestUriConditions(FrontdoorRuleConditionsRequestUriConditionArgs.builder()
                .operator("string")
                .matchValues("string")
                .negateCondition(false)
                .transforms("string")
                .build())
            .serverPortConditions(FrontdoorRuleConditionsServerPortConditionArgs.builder()
                .matchValues("string")
                .operator("string")
                .negateCondition(false)
                .build())
            .socketAddressConditions(FrontdoorRuleConditionsSocketAddressConditionArgs.builder()
                .matchValues("string")
                .negateCondition(false)
                .operator("string")
                .build())
            .sslProtocolConditions(FrontdoorRuleConditionsSslProtocolConditionArgs.builder()
                .matchValues("string")
                .negateCondition(false)
                .operator("string")
                .build())
            .urlFileExtensionConditions(FrontdoorRuleConditionsUrlFileExtensionConditionArgs.builder()
                .matchValues("string")
                .operator("string")
                .negateCondition(false)
                .transforms("string")
                .build())
            .urlFilenameConditions(FrontdoorRuleConditionsUrlFilenameConditionArgs.builder()
                .operator("string")
                .matchValues("string")
                .negateCondition(false)
                .transforms("string")
                .build())
            .urlPathConditions(FrontdoorRuleConditionsUrlPathConditionArgs.builder()
                .operator("string")
                .matchValues("string")
                .negateCondition(false)
                .transforms("string")
                .build())
            .build())
        .name("string")
        .build());
    
    frontdoor_rule_resource = azure.cdn.FrontdoorRule("frontdoorRuleResource",
        actions=azure.cdn.FrontdoorRuleActionsArgs(
            request_header_actions=[azure.cdn.FrontdoorRuleActionsRequestHeaderActionArgs(
                header_action="string",
                header_name="string",
                value="string",
            )],
            response_header_actions=[azure.cdn.FrontdoorRuleActionsResponseHeaderActionArgs(
                header_action="string",
                header_name="string",
                value="string",
            )],
            route_configuration_override_action=azure.cdn.FrontdoorRuleActionsRouteConfigurationOverrideActionArgs(
                cache_behavior="string",
                cache_duration="string",
                cdn_frontdoor_origin_group_id="string",
                compression_enabled=False,
                forwarding_protocol="string",
                query_string_caching_behavior="string",
                query_string_parameters=["string"],
            ),
            url_redirect_action=azure.cdn.FrontdoorRuleActionsUrlRedirectActionArgs(
                destination_hostname="string",
                redirect_type="string",
                destination_fragment="string",
                destination_path="string",
                query_string="string",
                redirect_protocol="string",
            ),
            url_rewrite_action=azure.cdn.FrontdoorRuleActionsUrlRewriteActionArgs(
                destination="string",
                source_pattern="string",
                preserve_unmatched_path=False,
            ),
        ),
        cdn_frontdoor_rule_set_id="string",
        order=0,
        behavior_on_match="string",
        conditions=azure.cdn.FrontdoorRuleConditionsArgs(
            client_port_conditions=[azure.cdn.FrontdoorRuleConditionsClientPortConditionArgs(
                operator="string",
                match_values=["string"],
                negate_condition=False,
            )],
            cookies_conditions=[azure.cdn.FrontdoorRuleConditionsCookiesConditionArgs(
                cookie_name="string",
                operator="string",
                match_values=["string"],
                negate_condition=False,
                transforms=["string"],
            )],
            host_name_conditions=[azure.cdn.FrontdoorRuleConditionsHostNameConditionArgs(
                operator="string",
                match_values=["string"],
                negate_condition=False,
                transforms=["string"],
            )],
            http_version_conditions=[azure.cdn.FrontdoorRuleConditionsHttpVersionConditionArgs(
                match_values=["string"],
                negate_condition=False,
                operator="string",
            )],
            is_device_conditions=[azure.cdn.FrontdoorRuleConditionsIsDeviceConditionArgs(
                match_values="string",
                negate_condition=False,
                operator="string",
            )],
            post_args_conditions=[azure.cdn.FrontdoorRuleConditionsPostArgsConditionArgs(
                operator="string",
                post_args_name="string",
                match_values=["string"],
                negate_condition=False,
                transforms=["string"],
            )],
            query_string_conditions=[azure.cdn.FrontdoorRuleConditionsQueryStringConditionArgs(
                operator="string",
                match_values=["string"],
                negate_condition=False,
                transforms=["string"],
            )],
            remote_address_conditions=[azure.cdn.FrontdoorRuleConditionsRemoteAddressConditionArgs(
                match_values=["string"],
                negate_condition=False,
                operator="string",
            )],
            request_body_conditions=[azure.cdn.FrontdoorRuleConditionsRequestBodyConditionArgs(
                match_values=["string"],
                operator="string",
                negate_condition=False,
                transforms=["string"],
            )],
            request_header_conditions=[azure.cdn.FrontdoorRuleConditionsRequestHeaderConditionArgs(
                header_name="string",
                operator="string",
                match_values=["string"],
                negate_condition=False,
                transforms=["string"],
            )],
            request_method_conditions=[azure.cdn.FrontdoorRuleConditionsRequestMethodConditionArgs(
                match_values=["string"],
                negate_condition=False,
                operator="string",
            )],
            request_scheme_conditions=[azure.cdn.FrontdoorRuleConditionsRequestSchemeConditionArgs(
                match_values="string",
                negate_condition=False,
                operator="string",
            )],
            request_uri_conditions=[azure.cdn.FrontdoorRuleConditionsRequestUriConditionArgs(
                operator="string",
                match_values=["string"],
                negate_condition=False,
                transforms=["string"],
            )],
            server_port_conditions=[azure.cdn.FrontdoorRuleConditionsServerPortConditionArgs(
                match_values=["string"],
                operator="string",
                negate_condition=False,
            )],
            socket_address_conditions=[azure.cdn.FrontdoorRuleConditionsSocketAddressConditionArgs(
                match_values=["string"],
                negate_condition=False,
                operator="string",
            )],
            ssl_protocol_conditions=[azure.cdn.FrontdoorRuleConditionsSslProtocolConditionArgs(
                match_values=["string"],
                negate_condition=False,
                operator="string",
            )],
            url_file_extension_conditions=[azure.cdn.FrontdoorRuleConditionsUrlFileExtensionConditionArgs(
                match_values=["string"],
                operator="string",
                negate_condition=False,
                transforms=["string"],
            )],
            url_filename_conditions=[azure.cdn.FrontdoorRuleConditionsUrlFilenameConditionArgs(
                operator="string",
                match_values=["string"],
                negate_condition=False,
                transforms=["string"],
            )],
            url_path_conditions=[azure.cdn.FrontdoorRuleConditionsUrlPathConditionArgs(
                operator="string",
                match_values=["string"],
                negate_condition=False,
                transforms=["string"],
            )],
        ),
        name="string")
    
    const frontdoorRuleResource = new azure.cdn.FrontdoorRule("frontdoorRuleResource", {
        actions: {
            requestHeaderActions: [{
                headerAction: "string",
                headerName: "string",
                value: "string",
            }],
            responseHeaderActions: [{
                headerAction: "string",
                headerName: "string",
                value: "string",
            }],
            routeConfigurationOverrideAction: {
                cacheBehavior: "string",
                cacheDuration: "string",
                cdnFrontdoorOriginGroupId: "string",
                compressionEnabled: false,
                forwardingProtocol: "string",
                queryStringCachingBehavior: "string",
                queryStringParameters: ["string"],
            },
            urlRedirectAction: {
                destinationHostname: "string",
                redirectType: "string",
                destinationFragment: "string",
                destinationPath: "string",
                queryString: "string",
                redirectProtocol: "string",
            },
            urlRewriteAction: {
                destination: "string",
                sourcePattern: "string",
                preserveUnmatchedPath: false,
            },
        },
        cdnFrontdoorRuleSetId: "string",
        order: 0,
        behaviorOnMatch: "string",
        conditions: {
            clientPortConditions: [{
                operator: "string",
                matchValues: ["string"],
                negateCondition: false,
            }],
            cookiesConditions: [{
                cookieName: "string",
                operator: "string",
                matchValues: ["string"],
                negateCondition: false,
                transforms: ["string"],
            }],
            hostNameConditions: [{
                operator: "string",
                matchValues: ["string"],
                negateCondition: false,
                transforms: ["string"],
            }],
            httpVersionConditions: [{
                matchValues: ["string"],
                negateCondition: false,
                operator: "string",
            }],
            isDeviceConditions: [{
                matchValues: "string",
                negateCondition: false,
                operator: "string",
            }],
            postArgsConditions: [{
                operator: "string",
                postArgsName: "string",
                matchValues: ["string"],
                negateCondition: false,
                transforms: ["string"],
            }],
            queryStringConditions: [{
                operator: "string",
                matchValues: ["string"],
                negateCondition: false,
                transforms: ["string"],
            }],
            remoteAddressConditions: [{
                matchValues: ["string"],
                negateCondition: false,
                operator: "string",
            }],
            requestBodyConditions: [{
                matchValues: ["string"],
                operator: "string",
                negateCondition: false,
                transforms: ["string"],
            }],
            requestHeaderConditions: [{
                headerName: "string",
                operator: "string",
                matchValues: ["string"],
                negateCondition: false,
                transforms: ["string"],
            }],
            requestMethodConditions: [{
                matchValues: ["string"],
                negateCondition: false,
                operator: "string",
            }],
            requestSchemeConditions: [{
                matchValues: "string",
                negateCondition: false,
                operator: "string",
            }],
            requestUriConditions: [{
                operator: "string",
                matchValues: ["string"],
                negateCondition: false,
                transforms: ["string"],
            }],
            serverPortConditions: [{
                matchValues: ["string"],
                operator: "string",
                negateCondition: false,
            }],
            socketAddressConditions: [{
                matchValues: ["string"],
                negateCondition: false,
                operator: "string",
            }],
            sslProtocolConditions: [{
                matchValues: ["string"],
                negateCondition: false,
                operator: "string",
            }],
            urlFileExtensionConditions: [{
                matchValues: ["string"],
                operator: "string",
                negateCondition: false,
                transforms: ["string"],
            }],
            urlFilenameConditions: [{
                operator: "string",
                matchValues: ["string"],
                negateCondition: false,
                transforms: ["string"],
            }],
            urlPathConditions: [{
                operator: "string",
                matchValues: ["string"],
                negateCondition: false,
                transforms: ["string"],
            }],
        },
        name: "string",
    });
    
    type: azure:cdn:FrontdoorRule
    properties:
        actions:
            requestHeaderActions:
                - headerAction: string
                  headerName: string
                  value: string
            responseHeaderActions:
                - headerAction: string
                  headerName: string
                  value: string
            routeConfigurationOverrideAction:
                cacheBehavior: string
                cacheDuration: string
                cdnFrontdoorOriginGroupId: string
                compressionEnabled: false
                forwardingProtocol: string
                queryStringCachingBehavior: string
                queryStringParameters:
                    - string
            urlRedirectAction:
                destinationFragment: string
                destinationHostname: string
                destinationPath: string
                queryString: string
                redirectProtocol: string
                redirectType: string
            urlRewriteAction:
                destination: string
                preserveUnmatchedPath: false
                sourcePattern: string
        behaviorOnMatch: string
        cdnFrontdoorRuleSetId: string
        conditions:
            clientPortConditions:
                - matchValues:
                    - string
                  negateCondition: false
                  operator: string
            cookiesConditions:
                - cookieName: string
                  matchValues:
                    - string
                  negateCondition: false
                  operator: string
                  transforms:
                    - string
            hostNameConditions:
                - matchValues:
                    - string
                  negateCondition: false
                  operator: string
                  transforms:
                    - string
            httpVersionConditions:
                - matchValues:
                    - string
                  negateCondition: false
                  operator: string
            isDeviceConditions:
                - matchValues: string
                  negateCondition: false
                  operator: string
            postArgsConditions:
                - matchValues:
                    - string
                  negateCondition: false
                  operator: string
                  postArgsName: string
                  transforms:
                    - string
            queryStringConditions:
                - matchValues:
                    - string
                  negateCondition: false
                  operator: string
                  transforms:
                    - string
            remoteAddressConditions:
                - matchValues:
                    - string
                  negateCondition: false
                  operator: string
            requestBodyConditions:
                - matchValues:
                    - string
                  negateCondition: false
                  operator: string
                  transforms:
                    - string
            requestHeaderConditions:
                - headerName: string
                  matchValues:
                    - string
                  negateCondition: false
                  operator: string
                  transforms:
                    - string
            requestMethodConditions:
                - matchValues:
                    - string
                  negateCondition: false
                  operator: string
            requestSchemeConditions:
                - matchValues: string
                  negateCondition: false
                  operator: string
            requestUriConditions:
                - matchValues:
                    - string
                  negateCondition: false
                  operator: string
                  transforms:
                    - string
            serverPortConditions:
                - matchValues:
                    - string
                  negateCondition: false
                  operator: string
            socketAddressConditions:
                - matchValues:
                    - string
                  negateCondition: false
                  operator: string
            sslProtocolConditions:
                - matchValues:
                    - string
                  negateCondition: false
                  operator: string
            urlFileExtensionConditions:
                - matchValues:
                    - string
                  negateCondition: false
                  operator: string
                  transforms:
                    - string
            urlFilenameConditions:
                - matchValues:
                    - string
                  negateCondition: false
                  operator: string
                  transforms:
                    - string
            urlPathConditions:
                - matchValues:
                    - string
                  negateCondition: false
                  operator: string
                  transforms:
                    - string
        name: string
        order: 0
    

    FrontdoorRule Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    The FrontdoorRule resource accepts the following input properties:

    Actions FrontdoorRuleActions
    An actions block as defined below.
    CdnFrontdoorRuleSetId string
    The resource ID of the Front Door Rule Set for this Front Door Rule. Changing this forces a new Front Door Rule to be created.
    Order int

    The order in which the rules will be applied for the Front Door Endpoint. The order value should be sequential and begin at 1(e.g. 1, 2, 3...). A Front Door Rule with a lesser order value will be applied before a rule with a greater order value.

    ->NOTE: If the Front Door Rule has an order value of 0 they do not require any conditions and the actions will always be applied.

    BehaviorOnMatch string
    If this rule is a match should the rules engine continue processing the remaining rules or stop? Possible values are Continue and Stop. Defaults to Continue.
    Conditions FrontdoorRuleConditions
    A conditions block as defined below.
    Name string
    The name which should be used for this Front Door Rule. Possible values must be between 1 and 260 characters in length, begin with a letter and may contain only letters and numbers. Changing this forces a new Front Door Rule to be created.
    Actions FrontdoorRuleActionsArgs
    An actions block as defined below.
    CdnFrontdoorRuleSetId string
    The resource ID of the Front Door Rule Set for this Front Door Rule. Changing this forces a new Front Door Rule to be created.
    Order int

    The order in which the rules will be applied for the Front Door Endpoint. The order value should be sequential and begin at 1(e.g. 1, 2, 3...). A Front Door Rule with a lesser order value will be applied before a rule with a greater order value.

    ->NOTE: If the Front Door Rule has an order value of 0 they do not require any conditions and the actions will always be applied.

    BehaviorOnMatch string
    If this rule is a match should the rules engine continue processing the remaining rules or stop? Possible values are Continue and Stop. Defaults to Continue.
    Conditions FrontdoorRuleConditionsArgs
    A conditions block as defined below.
    Name string
    The name which should be used for this Front Door Rule. Possible values must be between 1 and 260 characters in length, begin with a letter and may contain only letters and numbers. Changing this forces a new Front Door Rule to be created.
    actions FrontdoorRuleActions
    An actions block as defined below.
    cdnFrontdoorRuleSetId String
    The resource ID of the Front Door Rule Set for this Front Door Rule. Changing this forces a new Front Door Rule to be created.
    order Integer

    The order in which the rules will be applied for the Front Door Endpoint. The order value should be sequential and begin at 1(e.g. 1, 2, 3...). A Front Door Rule with a lesser order value will be applied before a rule with a greater order value.

    ->NOTE: If the Front Door Rule has an order value of 0 they do not require any conditions and the actions will always be applied.

    behaviorOnMatch String
    If this rule is a match should the rules engine continue processing the remaining rules or stop? Possible values are Continue and Stop. Defaults to Continue.
    conditions FrontdoorRuleConditions
    A conditions block as defined below.
    name String
    The name which should be used for this Front Door Rule. Possible values must be between 1 and 260 characters in length, begin with a letter and may contain only letters and numbers. Changing this forces a new Front Door Rule to be created.
    actions FrontdoorRuleActions
    An actions block as defined below.
    cdnFrontdoorRuleSetId string
    The resource ID of the Front Door Rule Set for this Front Door Rule. Changing this forces a new Front Door Rule to be created.
    order number

    The order in which the rules will be applied for the Front Door Endpoint. The order value should be sequential and begin at 1(e.g. 1, 2, 3...). A Front Door Rule with a lesser order value will be applied before a rule with a greater order value.

    ->NOTE: If the Front Door Rule has an order value of 0 they do not require any conditions and the actions will always be applied.

    behaviorOnMatch string
    If this rule is a match should the rules engine continue processing the remaining rules or stop? Possible values are Continue and Stop. Defaults to Continue.
    conditions FrontdoorRuleConditions
    A conditions block as defined below.
    name string
    The name which should be used for this Front Door Rule. Possible values must be between 1 and 260 characters in length, begin with a letter and may contain only letters and numbers. Changing this forces a new Front Door Rule to be created.
    actions FrontdoorRuleActionsArgs
    An actions block as defined below.
    cdn_frontdoor_rule_set_id str
    The resource ID of the Front Door Rule Set for this Front Door Rule. Changing this forces a new Front Door Rule to be created.
    order int

    The order in which the rules will be applied for the Front Door Endpoint. The order value should be sequential and begin at 1(e.g. 1, 2, 3...). A Front Door Rule with a lesser order value will be applied before a rule with a greater order value.

    ->NOTE: If the Front Door Rule has an order value of 0 they do not require any conditions and the actions will always be applied.

    behavior_on_match str
    If this rule is a match should the rules engine continue processing the remaining rules or stop? Possible values are Continue and Stop. Defaults to Continue.
    conditions FrontdoorRuleConditionsArgs
    A conditions block as defined below.
    name str
    The name which should be used for this Front Door Rule. Possible values must be between 1 and 260 characters in length, begin with a letter and may contain only letters and numbers. Changing this forces a new Front Door Rule to be created.
    actions Property Map
    An actions block as defined below.
    cdnFrontdoorRuleSetId String
    The resource ID of the Front Door Rule Set for this Front Door Rule. Changing this forces a new Front Door Rule to be created.
    order Number

    The order in which the rules will be applied for the Front Door Endpoint. The order value should be sequential and begin at 1(e.g. 1, 2, 3...). A Front Door Rule with a lesser order value will be applied before a rule with a greater order value.

    ->NOTE: If the Front Door Rule has an order value of 0 they do not require any conditions and the actions will always be applied.

    behaviorOnMatch String
    If this rule is a match should the rules engine continue processing the remaining rules or stop? Possible values are Continue and Stop. Defaults to Continue.
    conditions Property Map
    A conditions block as defined below.
    name String
    The name which should be used for this Front Door Rule. Possible values must be between 1 and 260 characters in length, begin with a letter and may contain only letters and numbers. Changing this forces a new Front Door Rule to be created.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the FrontdoorRule resource produces the following output properties:

    CdnFrontdoorRuleSetName string
    The name of the Front Door Rule Set containing this Front Door Rule.
    Id string
    The provider-assigned unique ID for this managed resource.
    CdnFrontdoorRuleSetName string
    The name of the Front Door Rule Set containing this Front Door Rule.
    Id string
    The provider-assigned unique ID for this managed resource.
    cdnFrontdoorRuleSetName String
    The name of the Front Door Rule Set containing this Front Door Rule.
    id String
    The provider-assigned unique ID for this managed resource.
    cdnFrontdoorRuleSetName string
    The name of the Front Door Rule Set containing this Front Door Rule.
    id string
    The provider-assigned unique ID for this managed resource.
    cdn_frontdoor_rule_set_name str
    The name of the Front Door Rule Set containing this Front Door Rule.
    id str
    The provider-assigned unique ID for this managed resource.
    cdnFrontdoorRuleSetName String
    The name of the Front Door Rule Set containing this Front Door Rule.
    id String
    The provider-assigned unique ID for this managed resource.

    Look up Existing FrontdoorRule Resource

    Get an existing FrontdoorRule 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?: FrontdoorRuleState, opts?: CustomResourceOptions): FrontdoorRule
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            actions: Optional[FrontdoorRuleActionsArgs] = None,
            behavior_on_match: Optional[str] = None,
            cdn_frontdoor_rule_set_id: Optional[str] = None,
            cdn_frontdoor_rule_set_name: Optional[str] = None,
            conditions: Optional[FrontdoorRuleConditionsArgs] = None,
            name: Optional[str] = None,
            order: Optional[int] = None) -> FrontdoorRule
    func GetFrontdoorRule(ctx *Context, name string, id IDInput, state *FrontdoorRuleState, opts ...ResourceOption) (*FrontdoorRule, error)
    public static FrontdoorRule Get(string name, Input<string> id, FrontdoorRuleState? state, CustomResourceOptions? opts = null)
    public static FrontdoorRule get(String name, Output<String> id, FrontdoorRuleState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    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.
    The following state arguments are supported:
    Actions FrontdoorRuleActions
    An actions block as defined below.
    BehaviorOnMatch string
    If this rule is a match should the rules engine continue processing the remaining rules or stop? Possible values are Continue and Stop. Defaults to Continue.
    CdnFrontdoorRuleSetId string
    The resource ID of the Front Door Rule Set for this Front Door Rule. Changing this forces a new Front Door Rule to be created.
    CdnFrontdoorRuleSetName string
    The name of the Front Door Rule Set containing this Front Door Rule.
    Conditions FrontdoorRuleConditions
    A conditions block as defined below.
    Name string
    The name which should be used for this Front Door Rule. Possible values must be between 1 and 260 characters in length, begin with a letter and may contain only letters and numbers. Changing this forces a new Front Door Rule to be created.
    Order int

    The order in which the rules will be applied for the Front Door Endpoint. The order value should be sequential and begin at 1(e.g. 1, 2, 3...). A Front Door Rule with a lesser order value will be applied before a rule with a greater order value.

    ->NOTE: If the Front Door Rule has an order value of 0 they do not require any conditions and the actions will always be applied.

    Actions FrontdoorRuleActionsArgs
    An actions block as defined below.
    BehaviorOnMatch string
    If this rule is a match should the rules engine continue processing the remaining rules or stop? Possible values are Continue and Stop. Defaults to Continue.
    CdnFrontdoorRuleSetId string
    The resource ID of the Front Door Rule Set for this Front Door Rule. Changing this forces a new Front Door Rule to be created.
    CdnFrontdoorRuleSetName string
    The name of the Front Door Rule Set containing this Front Door Rule.
    Conditions FrontdoorRuleConditionsArgs
    A conditions block as defined below.
    Name string
    The name which should be used for this Front Door Rule. Possible values must be between 1 and 260 characters in length, begin with a letter and may contain only letters and numbers. Changing this forces a new Front Door Rule to be created.
    Order int

    The order in which the rules will be applied for the Front Door Endpoint. The order value should be sequential and begin at 1(e.g. 1, 2, 3...). A Front Door Rule with a lesser order value will be applied before a rule with a greater order value.

    ->NOTE: If the Front Door Rule has an order value of 0 they do not require any conditions and the actions will always be applied.

    actions FrontdoorRuleActions
    An actions block as defined below.
    behaviorOnMatch String
    If this rule is a match should the rules engine continue processing the remaining rules or stop? Possible values are Continue and Stop. Defaults to Continue.
    cdnFrontdoorRuleSetId String
    The resource ID of the Front Door Rule Set for this Front Door Rule. Changing this forces a new Front Door Rule to be created.
    cdnFrontdoorRuleSetName String
    The name of the Front Door Rule Set containing this Front Door Rule.
    conditions FrontdoorRuleConditions
    A conditions block as defined below.
    name String
    The name which should be used for this Front Door Rule. Possible values must be between 1 and 260 characters in length, begin with a letter and may contain only letters and numbers. Changing this forces a new Front Door Rule to be created.
    order Integer

    The order in which the rules will be applied for the Front Door Endpoint. The order value should be sequential and begin at 1(e.g. 1, 2, 3...). A Front Door Rule with a lesser order value will be applied before a rule with a greater order value.

    ->NOTE: If the Front Door Rule has an order value of 0 they do not require any conditions and the actions will always be applied.

    actions FrontdoorRuleActions
    An actions block as defined below.
    behaviorOnMatch string
    If this rule is a match should the rules engine continue processing the remaining rules or stop? Possible values are Continue and Stop. Defaults to Continue.
    cdnFrontdoorRuleSetId string
    The resource ID of the Front Door Rule Set for this Front Door Rule. Changing this forces a new Front Door Rule to be created.
    cdnFrontdoorRuleSetName string
    The name of the Front Door Rule Set containing this Front Door Rule.
    conditions FrontdoorRuleConditions
    A conditions block as defined below.
    name string
    The name which should be used for this Front Door Rule. Possible values must be between 1 and 260 characters in length, begin with a letter and may contain only letters and numbers. Changing this forces a new Front Door Rule to be created.
    order number

    The order in which the rules will be applied for the Front Door Endpoint. The order value should be sequential and begin at 1(e.g. 1, 2, 3...). A Front Door Rule with a lesser order value will be applied before a rule with a greater order value.

    ->NOTE: If the Front Door Rule has an order value of 0 they do not require any conditions and the actions will always be applied.

    actions FrontdoorRuleActionsArgs
    An actions block as defined below.
    behavior_on_match str
    If this rule is a match should the rules engine continue processing the remaining rules or stop? Possible values are Continue and Stop. Defaults to Continue.
    cdn_frontdoor_rule_set_id str
    The resource ID of the Front Door Rule Set for this Front Door Rule. Changing this forces a new Front Door Rule to be created.
    cdn_frontdoor_rule_set_name str
    The name of the Front Door Rule Set containing this Front Door Rule.
    conditions FrontdoorRuleConditionsArgs
    A conditions block as defined below.
    name str
    The name which should be used for this Front Door Rule. Possible values must be between 1 and 260 characters in length, begin with a letter and may contain only letters and numbers. Changing this forces a new Front Door Rule to be created.
    order int

    The order in which the rules will be applied for the Front Door Endpoint. The order value should be sequential and begin at 1(e.g. 1, 2, 3...). A Front Door Rule with a lesser order value will be applied before a rule with a greater order value.

    ->NOTE: If the Front Door Rule has an order value of 0 they do not require any conditions and the actions will always be applied.

    actions Property Map
    An actions block as defined below.
    behaviorOnMatch String
    If this rule is a match should the rules engine continue processing the remaining rules or stop? Possible values are Continue and Stop. Defaults to Continue.
    cdnFrontdoorRuleSetId String
    The resource ID of the Front Door Rule Set for this Front Door Rule. Changing this forces a new Front Door Rule to be created.
    cdnFrontdoorRuleSetName String
    The name of the Front Door Rule Set containing this Front Door Rule.
    conditions Property Map
    A conditions block as defined below.
    name String
    The name which should be used for this Front Door Rule. Possible values must be between 1 and 260 characters in length, begin with a letter and may contain only letters and numbers. Changing this forces a new Front Door Rule to be created.
    order Number

    The order in which the rules will be applied for the Front Door Endpoint. The order value should be sequential and begin at 1(e.g. 1, 2, 3...). A Front Door Rule with a lesser order value will be applied before a rule with a greater order value.

    ->NOTE: If the Front Door Rule has an order value of 0 they do not require any conditions and the actions will always be applied.

    Supporting Types

    FrontdoorRuleActions, FrontdoorRuleActionsArgs

    RequestHeaderActions List<FrontdoorRuleActionsRequestHeaderAction>
    A request_header_action block as defined below.
    ResponseHeaderActions List<FrontdoorRuleActionsResponseHeaderAction>
    A response_header_action block as defined below.
    RouteConfigurationOverrideAction FrontdoorRuleActionsRouteConfigurationOverrideAction
    A route_configuration_override_action block as defined below.
    UrlRedirectAction FrontdoorRuleActionsUrlRedirectAction
    A url_redirect_action block as defined below. You may not have a url_redirect_action and a url_rewrite_action defined in the same actions block.
    UrlRewriteAction FrontdoorRuleActionsUrlRewriteAction
    A url_rewrite_action block as defined below. You may not have a url_rewrite_action and a url_redirect_action defined in the same actions block.
    RequestHeaderActions []FrontdoorRuleActionsRequestHeaderAction
    A request_header_action block as defined below.
    ResponseHeaderActions []FrontdoorRuleActionsResponseHeaderAction
    A response_header_action block as defined below.
    RouteConfigurationOverrideAction FrontdoorRuleActionsRouteConfigurationOverrideAction
    A route_configuration_override_action block as defined below.
    UrlRedirectAction FrontdoorRuleActionsUrlRedirectAction
    A url_redirect_action block as defined below. You may not have a url_redirect_action and a url_rewrite_action defined in the same actions block.
    UrlRewriteAction FrontdoorRuleActionsUrlRewriteAction
    A url_rewrite_action block as defined below. You may not have a url_rewrite_action and a url_redirect_action defined in the same actions block.
    requestHeaderActions List<FrontdoorRuleActionsRequestHeaderAction>
    A request_header_action block as defined below.
    responseHeaderActions List<FrontdoorRuleActionsResponseHeaderAction>
    A response_header_action block as defined below.
    routeConfigurationOverrideAction FrontdoorRuleActionsRouteConfigurationOverrideAction
    A route_configuration_override_action block as defined below.
    urlRedirectAction FrontdoorRuleActionsUrlRedirectAction
    A url_redirect_action block as defined below. You may not have a url_redirect_action and a url_rewrite_action defined in the same actions block.
    urlRewriteAction FrontdoorRuleActionsUrlRewriteAction
    A url_rewrite_action block as defined below. You may not have a url_rewrite_action and a url_redirect_action defined in the same actions block.
    requestHeaderActions FrontdoorRuleActionsRequestHeaderAction[]
    A request_header_action block as defined below.
    responseHeaderActions FrontdoorRuleActionsResponseHeaderAction[]
    A response_header_action block as defined below.
    routeConfigurationOverrideAction FrontdoorRuleActionsRouteConfigurationOverrideAction
    A route_configuration_override_action block as defined below.
    urlRedirectAction FrontdoorRuleActionsUrlRedirectAction
    A url_redirect_action block as defined below. You may not have a url_redirect_action and a url_rewrite_action defined in the same actions block.
    urlRewriteAction FrontdoorRuleActionsUrlRewriteAction
    A url_rewrite_action block as defined below. You may not have a url_rewrite_action and a url_redirect_action defined in the same actions block.
    request_header_actions Sequence[FrontdoorRuleActionsRequestHeaderAction]
    A request_header_action block as defined below.
    response_header_actions Sequence[FrontdoorRuleActionsResponseHeaderAction]
    A response_header_action block as defined below.
    route_configuration_override_action FrontdoorRuleActionsRouteConfigurationOverrideAction
    A route_configuration_override_action block as defined below.
    url_redirect_action FrontdoorRuleActionsUrlRedirectAction
    A url_redirect_action block as defined below. You may not have a url_redirect_action and a url_rewrite_action defined in the same actions block.
    url_rewrite_action FrontdoorRuleActionsUrlRewriteAction
    A url_rewrite_action block as defined below. You may not have a url_rewrite_action and a url_redirect_action defined in the same actions block.
    requestHeaderActions List<Property Map>
    A request_header_action block as defined below.
    responseHeaderActions List<Property Map>
    A response_header_action block as defined below.
    routeConfigurationOverrideAction Property Map
    A route_configuration_override_action block as defined below.
    urlRedirectAction Property Map
    A url_redirect_action block as defined below. You may not have a url_redirect_action and a url_rewrite_action defined in the same actions block.
    urlRewriteAction Property Map
    A url_rewrite_action block as defined below. You may not have a url_rewrite_action and a url_redirect_action defined in the same actions block.

    FrontdoorRuleActionsRequestHeaderAction, FrontdoorRuleActionsRequestHeaderActionArgs

    HeaderAction string

    The action to be taken on the specified header_name. Possible values include Append, Overwrite or Delete.

    NOTE: Append causes the specified header to be added to the request with the specified value. If the header is already present, the value is appended to the existing header value using string concatenation. No delimiters are added. Overwrite causes specified header to be added to the request with the specified value. If the header is already present, the specified value overwrites the existing value. Delete causes the header to be deleted from the request.

    HeaderName string
    The name of the header to modify.
    Value string

    The value to append or overwrite.

    ->NOTE: value is required if the header_action is set to Append or Overwrite.

    HeaderAction string

    The action to be taken on the specified header_name. Possible values include Append, Overwrite or Delete.

    NOTE: Append causes the specified header to be added to the request with the specified value. If the header is already present, the value is appended to the existing header value using string concatenation. No delimiters are added. Overwrite causes specified header to be added to the request with the specified value. If the header is already present, the specified value overwrites the existing value. Delete causes the header to be deleted from the request.

    HeaderName string
    The name of the header to modify.
    Value string

    The value to append or overwrite.

    ->NOTE: value is required if the header_action is set to Append or Overwrite.

    headerAction String

    The action to be taken on the specified header_name. Possible values include Append, Overwrite or Delete.

    NOTE: Append causes the specified header to be added to the request with the specified value. If the header is already present, the value is appended to the existing header value using string concatenation. No delimiters are added. Overwrite causes specified header to be added to the request with the specified value. If the header is already present, the specified value overwrites the existing value. Delete causes the header to be deleted from the request.

    headerName String
    The name of the header to modify.
    value String

    The value to append or overwrite.

    ->NOTE: value is required if the header_action is set to Append or Overwrite.

    headerAction string

    The action to be taken on the specified header_name. Possible values include Append, Overwrite or Delete.

    NOTE: Append causes the specified header to be added to the request with the specified value. If the header is already present, the value is appended to the existing header value using string concatenation. No delimiters are added. Overwrite causes specified header to be added to the request with the specified value. If the header is already present, the specified value overwrites the existing value. Delete causes the header to be deleted from the request.

    headerName string
    The name of the header to modify.
    value string

    The value to append or overwrite.

    ->NOTE: value is required if the header_action is set to Append or Overwrite.

    header_action str

    The action to be taken on the specified header_name. Possible values include Append, Overwrite or Delete.

    NOTE: Append causes the specified header to be added to the request with the specified value. If the header is already present, the value is appended to the existing header value using string concatenation. No delimiters are added. Overwrite causes specified header to be added to the request with the specified value. If the header is already present, the specified value overwrites the existing value. Delete causes the header to be deleted from the request.

    header_name str
    The name of the header to modify.
    value str

    The value to append or overwrite.

    ->NOTE: value is required if the header_action is set to Append or Overwrite.

    headerAction String

    The action to be taken on the specified header_name. Possible values include Append, Overwrite or Delete.

    NOTE: Append causes the specified header to be added to the request with the specified value. If the header is already present, the value is appended to the existing header value using string concatenation. No delimiters are added. Overwrite causes specified header to be added to the request with the specified value. If the header is already present, the specified value overwrites the existing value. Delete causes the header to be deleted from the request.

    headerName String
    The name of the header to modify.
    value String

    The value to append or overwrite.

    ->NOTE: value is required if the header_action is set to Append or Overwrite.

    FrontdoorRuleActionsResponseHeaderAction, FrontdoorRuleActionsResponseHeaderActionArgs

    HeaderAction string

    The action to be taken on the specified header_name. Possible values include Append, Overwrite or Delete.

    NOTE: Append causes the specified header to be added to the request with the specified value. If the header is already present, the value is appended to the existing header value using string concatenation. No delimiters are added. Overwrite causes specified header to be added to the request with the specified value. If the header is already present, the specified value overwrites the existing value. Delete causes the header to be deleted from the request.

    HeaderName string
    The name of the header to modify.
    Value string

    The value to append or overwrite.

    ->NOTE: value is required if the header_action is set to Append or Overwrite.

    HeaderAction string

    The action to be taken on the specified header_name. Possible values include Append, Overwrite or Delete.

    NOTE: Append causes the specified header to be added to the request with the specified value. If the header is already present, the value is appended to the existing header value using string concatenation. No delimiters are added. Overwrite causes specified header to be added to the request with the specified value. If the header is already present, the specified value overwrites the existing value. Delete causes the header to be deleted from the request.

    HeaderName string
    The name of the header to modify.
    Value string

    The value to append or overwrite.

    ->NOTE: value is required if the header_action is set to Append or Overwrite.

    headerAction String

    The action to be taken on the specified header_name. Possible values include Append, Overwrite or Delete.

    NOTE: Append causes the specified header to be added to the request with the specified value. If the header is already present, the value is appended to the existing header value using string concatenation. No delimiters are added. Overwrite causes specified header to be added to the request with the specified value. If the header is already present, the specified value overwrites the existing value. Delete causes the header to be deleted from the request.

    headerName String
    The name of the header to modify.
    value String

    The value to append or overwrite.

    ->NOTE: value is required if the header_action is set to Append or Overwrite.

    headerAction string

    The action to be taken on the specified header_name. Possible values include Append, Overwrite or Delete.

    NOTE: Append causes the specified header to be added to the request with the specified value. If the header is already present, the value is appended to the existing header value using string concatenation. No delimiters are added. Overwrite causes specified header to be added to the request with the specified value. If the header is already present, the specified value overwrites the existing value. Delete causes the header to be deleted from the request.

    headerName string
    The name of the header to modify.
    value string

    The value to append or overwrite.

    ->NOTE: value is required if the header_action is set to Append or Overwrite.

    header_action str

    The action to be taken on the specified header_name. Possible values include Append, Overwrite or Delete.

    NOTE: Append causes the specified header to be added to the request with the specified value. If the header is already present, the value is appended to the existing header value using string concatenation. No delimiters are added. Overwrite causes specified header to be added to the request with the specified value. If the header is already present, the specified value overwrites the existing value. Delete causes the header to be deleted from the request.

    header_name str
    The name of the header to modify.
    value str

    The value to append or overwrite.

    ->NOTE: value is required if the header_action is set to Append or Overwrite.

    headerAction String

    The action to be taken on the specified header_name. Possible values include Append, Overwrite or Delete.

    NOTE: Append causes the specified header to be added to the request with the specified value. If the header is already present, the value is appended to the existing header value using string concatenation. No delimiters are added. Overwrite causes specified header to be added to the request with the specified value. If the header is already present, the specified value overwrites the existing value. Delete causes the header to be deleted from the request.

    headerName String
    The name of the header to modify.
    value String

    The value to append or overwrite.

    ->NOTE: value is required if the header_action is set to Append or Overwrite.

    FrontdoorRuleActionsRouteConfigurationOverrideAction, FrontdoorRuleActionsRouteConfigurationOverrideActionArgs

    CacheBehavior string
    HonorOrigin the Front Door will always honor origin response header directive. If the origin directive is missing, Front Door will cache contents anywhere from 1 to 3 days. OverrideAlways the TTL value returned from your Front Door Origin is overwritten with the value specified in the action. This behavior will only be applied if the response is cacheable. OverrideIfOriginMissing if no TTL value gets returned from your Front Door Origin, the rule sets the TTL to the value specified in the action. This behavior will only be applied if the response is cacheable. Disabled the Front Door will not cache the response contents, irrespective of Front Door Origin response directives. Possible values include HonorOrigin, OverrideAlways, OverrideIfOriginMissing or Disabled.
    CacheDuration string
    When Cache behavior is set to Override or SetIfMissing, this field specifies the cache duration to use. The maximum duration is 366 days specified in the d.HH:MM:SS format(e.g. 365.23:59:59). If the desired maximum cache duration is less than 1 day then the maximum cache duration should be specified in the HH:MM:SS format(e.g. 23:59:59).
    CdnFrontdoorOriginGroupId string
    The Front Door Origin Group resource ID that the request should be routed to. This overrides the configuration specified in the Front Door Endpoint route.
    CompressionEnabled bool

    Should the Front Door dynamically compress the content? Possible values include true or false.

    ->NOTE: Content won't be compressed on AzureFrontDoor when requested content is smaller than 1 byte or larger than 1 MB.

    ForwardingProtocol string

    The forwarding protocol the request will be redirected as. This overrides the configuration specified in the route to be associated with. Possible values include MatchRequest, HttpOnly or HttpsOnly.

    ->NOTE: If the cdn_frontdoor_origin_group_id is not defined you cannot set the forwarding_protocol.

    QueryStringCachingBehavior string
    IncludeSpecifiedQueryStrings query strings specified in the query_string_parameters field get included when the cache key gets generated. UseQueryString cache every unique URL, each unique URL will have its own cache key. IgnoreSpecifiedQueryStrings query strings specified in the query_string_parameters field get excluded when the cache key gets generated. IgnoreQueryString query strings aren't considered when the cache key gets generated. Possible values include IgnoreQueryString, UseQueryString, IgnoreSpecifiedQueryStrings or IncludeSpecifiedQueryStrings.
    QueryStringParameters List<string>

    A list of query string parameter names.

    ->NOTE: query_string_parameters is a required field when the query_string_caching_behavior is set to IncludeSpecifiedQueryStrings or IgnoreSpecifiedQueryStrings.

    CacheBehavior string
    HonorOrigin the Front Door will always honor origin response header directive. If the origin directive is missing, Front Door will cache contents anywhere from 1 to 3 days. OverrideAlways the TTL value returned from your Front Door Origin is overwritten with the value specified in the action. This behavior will only be applied if the response is cacheable. OverrideIfOriginMissing if no TTL value gets returned from your Front Door Origin, the rule sets the TTL to the value specified in the action. This behavior will only be applied if the response is cacheable. Disabled the Front Door will not cache the response contents, irrespective of Front Door Origin response directives. Possible values include HonorOrigin, OverrideAlways, OverrideIfOriginMissing or Disabled.
    CacheDuration string
    When Cache behavior is set to Override or SetIfMissing, this field specifies the cache duration to use. The maximum duration is 366 days specified in the d.HH:MM:SS format(e.g. 365.23:59:59). If the desired maximum cache duration is less than 1 day then the maximum cache duration should be specified in the HH:MM:SS format(e.g. 23:59:59).
    CdnFrontdoorOriginGroupId string
    The Front Door Origin Group resource ID that the request should be routed to. This overrides the configuration specified in the Front Door Endpoint route.
    CompressionEnabled bool

    Should the Front Door dynamically compress the content? Possible values include true or false.

    ->NOTE: Content won't be compressed on AzureFrontDoor when requested content is smaller than 1 byte or larger than 1 MB.

    ForwardingProtocol string

    The forwarding protocol the request will be redirected as. This overrides the configuration specified in the route to be associated with. Possible values include MatchRequest, HttpOnly or HttpsOnly.

    ->NOTE: If the cdn_frontdoor_origin_group_id is not defined you cannot set the forwarding_protocol.

    QueryStringCachingBehavior string
    IncludeSpecifiedQueryStrings query strings specified in the query_string_parameters field get included when the cache key gets generated. UseQueryString cache every unique URL, each unique URL will have its own cache key. IgnoreSpecifiedQueryStrings query strings specified in the query_string_parameters field get excluded when the cache key gets generated. IgnoreQueryString query strings aren't considered when the cache key gets generated. Possible values include IgnoreQueryString, UseQueryString, IgnoreSpecifiedQueryStrings or IncludeSpecifiedQueryStrings.
    QueryStringParameters []string

    A list of query string parameter names.

    ->NOTE: query_string_parameters is a required field when the query_string_caching_behavior is set to IncludeSpecifiedQueryStrings or IgnoreSpecifiedQueryStrings.

    cacheBehavior String
    HonorOrigin the Front Door will always honor origin response header directive. If the origin directive is missing, Front Door will cache contents anywhere from 1 to 3 days. OverrideAlways the TTL value returned from your Front Door Origin is overwritten with the value specified in the action. This behavior will only be applied if the response is cacheable. OverrideIfOriginMissing if no TTL value gets returned from your Front Door Origin, the rule sets the TTL to the value specified in the action. This behavior will only be applied if the response is cacheable. Disabled the Front Door will not cache the response contents, irrespective of Front Door Origin response directives. Possible values include HonorOrigin, OverrideAlways, OverrideIfOriginMissing or Disabled.
    cacheDuration String
    When Cache behavior is set to Override or SetIfMissing, this field specifies the cache duration to use. The maximum duration is 366 days specified in the d.HH:MM:SS format(e.g. 365.23:59:59). If the desired maximum cache duration is less than 1 day then the maximum cache duration should be specified in the HH:MM:SS format(e.g. 23:59:59).
    cdnFrontdoorOriginGroupId String
    The Front Door Origin Group resource ID that the request should be routed to. This overrides the configuration specified in the Front Door Endpoint route.
    compressionEnabled Boolean

    Should the Front Door dynamically compress the content? Possible values include true or false.

    ->NOTE: Content won't be compressed on AzureFrontDoor when requested content is smaller than 1 byte or larger than 1 MB.

    forwardingProtocol String

    The forwarding protocol the request will be redirected as. This overrides the configuration specified in the route to be associated with. Possible values include MatchRequest, HttpOnly or HttpsOnly.

    ->NOTE: If the cdn_frontdoor_origin_group_id is not defined you cannot set the forwarding_protocol.

    queryStringCachingBehavior String
    IncludeSpecifiedQueryStrings query strings specified in the query_string_parameters field get included when the cache key gets generated. UseQueryString cache every unique URL, each unique URL will have its own cache key. IgnoreSpecifiedQueryStrings query strings specified in the query_string_parameters field get excluded when the cache key gets generated. IgnoreQueryString query strings aren't considered when the cache key gets generated. Possible values include IgnoreQueryString, UseQueryString, IgnoreSpecifiedQueryStrings or IncludeSpecifiedQueryStrings.
    queryStringParameters List<String>

    A list of query string parameter names.

    ->NOTE: query_string_parameters is a required field when the query_string_caching_behavior is set to IncludeSpecifiedQueryStrings or IgnoreSpecifiedQueryStrings.

    cacheBehavior string
    HonorOrigin the Front Door will always honor origin response header directive. If the origin directive is missing, Front Door will cache contents anywhere from 1 to 3 days. OverrideAlways the TTL value returned from your Front Door Origin is overwritten with the value specified in the action. This behavior will only be applied if the response is cacheable. OverrideIfOriginMissing if no TTL value gets returned from your Front Door Origin, the rule sets the TTL to the value specified in the action. This behavior will only be applied if the response is cacheable. Disabled the Front Door will not cache the response contents, irrespective of Front Door Origin response directives. Possible values include HonorOrigin, OverrideAlways, OverrideIfOriginMissing or Disabled.
    cacheDuration string
    When Cache behavior is set to Override or SetIfMissing, this field specifies the cache duration to use. The maximum duration is 366 days specified in the d.HH:MM:SS format(e.g. 365.23:59:59). If the desired maximum cache duration is less than 1 day then the maximum cache duration should be specified in the HH:MM:SS format(e.g. 23:59:59).
    cdnFrontdoorOriginGroupId string
    The Front Door Origin Group resource ID that the request should be routed to. This overrides the configuration specified in the Front Door Endpoint route.
    compressionEnabled boolean

    Should the Front Door dynamically compress the content? Possible values include true or false.

    ->NOTE: Content won't be compressed on AzureFrontDoor when requested content is smaller than 1 byte or larger than 1 MB.

    forwardingProtocol string

    The forwarding protocol the request will be redirected as. This overrides the configuration specified in the route to be associated with. Possible values include MatchRequest, HttpOnly or HttpsOnly.

    ->NOTE: If the cdn_frontdoor_origin_group_id is not defined you cannot set the forwarding_protocol.

    queryStringCachingBehavior string
    IncludeSpecifiedQueryStrings query strings specified in the query_string_parameters field get included when the cache key gets generated. UseQueryString cache every unique URL, each unique URL will have its own cache key. IgnoreSpecifiedQueryStrings query strings specified in the query_string_parameters field get excluded when the cache key gets generated. IgnoreQueryString query strings aren't considered when the cache key gets generated. Possible values include IgnoreQueryString, UseQueryString, IgnoreSpecifiedQueryStrings or IncludeSpecifiedQueryStrings.
    queryStringParameters string[]

    A list of query string parameter names.

    ->NOTE: query_string_parameters is a required field when the query_string_caching_behavior is set to IncludeSpecifiedQueryStrings or IgnoreSpecifiedQueryStrings.

    cache_behavior str
    HonorOrigin the Front Door will always honor origin response header directive. If the origin directive is missing, Front Door will cache contents anywhere from 1 to 3 days. OverrideAlways the TTL value returned from your Front Door Origin is overwritten with the value specified in the action. This behavior will only be applied if the response is cacheable. OverrideIfOriginMissing if no TTL value gets returned from your Front Door Origin, the rule sets the TTL to the value specified in the action. This behavior will only be applied if the response is cacheable. Disabled the Front Door will not cache the response contents, irrespective of Front Door Origin response directives. Possible values include HonorOrigin, OverrideAlways, OverrideIfOriginMissing or Disabled.
    cache_duration str
    When Cache behavior is set to Override or SetIfMissing, this field specifies the cache duration to use. The maximum duration is 366 days specified in the d.HH:MM:SS format(e.g. 365.23:59:59). If the desired maximum cache duration is less than 1 day then the maximum cache duration should be specified in the HH:MM:SS format(e.g. 23:59:59).
    cdn_frontdoor_origin_group_id str
    The Front Door Origin Group resource ID that the request should be routed to. This overrides the configuration specified in the Front Door Endpoint route.
    compression_enabled bool

    Should the Front Door dynamically compress the content? Possible values include true or false.

    ->NOTE: Content won't be compressed on AzureFrontDoor when requested content is smaller than 1 byte or larger than 1 MB.

    forwarding_protocol str

    The forwarding protocol the request will be redirected as. This overrides the configuration specified in the route to be associated with. Possible values include MatchRequest, HttpOnly or HttpsOnly.

    ->NOTE: If the cdn_frontdoor_origin_group_id is not defined you cannot set the forwarding_protocol.

    query_string_caching_behavior str
    IncludeSpecifiedQueryStrings query strings specified in the query_string_parameters field get included when the cache key gets generated. UseQueryString cache every unique URL, each unique URL will have its own cache key. IgnoreSpecifiedQueryStrings query strings specified in the query_string_parameters field get excluded when the cache key gets generated. IgnoreQueryString query strings aren't considered when the cache key gets generated. Possible values include IgnoreQueryString, UseQueryString, IgnoreSpecifiedQueryStrings or IncludeSpecifiedQueryStrings.
    query_string_parameters Sequence[str]

    A list of query string parameter names.

    ->NOTE: query_string_parameters is a required field when the query_string_caching_behavior is set to IncludeSpecifiedQueryStrings or IgnoreSpecifiedQueryStrings.

    cacheBehavior String
    HonorOrigin the Front Door will always honor origin response header directive. If the origin directive is missing, Front Door will cache contents anywhere from 1 to 3 days. OverrideAlways the TTL value returned from your Front Door Origin is overwritten with the value specified in the action. This behavior will only be applied if the response is cacheable. OverrideIfOriginMissing if no TTL value gets returned from your Front Door Origin, the rule sets the TTL to the value specified in the action. This behavior will only be applied if the response is cacheable. Disabled the Front Door will not cache the response contents, irrespective of Front Door Origin response directives. Possible values include HonorOrigin, OverrideAlways, OverrideIfOriginMissing or Disabled.
    cacheDuration String
    When Cache behavior is set to Override or SetIfMissing, this field specifies the cache duration to use. The maximum duration is 366 days specified in the d.HH:MM:SS format(e.g. 365.23:59:59). If the desired maximum cache duration is less than 1 day then the maximum cache duration should be specified in the HH:MM:SS format(e.g. 23:59:59).
    cdnFrontdoorOriginGroupId String
    The Front Door Origin Group resource ID that the request should be routed to. This overrides the configuration specified in the Front Door Endpoint route.
    compressionEnabled Boolean

    Should the Front Door dynamically compress the content? Possible values include true or false.

    ->NOTE: Content won't be compressed on AzureFrontDoor when requested content is smaller than 1 byte or larger than 1 MB.

    forwardingProtocol String

    The forwarding protocol the request will be redirected as. This overrides the configuration specified in the route to be associated with. Possible values include MatchRequest, HttpOnly or HttpsOnly.

    ->NOTE: If the cdn_frontdoor_origin_group_id is not defined you cannot set the forwarding_protocol.

    queryStringCachingBehavior String
    IncludeSpecifiedQueryStrings query strings specified in the query_string_parameters field get included when the cache key gets generated. UseQueryString cache every unique URL, each unique URL will have its own cache key. IgnoreSpecifiedQueryStrings query strings specified in the query_string_parameters field get excluded when the cache key gets generated. IgnoreQueryString query strings aren't considered when the cache key gets generated. Possible values include IgnoreQueryString, UseQueryString, IgnoreSpecifiedQueryStrings or IncludeSpecifiedQueryStrings.
    queryStringParameters List<String>

    A list of query string parameter names.

    ->NOTE: query_string_parameters is a required field when the query_string_caching_behavior is set to IncludeSpecifiedQueryStrings or IgnoreSpecifiedQueryStrings.

    FrontdoorRuleActionsUrlRedirectAction, FrontdoorRuleActionsUrlRedirectActionArgs

    DestinationHostname string
    The host name you want the request to be redirected to. The value must be a string between 0 and 2048 characters in length, leave blank to preserve the incoming host.
    RedirectType string
    The response type to return to the requestor. Possible values include Moved, Found , TemporaryRedirect or PermanentRedirect.
    DestinationFragment string
    The fragment to use in the redirect. The value must be a string between 0 and 1024 characters in length, leave blank to preserve the incoming fragment. Defaults to "".
    DestinationPath string
    The path to use in the redirect. The value must be a string and include the leading /, leave blank to preserve the incoming path. Defaults to "".
    QueryString string
    The query string used in the redirect URL. The value must be in the <key>=<value> or <key>={action_server_variable} format and must not include the leading ?, leave blank to preserve the incoming query string. Maximum allowed length for this field is 2048 characters. Defaults to "".
    RedirectProtocol string
    The protocol the request will be redirected as. Possible values include MatchRequest, Http or Https. Defaults to MatchRequest.
    DestinationHostname string
    The host name you want the request to be redirected to. The value must be a string between 0 and 2048 characters in length, leave blank to preserve the incoming host.
    RedirectType string
    The response type to return to the requestor. Possible values include Moved, Found , TemporaryRedirect or PermanentRedirect.
    DestinationFragment string
    The fragment to use in the redirect. The value must be a string between 0 and 1024 characters in length, leave blank to preserve the incoming fragment. Defaults to "".
    DestinationPath string
    The path to use in the redirect. The value must be a string and include the leading /, leave blank to preserve the incoming path. Defaults to "".
    QueryString string
    The query string used in the redirect URL. The value must be in the <key>=<value> or <key>={action_server_variable} format and must not include the leading ?, leave blank to preserve the incoming query string. Maximum allowed length for this field is 2048 characters. Defaults to "".
    RedirectProtocol string
    The protocol the request will be redirected as. Possible values include MatchRequest, Http or Https. Defaults to MatchRequest.
    destinationHostname String
    The host name you want the request to be redirected to. The value must be a string between 0 and 2048 characters in length, leave blank to preserve the incoming host.
    redirectType String
    The response type to return to the requestor. Possible values include Moved, Found , TemporaryRedirect or PermanentRedirect.
    destinationFragment String
    The fragment to use in the redirect. The value must be a string between 0 and 1024 characters in length, leave blank to preserve the incoming fragment. Defaults to "".
    destinationPath String
    The path to use in the redirect. The value must be a string and include the leading /, leave blank to preserve the incoming path. Defaults to "".
    queryString String
    The query string used in the redirect URL. The value must be in the <key>=<value> or <key>={action_server_variable} format and must not include the leading ?, leave blank to preserve the incoming query string. Maximum allowed length for this field is 2048 characters. Defaults to "".
    redirectProtocol String
    The protocol the request will be redirected as. Possible values include MatchRequest, Http or Https. Defaults to MatchRequest.
    destinationHostname string
    The host name you want the request to be redirected to. The value must be a string between 0 and 2048 characters in length, leave blank to preserve the incoming host.
    redirectType string
    The response type to return to the requestor. Possible values include Moved, Found , TemporaryRedirect or PermanentRedirect.
    destinationFragment string
    The fragment to use in the redirect. The value must be a string between 0 and 1024 characters in length, leave blank to preserve the incoming fragment. Defaults to "".
    destinationPath string
    The path to use in the redirect. The value must be a string and include the leading /, leave blank to preserve the incoming path. Defaults to "".
    queryString string
    The query string used in the redirect URL. The value must be in the <key>=<value> or <key>={action_server_variable} format and must not include the leading ?, leave blank to preserve the incoming query string. Maximum allowed length for this field is 2048 characters. Defaults to "".
    redirectProtocol string
    The protocol the request will be redirected as. Possible values include MatchRequest, Http or Https. Defaults to MatchRequest.
    destination_hostname str
    The host name you want the request to be redirected to. The value must be a string between 0 and 2048 characters in length, leave blank to preserve the incoming host.
    redirect_type str
    The response type to return to the requestor. Possible values include Moved, Found , TemporaryRedirect or PermanentRedirect.
    destination_fragment str
    The fragment to use in the redirect. The value must be a string between 0 and 1024 characters in length, leave blank to preserve the incoming fragment. Defaults to "".
    destination_path str
    The path to use in the redirect. The value must be a string and include the leading /, leave blank to preserve the incoming path. Defaults to "".
    query_string str
    The query string used in the redirect URL. The value must be in the <key>=<value> or <key>={action_server_variable} format and must not include the leading ?, leave blank to preserve the incoming query string. Maximum allowed length for this field is 2048 characters. Defaults to "".
    redirect_protocol str
    The protocol the request will be redirected as. Possible values include MatchRequest, Http or Https. Defaults to MatchRequest.
    destinationHostname String
    The host name you want the request to be redirected to. The value must be a string between 0 and 2048 characters in length, leave blank to preserve the incoming host.
    redirectType String
    The response type to return to the requestor. Possible values include Moved, Found , TemporaryRedirect or PermanentRedirect.
    destinationFragment String
    The fragment to use in the redirect. The value must be a string between 0 and 1024 characters in length, leave blank to preserve the incoming fragment. Defaults to "".
    destinationPath String
    The path to use in the redirect. The value must be a string and include the leading /, leave blank to preserve the incoming path. Defaults to "".
    queryString String
    The query string used in the redirect URL. The value must be in the <key>=<value> or <key>={action_server_variable} format and must not include the leading ?, leave blank to preserve the incoming query string. Maximum allowed length for this field is 2048 characters. Defaults to "".
    redirectProtocol String
    The protocol the request will be redirected as. Possible values include MatchRequest, Http or Https. Defaults to MatchRequest.

    FrontdoorRuleActionsUrlRewriteAction, FrontdoorRuleActionsUrlRewriteActionArgs

    Destination string
    The destination path to use in the rewrite. The destination path overwrites the source pattern.
    SourcePattern string
    The source pattern in the URL path to replace. This uses prefix-based matching. For example, to match all URL paths use a forward slash "/" as the source pattern value.
    PreserveUnmatchedPath bool
    Append the remaining path after the source pattern to the new destination path? Possible values true or false. Defaults to false.
    Destination string
    The destination path to use in the rewrite. The destination path overwrites the source pattern.
    SourcePattern string
    The source pattern in the URL path to replace. This uses prefix-based matching. For example, to match all URL paths use a forward slash "/" as the source pattern value.
    PreserveUnmatchedPath bool
    Append the remaining path after the source pattern to the new destination path? Possible values true or false. Defaults to false.
    destination String
    The destination path to use in the rewrite. The destination path overwrites the source pattern.
    sourcePattern String
    The source pattern in the URL path to replace. This uses prefix-based matching. For example, to match all URL paths use a forward slash "/" as the source pattern value.
    preserveUnmatchedPath Boolean
    Append the remaining path after the source pattern to the new destination path? Possible values true or false. Defaults to false.
    destination string
    The destination path to use in the rewrite. The destination path overwrites the source pattern.
    sourcePattern string
    The source pattern in the URL path to replace. This uses prefix-based matching. For example, to match all URL paths use a forward slash "/" as the source pattern value.
    preserveUnmatchedPath boolean
    Append the remaining path after the source pattern to the new destination path? Possible values true or false. Defaults to false.
    destination str
    The destination path to use in the rewrite. The destination path overwrites the source pattern.
    source_pattern str
    The source pattern in the URL path to replace. This uses prefix-based matching. For example, to match all URL paths use a forward slash "/" as the source pattern value.
    preserve_unmatched_path bool
    Append the remaining path after the source pattern to the new destination path? Possible values true or false. Defaults to false.
    destination String
    The destination path to use in the rewrite. The destination path overwrites the source pattern.
    sourcePattern String
    The source pattern in the URL path to replace. This uses prefix-based matching. For example, to match all URL paths use a forward slash "/" as the source pattern value.
    preserveUnmatchedPath Boolean
    Append the remaining path after the source pattern to the new destination path? Possible values true or false. Defaults to false.

    FrontdoorRuleConditions, FrontdoorRuleConditionsArgs

    ClientPortConditions List<FrontdoorRuleConditionsClientPortCondition>
    A client_port_condition block as defined below.
    CookiesConditions List<FrontdoorRuleConditionsCookiesCondition>
    A cookies_condition block as defined below.
    HostNameConditions List<FrontdoorRuleConditionsHostNameCondition>
    A host_name_condition block as defined below.
    HttpVersionConditions List<FrontdoorRuleConditionsHttpVersionCondition>
    A http_version_condition block as defined below.
    IsDeviceConditions List<FrontdoorRuleConditionsIsDeviceCondition>
    A is_device_condition block as defined below.
    PostArgsConditions List<FrontdoorRuleConditionsPostArgsCondition>
    A post_args_condition block as defined below.
    QueryStringConditions List<FrontdoorRuleConditionsQueryStringCondition>
    A query_string_condition block as defined below.
    RemoteAddressConditions List<FrontdoorRuleConditionsRemoteAddressCondition>
    A remote_address_condition block as defined below.
    RequestBodyConditions List<FrontdoorRuleConditionsRequestBodyCondition>
    A request_body_condition block as defined below.
    RequestHeaderConditions List<FrontdoorRuleConditionsRequestHeaderCondition>
    A request_header_condition block as defined below.
    RequestMethodConditions List<FrontdoorRuleConditionsRequestMethodCondition>
    A request_method_condition block as defined below.
    RequestSchemeConditions List<FrontdoorRuleConditionsRequestSchemeCondition>
    A request_scheme_condition block as defined below.
    RequestUriConditions List<FrontdoorRuleConditionsRequestUriCondition>
    A request_uri_condition block as defined below.
    ServerPortConditions List<FrontdoorRuleConditionsServerPortCondition>
    A server_port_condition block as defined below.
    SocketAddressConditions List<FrontdoorRuleConditionsSocketAddressCondition>
    A socket_address_condition block as defined below.
    SslProtocolConditions List<FrontdoorRuleConditionsSslProtocolCondition>
    A ssl_protocol_condition block as defined below.
    UrlFileExtensionConditions List<FrontdoorRuleConditionsUrlFileExtensionCondition>
    A url_file_extension_condition block as defined below.
    UrlFilenameConditions List<FrontdoorRuleConditionsUrlFilenameCondition>
    A url_filename_condition block as defined below.
    UrlPathConditions List<FrontdoorRuleConditionsUrlPathCondition>
    A url_path_condition block as defined below.
    ClientPortConditions []FrontdoorRuleConditionsClientPortCondition
    A client_port_condition block as defined below.
    CookiesConditions []FrontdoorRuleConditionsCookiesCondition
    A cookies_condition block as defined below.
    HostNameConditions []FrontdoorRuleConditionsHostNameCondition
    A host_name_condition block as defined below.
    HttpVersionConditions []FrontdoorRuleConditionsHttpVersionCondition
    A http_version_condition block as defined below.
    IsDeviceConditions []FrontdoorRuleConditionsIsDeviceCondition
    A is_device_condition block as defined below.
    PostArgsConditions []FrontdoorRuleConditionsPostArgsCondition
    A post_args_condition block as defined below.
    QueryStringConditions []FrontdoorRuleConditionsQueryStringCondition
    A query_string_condition block as defined below.
    RemoteAddressConditions []FrontdoorRuleConditionsRemoteAddressCondition
    A remote_address_condition block as defined below.
    RequestBodyConditions []FrontdoorRuleConditionsRequestBodyCondition
    A request_body_condition block as defined below.
    RequestHeaderConditions []FrontdoorRuleConditionsRequestHeaderCondition
    A request_header_condition block as defined below.
    RequestMethodConditions []FrontdoorRuleConditionsRequestMethodCondition
    A request_method_condition block as defined below.
    RequestSchemeConditions []FrontdoorRuleConditionsRequestSchemeCondition
    A request_scheme_condition block as defined below.
    RequestUriConditions []FrontdoorRuleConditionsRequestUriCondition
    A request_uri_condition block as defined below.
    ServerPortConditions []FrontdoorRuleConditionsServerPortCondition
    A server_port_condition block as defined below.
    SocketAddressConditions []FrontdoorRuleConditionsSocketAddressCondition
    A socket_address_condition block as defined below.
    SslProtocolConditions []FrontdoorRuleConditionsSslProtocolCondition
    A ssl_protocol_condition block as defined below.
    UrlFileExtensionConditions []FrontdoorRuleConditionsUrlFileExtensionCondition
    A url_file_extension_condition block as defined below.
    UrlFilenameConditions []FrontdoorRuleConditionsUrlFilenameCondition
    A url_filename_condition block as defined below.
    UrlPathConditions []FrontdoorRuleConditionsUrlPathCondition
    A url_path_condition block as defined below.
    clientPortConditions List<FrontdoorRuleConditionsClientPortCondition>
    A client_port_condition block as defined below.
    cookiesConditions List<FrontdoorRuleConditionsCookiesCondition>
    A cookies_condition block as defined below.
    hostNameConditions List<FrontdoorRuleConditionsHostNameCondition>
    A host_name_condition block as defined below.
    httpVersionConditions List<FrontdoorRuleConditionsHttpVersionCondition>
    A http_version_condition block as defined below.
    isDeviceConditions List<FrontdoorRuleConditionsIsDeviceCondition>
    A is_device_condition block as defined below.
    postArgsConditions List<FrontdoorRuleConditionsPostArgsCondition>
    A post_args_condition block as defined below.
    queryStringConditions List<FrontdoorRuleConditionsQueryStringCondition>
    A query_string_condition block as defined below.
    remoteAddressConditions List<FrontdoorRuleConditionsRemoteAddressCondition>
    A remote_address_condition block as defined below.
    requestBodyConditions List<FrontdoorRuleConditionsRequestBodyCondition>
    A request_body_condition block as defined below.
    requestHeaderConditions List<FrontdoorRuleConditionsRequestHeaderCondition>
    A request_header_condition block as defined below.
    requestMethodConditions List<FrontdoorRuleConditionsRequestMethodCondition>
    A request_method_condition block as defined below.
    requestSchemeConditions List<FrontdoorRuleConditionsRequestSchemeCondition>
    A request_scheme_condition block as defined below.
    requestUriConditions List<FrontdoorRuleConditionsRequestUriCondition>
    A request_uri_condition block as defined below.
    serverPortConditions List<FrontdoorRuleConditionsServerPortCondition>
    A server_port_condition block as defined below.
    socketAddressConditions List<FrontdoorRuleConditionsSocketAddressCondition>
    A socket_address_condition block as defined below.
    sslProtocolConditions List<FrontdoorRuleConditionsSslProtocolCondition>
    A ssl_protocol_condition block as defined below.
    urlFileExtensionConditions List<FrontdoorRuleConditionsUrlFileExtensionCondition>
    A url_file_extension_condition block as defined below.
    urlFilenameConditions List<FrontdoorRuleConditionsUrlFilenameCondition>
    A url_filename_condition block as defined below.
    urlPathConditions List<FrontdoorRuleConditionsUrlPathCondition>
    A url_path_condition block as defined below.
    clientPortConditions FrontdoorRuleConditionsClientPortCondition[]
    A client_port_condition block as defined below.
    cookiesConditions FrontdoorRuleConditionsCookiesCondition[]
    A cookies_condition block as defined below.
    hostNameConditions FrontdoorRuleConditionsHostNameCondition[]
    A host_name_condition block as defined below.
    httpVersionConditions FrontdoorRuleConditionsHttpVersionCondition[]
    A http_version_condition block as defined below.
    isDeviceConditions FrontdoorRuleConditionsIsDeviceCondition[]
    A is_device_condition block as defined below.
    postArgsConditions FrontdoorRuleConditionsPostArgsCondition[]
    A post_args_condition block as defined below.
    queryStringConditions FrontdoorRuleConditionsQueryStringCondition[]
    A query_string_condition block as defined below.
    remoteAddressConditions FrontdoorRuleConditionsRemoteAddressCondition[]
    A remote_address_condition block as defined below.
    requestBodyConditions FrontdoorRuleConditionsRequestBodyCondition[]
    A request_body_condition block as defined below.
    requestHeaderConditions FrontdoorRuleConditionsRequestHeaderCondition[]
    A request_header_condition block as defined below.
    requestMethodConditions FrontdoorRuleConditionsRequestMethodCondition[]
    A request_method_condition block as defined below.
    requestSchemeConditions FrontdoorRuleConditionsRequestSchemeCondition[]
    A request_scheme_condition block as defined below.
    requestUriConditions FrontdoorRuleConditionsRequestUriCondition[]
    A request_uri_condition block as defined below.
    serverPortConditions FrontdoorRuleConditionsServerPortCondition[]
    A server_port_condition block as defined below.
    socketAddressConditions FrontdoorRuleConditionsSocketAddressCondition[]
    A socket_address_condition block as defined below.
    sslProtocolConditions FrontdoorRuleConditionsSslProtocolCondition[]
    A ssl_protocol_condition block as defined below.
    urlFileExtensionConditions FrontdoorRuleConditionsUrlFileExtensionCondition[]
    A url_file_extension_condition block as defined below.
    urlFilenameConditions FrontdoorRuleConditionsUrlFilenameCondition[]
    A url_filename_condition block as defined below.
    urlPathConditions FrontdoorRuleConditionsUrlPathCondition[]
    A url_path_condition block as defined below.
    client_port_conditions Sequence[FrontdoorRuleConditionsClientPortCondition]
    A client_port_condition block as defined below.
    cookies_conditions Sequence[FrontdoorRuleConditionsCookiesCondition]
    A cookies_condition block as defined below.
    host_name_conditions Sequence[FrontdoorRuleConditionsHostNameCondition]
    A host_name_condition block as defined below.
    http_version_conditions Sequence[FrontdoorRuleConditionsHttpVersionCondition]
    A http_version_condition block as defined below.
    is_device_conditions Sequence[FrontdoorRuleConditionsIsDeviceCondition]
    A is_device_condition block as defined below.
    post_args_conditions Sequence[FrontdoorRuleConditionsPostArgsCondition]
    A post_args_condition block as defined below.
    query_string_conditions Sequence[FrontdoorRuleConditionsQueryStringCondition]
    A query_string_condition block as defined below.
    remote_address_conditions Sequence[FrontdoorRuleConditionsRemoteAddressCondition]
    A remote_address_condition block as defined below.
    request_body_conditions Sequence[FrontdoorRuleConditionsRequestBodyCondition]
    A request_body_condition block as defined below.
    request_header_conditions Sequence[FrontdoorRuleConditionsRequestHeaderCondition]
    A request_header_condition block as defined below.
    request_method_conditions Sequence[FrontdoorRuleConditionsRequestMethodCondition]
    A request_method_condition block as defined below.
    request_scheme_conditions Sequence[FrontdoorRuleConditionsRequestSchemeCondition]
    A request_scheme_condition block as defined below.
    request_uri_conditions Sequence[FrontdoorRuleConditionsRequestUriCondition]
    A request_uri_condition block as defined below.
    server_port_conditions Sequence[FrontdoorRuleConditionsServerPortCondition]
    A server_port_condition block as defined below.
    socket_address_conditions Sequence[FrontdoorRuleConditionsSocketAddressCondition]
    A socket_address_condition block as defined below.
    ssl_protocol_conditions Sequence[FrontdoorRuleConditionsSslProtocolCondition]
    A ssl_protocol_condition block as defined below.
    url_file_extension_conditions Sequence[FrontdoorRuleConditionsUrlFileExtensionCondition]
    A url_file_extension_condition block as defined below.
    url_filename_conditions Sequence[FrontdoorRuleConditionsUrlFilenameCondition]
    A url_filename_condition block as defined below.
    url_path_conditions Sequence[FrontdoorRuleConditionsUrlPathCondition]
    A url_path_condition block as defined below.
    clientPortConditions List<Property Map>
    A client_port_condition block as defined below.
    cookiesConditions List<Property Map>
    A cookies_condition block as defined below.
    hostNameConditions List<Property Map>
    A host_name_condition block as defined below.
    httpVersionConditions List<Property Map>
    A http_version_condition block as defined below.
    isDeviceConditions List<Property Map>
    A is_device_condition block as defined below.
    postArgsConditions List<Property Map>
    A post_args_condition block as defined below.
    queryStringConditions List<Property Map>
    A query_string_condition block as defined below.
    remoteAddressConditions List<Property Map>
    A remote_address_condition block as defined below.
    requestBodyConditions List<Property Map>
    A request_body_condition block as defined below.
    requestHeaderConditions List<Property Map>
    A request_header_condition block as defined below.
    requestMethodConditions List<Property Map>
    A request_method_condition block as defined below.
    requestSchemeConditions List<Property Map>
    A request_scheme_condition block as defined below.
    requestUriConditions List<Property Map>
    A request_uri_condition block as defined below.
    serverPortConditions List<Property Map>
    A server_port_condition block as defined below.
    socketAddressConditions List<Property Map>
    A socket_address_condition block as defined below.
    sslProtocolConditions List<Property Map>
    A ssl_protocol_condition block as defined below.
    urlFileExtensionConditions List<Property Map>
    A url_file_extension_condition block as defined below.
    urlFilenameConditions List<Property Map>
    A url_filename_condition block as defined below.
    urlPathConditions List<Property Map>
    A url_path_condition block as defined below.

    FrontdoorRuleConditionsClientPortCondition, FrontdoorRuleConditionsClientPortConditionArgs

    Operator string
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    MatchValues List<string>
    One or more integer values(e.g. "1") representing the value of the client port to match. If multiple values are specified, they're evaluated using OR logic.
    NegateCondition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    Operator string
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    MatchValues []string
    One or more integer values(e.g. "1") representing the value of the client port to match. If multiple values are specified, they're evaluated using OR logic.
    NegateCondition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    operator String
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    matchValues List<String>
    One or more integer values(e.g. "1") representing the value of the client port to match. If multiple values are specified, they're evaluated using OR logic.
    negateCondition Boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    operator string
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    matchValues string[]
    One or more integer values(e.g. "1") representing the value of the client port to match. If multiple values are specified, they're evaluated using OR logic.
    negateCondition boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    operator str
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    match_values Sequence[str]
    One or more integer values(e.g. "1") representing the value of the client port to match. If multiple values are specified, they're evaluated using OR logic.
    negate_condition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    operator String
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    matchValues List<String>
    One or more integer values(e.g. "1") representing the value of the client port to match. If multiple values are specified, they're evaluated using OR logic.
    negateCondition Boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.

    FrontdoorRuleConditionsCookiesCondition, FrontdoorRuleConditionsCookiesConditionArgs

    CookieName string
    A string value representing the name of the cookie.
    Operator string
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    MatchValues List<string>
    One or more string or integer values(e.g. "1") representing the value of the request header to match. If multiple values are specified, they're evaluated using OR logic.
    NegateCondition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    Transforms List<string>
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    CookieName string
    A string value representing the name of the cookie.
    Operator string
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    MatchValues []string
    One or more string or integer values(e.g. "1") representing the value of the request header to match. If multiple values are specified, they're evaluated using OR logic.
    NegateCondition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    Transforms []string
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    cookieName String
    A string value representing the name of the cookie.
    operator String
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    matchValues List<String>
    One or more string or integer values(e.g. "1") representing the value of the request header to match. If multiple values are specified, they're evaluated using OR logic.
    negateCondition Boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    transforms List<String>
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    cookieName string
    A string value representing the name of the cookie.
    operator string
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    matchValues string[]
    One or more string or integer values(e.g. "1") representing the value of the request header to match. If multiple values are specified, they're evaluated using OR logic.
    negateCondition boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    transforms string[]
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    cookie_name str
    A string value representing the name of the cookie.
    operator str
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    match_values Sequence[str]
    One or more string or integer values(e.g. "1") representing the value of the request header to match. If multiple values are specified, they're evaluated using OR logic.
    negate_condition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    transforms Sequence[str]
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    cookieName String
    A string value representing the name of the cookie.
    operator String
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    matchValues List<String>
    One or more string or integer values(e.g. "1") representing the value of the request header to match. If multiple values are specified, they're evaluated using OR logic.
    negateCondition Boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    transforms List<String>
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.

    FrontdoorRuleConditionsHostNameCondition, FrontdoorRuleConditionsHostNameConditionArgs

    Operator string
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    MatchValues List<string>
    A list of one or more string values representing the value of the request hostname to match. If multiple values are specified, they're evaluated using OR logic.
    NegateCondition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    Transforms List<string>
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    Operator string
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    MatchValues []string
    A list of one or more string values representing the value of the request hostname to match. If multiple values are specified, they're evaluated using OR logic.
    NegateCondition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    Transforms []string
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    operator String
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    matchValues List<String>
    A list of one or more string values representing the value of the request hostname to match. If multiple values are specified, they're evaluated using OR logic.
    negateCondition Boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    transforms List<String>
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    operator string
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    matchValues string[]
    A list of one or more string values representing the value of the request hostname to match. If multiple values are specified, they're evaluated using OR logic.
    negateCondition boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    transforms string[]
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    operator str
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    match_values Sequence[str]
    A list of one or more string values representing the value of the request hostname to match. If multiple values are specified, they're evaluated using OR logic.
    negate_condition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    transforms Sequence[str]
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    operator String
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    matchValues List<String>
    A list of one or more string values representing the value of the request hostname to match. If multiple values are specified, they're evaluated using OR logic.
    negateCondition Boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    transforms List<String>
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.

    FrontdoorRuleConditionsHttpVersionCondition, FrontdoorRuleConditionsHttpVersionConditionArgs

    MatchValues List<string>
    What HTTP version should this condition match? Possible values 2.0, 1.1, 1.0 or 0.9.
    NegateCondition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    Operator string
    Possible value Equal. Defaults to Equal.
    MatchValues []string
    What HTTP version should this condition match? Possible values 2.0, 1.1, 1.0 or 0.9.
    NegateCondition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    Operator string
    Possible value Equal. Defaults to Equal.
    matchValues List<String>
    What HTTP version should this condition match? Possible values 2.0, 1.1, 1.0 or 0.9.
    negateCondition Boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    operator String
    Possible value Equal. Defaults to Equal.
    matchValues string[]
    What HTTP version should this condition match? Possible values 2.0, 1.1, 1.0 or 0.9.
    negateCondition boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    operator string
    Possible value Equal. Defaults to Equal.
    match_values Sequence[str]
    What HTTP version should this condition match? Possible values 2.0, 1.1, 1.0 or 0.9.
    negate_condition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    operator str
    Possible value Equal. Defaults to Equal.
    matchValues List<String>
    What HTTP version should this condition match? Possible values 2.0, 1.1, 1.0 or 0.9.
    negateCondition Boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    operator String
    Possible value Equal. Defaults to Equal.

    FrontdoorRuleConditionsIsDeviceCondition, FrontdoorRuleConditionsIsDeviceConditionArgs

    MatchValues string
    Which device should this rule match on? Possible values Mobile or Desktop.
    NegateCondition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    Operator string
    Possible value Equal. Defaults to Equal.
    MatchValues string
    Which device should this rule match on? Possible values Mobile or Desktop.
    NegateCondition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    Operator string
    Possible value Equal. Defaults to Equal.
    matchValues String
    Which device should this rule match on? Possible values Mobile or Desktop.
    negateCondition Boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    operator String
    Possible value Equal. Defaults to Equal.
    matchValues string
    Which device should this rule match on? Possible values Mobile or Desktop.
    negateCondition boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    operator string
    Possible value Equal. Defaults to Equal.
    match_values str
    Which device should this rule match on? Possible values Mobile or Desktop.
    negate_condition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    operator str
    Possible value Equal. Defaults to Equal.
    matchValues String
    Which device should this rule match on? Possible values Mobile or Desktop.
    negateCondition Boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    operator String
    Possible value Equal. Defaults to Equal.

    FrontdoorRuleConditionsPostArgsCondition, FrontdoorRuleConditionsPostArgsConditionArgs

    Operator string
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    PostArgsName string
    A string value representing the name of the POST argument.
    MatchValues List<string>
    One or more string or integer values(e.g. "1") representing the value of the POST argument to match. If multiple values are specified, they're evaluated using OR logic.
    NegateCondition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    Transforms List<string>
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    Operator string
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    PostArgsName string
    A string value representing the name of the POST argument.
    MatchValues []string
    One or more string or integer values(e.g. "1") representing the value of the POST argument to match. If multiple values are specified, they're evaluated using OR logic.
    NegateCondition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    Transforms []string
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    operator String
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    postArgsName String
    A string value representing the name of the POST argument.
    matchValues List<String>
    One or more string or integer values(e.g. "1") representing the value of the POST argument to match. If multiple values are specified, they're evaluated using OR logic.
    negateCondition Boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    transforms List<String>
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    operator string
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    postArgsName string
    A string value representing the name of the POST argument.
    matchValues string[]
    One or more string or integer values(e.g. "1") representing the value of the POST argument to match. If multiple values are specified, they're evaluated using OR logic.
    negateCondition boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    transforms string[]
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    operator str
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    post_args_name str
    A string value representing the name of the POST argument.
    match_values Sequence[str]
    One or more string or integer values(e.g. "1") representing the value of the POST argument to match. If multiple values are specified, they're evaluated using OR logic.
    negate_condition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    transforms Sequence[str]
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    operator String
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    postArgsName String
    A string value representing the name of the POST argument.
    matchValues List<String>
    One or more string or integer values(e.g. "1") representing the value of the POST argument to match. If multiple values are specified, they're evaluated using OR logic.
    negateCondition Boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    transforms List<String>
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.

    FrontdoorRuleConditionsQueryStringCondition, FrontdoorRuleConditionsQueryStringConditionArgs

    Operator string
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    MatchValues List<string>
    One or more string or integer values(e.g. "1") representing the value of the query string to match. If multiple values are specified, they're evaluated using OR logic.
    NegateCondition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    Transforms List<string>
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    Operator string
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    MatchValues []string
    One or more string or integer values(e.g. "1") representing the value of the query string to match. If multiple values are specified, they're evaluated using OR logic.
    NegateCondition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    Transforms []string
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    operator String
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    matchValues List<String>
    One or more string or integer values(e.g. "1") representing the value of the query string to match. If multiple values are specified, they're evaluated using OR logic.
    negateCondition Boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    transforms List<String>
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    operator string
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    matchValues string[]
    One or more string or integer values(e.g. "1") representing the value of the query string to match. If multiple values are specified, they're evaluated using OR logic.
    negateCondition boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    transforms string[]
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    operator str
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    match_values Sequence[str]
    One or more string or integer values(e.g. "1") representing the value of the query string to match. If multiple values are specified, they're evaluated using OR logic.
    negate_condition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    transforms Sequence[str]
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    operator String
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    matchValues List<String>
    One or more string or integer values(e.g. "1") representing the value of the query string to match. If multiple values are specified, they're evaluated using OR logic.
    negateCondition Boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    transforms List<String>
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.

    FrontdoorRuleConditionsRemoteAddressCondition, FrontdoorRuleConditionsRemoteAddressConditionArgs

    MatchValues List<string>

    For the IP Match or IP Not Match operators: specify one or more IP address ranges. If multiple IP address ranges are specified, they're evaluated using OR logic. For the Geo Match or Geo Not Match operators: specify one or more locations using their country code.

    ->NOTE: See the Specifying IP Address Ranges section below on how to correctly define the match_values field.

    NegateCondition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    Operator string
    The type of the remote address to match. Possible values include Any, GeoMatch or IPMatch. Use the negate_condition to specify Not GeoMatch or Not IPMatch. Defaults to IPMatch.
    MatchValues []string

    For the IP Match or IP Not Match operators: specify one or more IP address ranges. If multiple IP address ranges are specified, they're evaluated using OR logic. For the Geo Match or Geo Not Match operators: specify one or more locations using their country code.

    ->NOTE: See the Specifying IP Address Ranges section below on how to correctly define the match_values field.

    NegateCondition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    Operator string
    The type of the remote address to match. Possible values include Any, GeoMatch or IPMatch. Use the negate_condition to specify Not GeoMatch or Not IPMatch. Defaults to IPMatch.
    matchValues List<String>

    For the IP Match or IP Not Match operators: specify one or more IP address ranges. If multiple IP address ranges are specified, they're evaluated using OR logic. For the Geo Match or Geo Not Match operators: specify one or more locations using their country code.

    ->NOTE: See the Specifying IP Address Ranges section below on how to correctly define the match_values field.

    negateCondition Boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    operator String
    The type of the remote address to match. Possible values include Any, GeoMatch or IPMatch. Use the negate_condition to specify Not GeoMatch or Not IPMatch. Defaults to IPMatch.
    matchValues string[]

    For the IP Match or IP Not Match operators: specify one or more IP address ranges. If multiple IP address ranges are specified, they're evaluated using OR logic. For the Geo Match or Geo Not Match operators: specify one or more locations using their country code.

    ->NOTE: See the Specifying IP Address Ranges section below on how to correctly define the match_values field.

    negateCondition boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    operator string
    The type of the remote address to match. Possible values include Any, GeoMatch or IPMatch. Use the negate_condition to specify Not GeoMatch or Not IPMatch. Defaults to IPMatch.
    match_values Sequence[str]

    For the IP Match or IP Not Match operators: specify one or more IP address ranges. If multiple IP address ranges are specified, they're evaluated using OR logic. For the Geo Match or Geo Not Match operators: specify one or more locations using their country code.

    ->NOTE: See the Specifying IP Address Ranges section below on how to correctly define the match_values field.

    negate_condition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    operator str
    The type of the remote address to match. Possible values include Any, GeoMatch or IPMatch. Use the negate_condition to specify Not GeoMatch or Not IPMatch. Defaults to IPMatch.
    matchValues List<String>

    For the IP Match or IP Not Match operators: specify one or more IP address ranges. If multiple IP address ranges are specified, they're evaluated using OR logic. For the Geo Match or Geo Not Match operators: specify one or more locations using their country code.

    ->NOTE: See the Specifying IP Address Ranges section below on how to correctly define the match_values field.

    negateCondition Boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    operator String
    The type of the remote address to match. Possible values include Any, GeoMatch or IPMatch. Use the negate_condition to specify Not GeoMatch or Not IPMatch. Defaults to IPMatch.

    FrontdoorRuleConditionsRequestBodyCondition, FrontdoorRuleConditionsRequestBodyConditionArgs

    MatchValues List<string>
    A list of one or more string or integer values(e.g. "1") representing the value of the request body text to match. If multiple values are specified, they're evaluated using OR logic.
    Operator string
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    NegateCondition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    Transforms List<string>
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    MatchValues []string
    A list of one or more string or integer values(e.g. "1") representing the value of the request body text to match. If multiple values are specified, they're evaluated using OR logic.
    Operator string
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    NegateCondition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    Transforms []string
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    matchValues List<String>
    A list of one or more string or integer values(e.g. "1") representing the value of the request body text to match. If multiple values are specified, they're evaluated using OR logic.
    operator String
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    negateCondition Boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    transforms List<String>
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    matchValues string[]
    A list of one or more string or integer values(e.g. "1") representing the value of the request body text to match. If multiple values are specified, they're evaluated using OR logic.
    operator string
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    negateCondition boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    transforms string[]
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    match_values Sequence[str]
    A list of one or more string or integer values(e.g. "1") representing the value of the request body text to match. If multiple values are specified, they're evaluated using OR logic.
    operator str
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    negate_condition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    transforms Sequence[str]
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    matchValues List<String>
    A list of one or more string or integer values(e.g. "1") representing the value of the request body text to match. If multiple values are specified, they're evaluated using OR logic.
    operator String
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    negateCondition Boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    transforms List<String>
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.

    FrontdoorRuleConditionsRequestHeaderCondition, FrontdoorRuleConditionsRequestHeaderConditionArgs

    HeaderName string
    A string value representing the name of the POST argument.
    Operator string
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    MatchValues List<string>
    One or more string or integer values(e.g. "1") representing the value of the request header to match. If multiple values are specified, they're evaluated using OR logic.
    NegateCondition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    Transforms List<string>
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    HeaderName string
    A string value representing the name of the POST argument.
    Operator string
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    MatchValues []string
    One or more string or integer values(e.g. "1") representing the value of the request header to match. If multiple values are specified, they're evaluated using OR logic.
    NegateCondition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    Transforms []string
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    headerName String
    A string value representing the name of the POST argument.
    operator String
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    matchValues List<String>
    One or more string or integer values(e.g. "1") representing the value of the request header to match. If multiple values are specified, they're evaluated using OR logic.
    negateCondition Boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    transforms List<String>
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    headerName string
    A string value representing the name of the POST argument.
    operator string
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    matchValues string[]
    One or more string or integer values(e.g. "1") representing the value of the request header to match. If multiple values are specified, they're evaluated using OR logic.
    negateCondition boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    transforms string[]
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    header_name str
    A string value representing the name of the POST argument.
    operator str
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    match_values Sequence[str]
    One or more string or integer values(e.g. "1") representing the value of the request header to match. If multiple values are specified, they're evaluated using OR logic.
    negate_condition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    transforms Sequence[str]
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    headerName String
    A string value representing the name of the POST argument.
    operator String
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    matchValues List<String>
    One or more string or integer values(e.g. "1") representing the value of the request header to match. If multiple values are specified, they're evaluated using OR logic.
    negateCondition Boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    transforms List<String>
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.

    FrontdoorRuleConditionsRequestMethodCondition, FrontdoorRuleConditionsRequestMethodConditionArgs

    MatchValues List<string>
    A list of one or more HTTP methods. Possible values include GET, POST, PUT, DELETE, HEAD, OPTIONS or TRACE. If multiple values are specified, they're evaluated using OR logic.
    NegateCondition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    Operator string
    Possible value Equal. Defaults to Equal.
    MatchValues []string
    A list of one or more HTTP methods. Possible values include GET, POST, PUT, DELETE, HEAD, OPTIONS or TRACE. If multiple values are specified, they're evaluated using OR logic.
    NegateCondition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    Operator string
    Possible value Equal. Defaults to Equal.
    matchValues List<String>
    A list of one or more HTTP methods. Possible values include GET, POST, PUT, DELETE, HEAD, OPTIONS or TRACE. If multiple values are specified, they're evaluated using OR logic.
    negateCondition Boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    operator String
    Possible value Equal. Defaults to Equal.
    matchValues string[]
    A list of one or more HTTP methods. Possible values include GET, POST, PUT, DELETE, HEAD, OPTIONS or TRACE. If multiple values are specified, they're evaluated using OR logic.
    negateCondition boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    operator string
    Possible value Equal. Defaults to Equal.
    match_values Sequence[str]
    A list of one or more HTTP methods. Possible values include GET, POST, PUT, DELETE, HEAD, OPTIONS or TRACE. If multiple values are specified, they're evaluated using OR logic.
    negate_condition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    operator str
    Possible value Equal. Defaults to Equal.
    matchValues List<String>
    A list of one or more HTTP methods. Possible values include GET, POST, PUT, DELETE, HEAD, OPTIONS or TRACE. If multiple values are specified, they're evaluated using OR logic.
    negateCondition Boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    operator String
    Possible value Equal. Defaults to Equal.

    FrontdoorRuleConditionsRequestSchemeCondition, FrontdoorRuleConditionsRequestSchemeConditionArgs

    MatchValues string
    The requests protocol to match. Possible values include HTTP or HTTPS.
    NegateCondition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    Operator string
    Possible value Equal. Defaults to Equal.
    MatchValues string
    The requests protocol to match. Possible values include HTTP or HTTPS.
    NegateCondition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    Operator string
    Possible value Equal. Defaults to Equal.
    matchValues String
    The requests protocol to match. Possible values include HTTP or HTTPS.
    negateCondition Boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    operator String
    Possible value Equal. Defaults to Equal.
    matchValues string
    The requests protocol to match. Possible values include HTTP or HTTPS.
    negateCondition boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    operator string
    Possible value Equal. Defaults to Equal.
    match_values str
    The requests protocol to match. Possible values include HTTP or HTTPS.
    negate_condition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    operator str
    Possible value Equal. Defaults to Equal.
    matchValues String
    The requests protocol to match. Possible values include HTTP or HTTPS.
    negateCondition Boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    operator String
    Possible value Equal. Defaults to Equal.

    FrontdoorRuleConditionsRequestUriCondition, FrontdoorRuleConditionsRequestUriConditionArgs

    Operator string
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    MatchValues List<string>
    One or more string or integer values(e.g. "1") representing the value of the request URL to match. If multiple values are specified, they're evaluated using OR logic.
    NegateCondition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    Transforms List<string>
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    Operator string
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    MatchValues []string
    One or more string or integer values(e.g. "1") representing the value of the request URL to match. If multiple values are specified, they're evaluated using OR logic.
    NegateCondition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    Transforms []string
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    operator String
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    matchValues List<String>
    One or more string or integer values(e.g. "1") representing the value of the request URL to match. If multiple values are specified, they're evaluated using OR logic.
    negateCondition Boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    transforms List<String>
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    operator string
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    matchValues string[]
    One or more string or integer values(e.g. "1") representing the value of the request URL to match. If multiple values are specified, they're evaluated using OR logic.
    negateCondition boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    transforms string[]
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    operator str
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    match_values Sequence[str]
    One or more string or integer values(e.g. "1") representing the value of the request URL to match. If multiple values are specified, they're evaluated using OR logic.
    negate_condition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    transforms Sequence[str]
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    operator String
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    matchValues List<String>
    One or more string or integer values(e.g. "1") representing the value of the request URL to match. If multiple values are specified, they're evaluated using OR logic.
    negateCondition Boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    transforms List<String>
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.

    FrontdoorRuleConditionsServerPortCondition, FrontdoorRuleConditionsServerPortConditionArgs

    MatchValues List<string>
    A list of one or more integer values(e.g. "1") representing the value of the client port to match. Possible values include 80 or 443. If multiple values are specified, they're evaluated using OR logic.
    Operator string
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    NegateCondition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    MatchValues []string
    A list of one or more integer values(e.g. "1") representing the value of the client port to match. Possible values include 80 or 443. If multiple values are specified, they're evaluated using OR logic.
    Operator string
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    NegateCondition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    matchValues List<String>
    A list of one or more integer values(e.g. "1") representing the value of the client port to match. Possible values include 80 or 443. If multiple values are specified, they're evaluated using OR logic.
    operator String
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    negateCondition Boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    matchValues string[]
    A list of one or more integer values(e.g. "1") representing the value of the client port to match. Possible values include 80 or 443. If multiple values are specified, they're evaluated using OR logic.
    operator string
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    negateCondition boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    match_values Sequence[str]
    A list of one or more integer values(e.g. "1") representing the value of the client port to match. Possible values include 80 or 443. If multiple values are specified, they're evaluated using OR logic.
    operator str
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    negate_condition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    matchValues List<String>
    A list of one or more integer values(e.g. "1") representing the value of the client port to match. Possible values include 80 or 443. If multiple values are specified, they're evaluated using OR logic.
    operator String
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    negateCondition Boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.

    FrontdoorRuleConditionsSocketAddressCondition, FrontdoorRuleConditionsSocketAddressConditionArgs

    MatchValues List<string>

    Specify one or more IP address ranges. If multiple IP address ranges are specified, they're evaluated using OR logic.

    ->NOTE: See the Specifying IP Address Ranges section below on how to correctly define the match_values field.

    NegateCondition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    Operator string

    The type of match. The Possible values are IpMatch or Any. Defaults to IPMatch.

    ->NOTE: If the value of the operator field is set to IpMatch then the match_values field is also required.

    MatchValues []string

    Specify one or more IP address ranges. If multiple IP address ranges are specified, they're evaluated using OR logic.

    ->NOTE: See the Specifying IP Address Ranges section below on how to correctly define the match_values field.

    NegateCondition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    Operator string

    The type of match. The Possible values are IpMatch or Any. Defaults to IPMatch.

    ->NOTE: If the value of the operator field is set to IpMatch then the match_values field is also required.

    matchValues List<String>

    Specify one or more IP address ranges. If multiple IP address ranges are specified, they're evaluated using OR logic.

    ->NOTE: See the Specifying IP Address Ranges section below on how to correctly define the match_values field.

    negateCondition Boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    operator String

    The type of match. The Possible values are IpMatch or Any. Defaults to IPMatch.

    ->NOTE: If the value of the operator field is set to IpMatch then the match_values field is also required.

    matchValues string[]

    Specify one or more IP address ranges. If multiple IP address ranges are specified, they're evaluated using OR logic.

    ->NOTE: See the Specifying IP Address Ranges section below on how to correctly define the match_values field.

    negateCondition boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    operator string

    The type of match. The Possible values are IpMatch or Any. Defaults to IPMatch.

    ->NOTE: If the value of the operator field is set to IpMatch then the match_values field is also required.

    match_values Sequence[str]

    Specify one or more IP address ranges. If multiple IP address ranges are specified, they're evaluated using OR logic.

    ->NOTE: See the Specifying IP Address Ranges section below on how to correctly define the match_values field.

    negate_condition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    operator str

    The type of match. The Possible values are IpMatch or Any. Defaults to IPMatch.

    ->NOTE: If the value of the operator field is set to IpMatch then the match_values field is also required.

    matchValues List<String>

    Specify one or more IP address ranges. If multiple IP address ranges are specified, they're evaluated using OR logic.

    ->NOTE: See the Specifying IP Address Ranges section below on how to correctly define the match_values field.

    negateCondition Boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    operator String

    The type of match. The Possible values are IpMatch or Any. Defaults to IPMatch.

    ->NOTE: If the value of the operator field is set to IpMatch then the match_values field is also required.

    FrontdoorRuleConditionsSslProtocolCondition, FrontdoorRuleConditionsSslProtocolConditionArgs

    MatchValues List<string>
    A list of one or more HTTP methods. Possible values are TLSv1, TLSv1.1 and TLSv1.2 logic.
    NegateCondition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    Operator string
    Possible value Equal. Defaults to Equal.
    MatchValues []string
    A list of one or more HTTP methods. Possible values are TLSv1, TLSv1.1 and TLSv1.2 logic.
    NegateCondition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    Operator string
    Possible value Equal. Defaults to Equal.
    matchValues List<String>
    A list of one or more HTTP methods. Possible values are TLSv1, TLSv1.1 and TLSv1.2 logic.
    negateCondition Boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    operator String
    Possible value Equal. Defaults to Equal.
    matchValues string[]
    A list of one or more HTTP methods. Possible values are TLSv1, TLSv1.1 and TLSv1.2 logic.
    negateCondition boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    operator string
    Possible value Equal. Defaults to Equal.
    match_values Sequence[str]
    A list of one or more HTTP methods. Possible values are TLSv1, TLSv1.1 and TLSv1.2 logic.
    negate_condition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    operator str
    Possible value Equal. Defaults to Equal.
    matchValues List<String>
    A list of one or more HTTP methods. Possible values are TLSv1, TLSv1.1 and TLSv1.2 logic.
    negateCondition Boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    operator String
    Possible value Equal. Defaults to Equal.

    FrontdoorRuleConditionsUrlFileExtensionCondition, FrontdoorRuleConditionsUrlFileExtensionConditionArgs

    MatchValues List<string>
    A list of one or more string or integer values(e.g. "1") representing the value of the request file extension to match. If multiple values are specified, they're evaluated using OR logic.
    Operator string
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    NegateCondition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    Transforms List<string>
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    MatchValues []string
    A list of one or more string or integer values(e.g. "1") representing the value of the request file extension to match. If multiple values are specified, they're evaluated using OR logic.
    Operator string
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    NegateCondition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    Transforms []string
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    matchValues List<String>
    A list of one or more string or integer values(e.g. "1") representing the value of the request file extension to match. If multiple values are specified, they're evaluated using OR logic.
    operator String
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    negateCondition Boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    transforms List<String>
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    matchValues string[]
    A list of one or more string or integer values(e.g. "1") representing the value of the request file extension to match. If multiple values are specified, they're evaluated using OR logic.
    operator string
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    negateCondition boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    transforms string[]
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    match_values Sequence[str]
    A list of one or more string or integer values(e.g. "1") representing the value of the request file extension to match. If multiple values are specified, they're evaluated using OR logic.
    operator str
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    negate_condition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    transforms Sequence[str]
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    matchValues List<String>
    A list of one or more string or integer values(e.g. "1") representing the value of the request file extension to match. If multiple values are specified, they're evaluated using OR logic.
    operator String
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    negateCondition Boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    transforms List<String>
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.

    FrontdoorRuleConditionsUrlFilenameCondition, FrontdoorRuleConditionsUrlFilenameConditionArgs

    Operator string
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    MatchValues List<string>

    A list of one or more string or integer values(e.g. "1") representing the value of the request file name to match. If multiple values are specified, they're evaluated using OR logic.

    NOTE: The match_values field is only optional if the operator is set to Any.

    NegateCondition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    Transforms List<string>
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    Operator string
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    MatchValues []string

    A list of one or more string or integer values(e.g. "1") representing the value of the request file name to match. If multiple values are specified, they're evaluated using OR logic.

    NOTE: The match_values field is only optional if the operator is set to Any.

    NegateCondition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    Transforms []string
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    operator String
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    matchValues List<String>

    A list of one or more string or integer values(e.g. "1") representing the value of the request file name to match. If multiple values are specified, they're evaluated using OR logic.

    NOTE: The match_values field is only optional if the operator is set to Any.

    negateCondition Boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    transforms List<String>
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    operator string
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    matchValues string[]

    A list of one or more string or integer values(e.g. "1") representing the value of the request file name to match. If multiple values are specified, they're evaluated using OR logic.

    NOTE: The match_values field is only optional if the operator is set to Any.

    negateCondition boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    transforms string[]
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    operator str
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    match_values Sequence[str]

    A list of one or more string or integer values(e.g. "1") representing the value of the request file name to match. If multiple values are specified, they're evaluated using OR logic.

    NOTE: The match_values field is only optional if the operator is set to Any.

    negate_condition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    transforms Sequence[str]
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    operator String
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    matchValues List<String>

    A list of one or more string or integer values(e.g. "1") representing the value of the request file name to match. If multiple values are specified, they're evaluated using OR logic.

    NOTE: The match_values field is only optional if the operator is set to Any.

    negateCondition Boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    transforms List<String>
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.

    FrontdoorRuleConditionsUrlPathCondition, FrontdoorRuleConditionsUrlPathConditionArgs

    Operator string
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    MatchValues List<string>
    One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic.
    NegateCondition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    Transforms List<string>
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    Operator string
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    MatchValues []string
    One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic.
    NegateCondition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    Transforms []string
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    operator String
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    matchValues List<String>
    One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic.
    negateCondition Boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    transforms List<String>
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    operator string
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    matchValues string[]
    One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic.
    negateCondition boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    transforms string[]
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    operator str
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    match_values Sequence[str]
    One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic.
    negate_condition bool
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    transforms Sequence[str]
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.
    operator String
    A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below.
    matchValues List<String>
    One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic.
    negateCondition Boolean
    If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below.
    transforms List<String>
    A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below.

    Import

    Front Door Rules can be imported using the resource id, e.g.

    $ pulumi import azure:cdn/frontdoorRule:FrontdoorRule example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resourceGroup1/providers/Microsoft.Cdn/profiles/profile1/ruleSets/ruleSet1/rules/rule1
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    Azure Classic pulumi/pulumi-azure
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the azurerm Terraform Provider.
    azure logo

    We recommend using Azure Native.

    Azure Classic v5.81.0 published on Monday, Jun 24, 2024 by Pulumi