Google Cloud Native is in preview. Google Cloud Classic is fully supported.
google-native.compute/v1.SecurityPolicy
Explore with Pulumi AI
Google Cloud Native is in preview. Google Cloud Classic is fully supported.
Creates a new policy in the specified project using the data included in the request.
Create SecurityPolicy Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new SecurityPolicy(name: string, args?: SecurityPolicyArgs, opts?: CustomResourceOptions);@overload
def SecurityPolicy(resource_name: str,
                   args: Optional[SecurityPolicyArgs] = None,
                   opts: Optional[ResourceOptions] = None)
@overload
def SecurityPolicy(resource_name: str,
                   opts: Optional[ResourceOptions] = None,
                   adaptive_protection_config: Optional[SecurityPolicyAdaptiveProtectionConfigArgs] = None,
                   advanced_options_config: Optional[SecurityPolicyAdvancedOptionsConfigArgs] = None,
                   ddos_protection_config: Optional[SecurityPolicyDdosProtectionConfigArgs] = None,
                   description: Optional[str] = None,
                   labels: Optional[Mapping[str, str]] = None,
                   name: Optional[str] = None,
                   project: Optional[str] = None,
                   recaptcha_options_config: Optional[SecurityPolicyRecaptchaOptionsConfigArgs] = None,
                   request_id: Optional[str] = None,
                   rules: Optional[Sequence[SecurityPolicyRuleArgs]] = None,
                   type: Optional[SecurityPolicyType] = None,
                   user_defined_fields: Optional[Sequence[SecurityPolicyUserDefinedFieldArgs]] = None)func NewSecurityPolicy(ctx *Context, name string, args *SecurityPolicyArgs, opts ...ResourceOption) (*SecurityPolicy, error)public SecurityPolicy(string name, SecurityPolicyArgs? args = null, CustomResourceOptions? opts = null)
public SecurityPolicy(String name, SecurityPolicyArgs args)
public SecurityPolicy(String name, SecurityPolicyArgs args, CustomResourceOptions options)
type: google-native:compute/v1:SecurityPolicy
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 SecurityPolicyArgs
- 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 SecurityPolicyArgs
- 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 SecurityPolicyArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args SecurityPolicyArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args SecurityPolicyArgs
- 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 examplesecurityPolicyResourceResourceFromComputev1 = new GoogleNative.Compute.V1.SecurityPolicy("examplesecurityPolicyResourceResourceFromComputev1", new()
{
    AdaptiveProtectionConfig = new GoogleNative.Compute.V1.Inputs.SecurityPolicyAdaptiveProtectionConfigArgs
    {
        Layer7DdosDefenseConfig = new GoogleNative.Compute.V1.Inputs.SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfigArgs
        {
            Enable = false,
            RuleVisibility = GoogleNative.Compute.V1.SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfigRuleVisibility.Premium,
            ThresholdConfigs = new[]
            {
                new GoogleNative.Compute.V1.Inputs.SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfigThresholdConfigArgs
                {
                    AutoDeployConfidenceThreshold = 0,
                    AutoDeployExpirationSec = 0,
                    AutoDeployImpactedBaselineThreshold = 0,
                    AutoDeployLoadThreshold = 0,
                    Name = "string",
                },
            },
        },
    },
    AdvancedOptionsConfig = new GoogleNative.Compute.V1.Inputs.SecurityPolicyAdvancedOptionsConfigArgs
    {
        JsonCustomConfig = new GoogleNative.Compute.V1.Inputs.SecurityPolicyAdvancedOptionsConfigJsonCustomConfigArgs
        {
            ContentTypes = new[]
            {
                "string",
            },
        },
        JsonParsing = GoogleNative.Compute.V1.SecurityPolicyAdvancedOptionsConfigJsonParsing.Disabled,
        LogLevel = GoogleNative.Compute.V1.SecurityPolicyAdvancedOptionsConfigLogLevel.Normal,
        UserIpRequestHeaders = new[]
        {
            "string",
        },
    },
    DdosProtectionConfig = new GoogleNative.Compute.V1.Inputs.SecurityPolicyDdosProtectionConfigArgs
    {
        DdosProtection = GoogleNative.Compute.V1.SecurityPolicyDdosProtectionConfigDdosProtection.Advanced,
    },
    Description = "string",
    Labels = 
    {
        { "string", "string" },
    },
    Name = "string",
    Project = "string",
    RecaptchaOptionsConfig = new GoogleNative.Compute.V1.Inputs.SecurityPolicyRecaptchaOptionsConfigArgs
    {
        RedirectSiteKey = "string",
    },
    RequestId = "string",
    Rules = new[]
    {
        new GoogleNative.Compute.V1.Inputs.SecurityPolicyRuleArgs
        {
            Action = "string",
            Description = "string",
            HeaderAction = new GoogleNative.Compute.V1.Inputs.SecurityPolicyRuleHttpHeaderActionArgs
            {
                RequestHeadersToAdds = new[]
                {
                    new GoogleNative.Compute.V1.Inputs.SecurityPolicyRuleHttpHeaderActionHttpHeaderOptionArgs
                    {
                        HeaderName = "string",
                        HeaderValue = "string",
                    },
                },
            },
            Match = new GoogleNative.Compute.V1.Inputs.SecurityPolicyRuleMatcherArgs
            {
                Config = new GoogleNative.Compute.V1.Inputs.SecurityPolicyRuleMatcherConfigArgs
                {
                    SrcIpRanges = new[]
                    {
                        "string",
                    },
                },
                Expr = new GoogleNative.Compute.V1.Inputs.ExprArgs
                {
                    Description = "string",
                    Expression = "string",
                    Location = "string",
                    Title = "string",
                },
                VersionedExpr = GoogleNative.Compute.V1.SecurityPolicyRuleMatcherVersionedExpr.SrcIpsV1,
            },
            NetworkMatch = new GoogleNative.Compute.V1.Inputs.SecurityPolicyRuleNetworkMatcherArgs
            {
                DestIpRanges = new[]
                {
                    "string",
                },
                DestPorts = new[]
                {
                    "string",
                },
                IpProtocols = new[]
                {
                    "string",
                },
                SrcAsns = new[]
                {
                    0,
                },
                SrcIpRanges = new[]
                {
                    "string",
                },
                SrcPorts = new[]
                {
                    "string",
                },
                SrcRegionCodes = new[]
                {
                    "string",
                },
                UserDefinedFields = new[]
                {
                    new GoogleNative.Compute.V1.Inputs.SecurityPolicyRuleNetworkMatcherUserDefinedFieldMatchArgs
                    {
                        Name = "string",
                        Values = new[]
                        {
                            "string",
                        },
                    },
                },
            },
            PreconfiguredWafConfig = new GoogleNative.Compute.V1.Inputs.SecurityPolicyRulePreconfiguredWafConfigArgs
            {
                Exclusions = new[]
                {
                    new GoogleNative.Compute.V1.Inputs.SecurityPolicyRulePreconfiguredWafConfigExclusionArgs
                    {
                        RequestCookiesToExclude = new[]
                        {
                            new GoogleNative.Compute.V1.Inputs.SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParamsArgs
                            {
                                Op = GoogleNative.Compute.V1.SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParamsOp.Contains,
                                Val = "string",
                            },
                        },
                        RequestHeadersToExclude = new[]
                        {
                            new GoogleNative.Compute.V1.Inputs.SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParamsArgs
                            {
                                Op = GoogleNative.Compute.V1.SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParamsOp.Contains,
                                Val = "string",
                            },
                        },
                        RequestQueryParamsToExclude = new[]
                        {
                            new GoogleNative.Compute.V1.Inputs.SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParamsArgs
                            {
                                Op = GoogleNative.Compute.V1.SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParamsOp.Contains,
                                Val = "string",
                            },
                        },
                        RequestUrisToExclude = new[]
                        {
                            new GoogleNative.Compute.V1.Inputs.SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParamsArgs
                            {
                                Op = GoogleNative.Compute.V1.SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParamsOp.Contains,
                                Val = "string",
                            },
                        },
                        TargetRuleIds = new[]
                        {
                            "string",
                        },
                        TargetRuleSet = "string",
                    },
                },
            },
            Preview = false,
            Priority = 0,
            RateLimitOptions = new GoogleNative.Compute.V1.Inputs.SecurityPolicyRuleRateLimitOptionsArgs
            {
                BanDurationSec = 0,
                BanThreshold = new GoogleNative.Compute.V1.Inputs.SecurityPolicyRuleRateLimitOptionsThresholdArgs
                {
                    Count = 0,
                    IntervalSec = 0,
                },
                ConformAction = "string",
                EnforceOnKey = GoogleNative.Compute.V1.SecurityPolicyRuleRateLimitOptionsEnforceOnKey.All,
                EnforceOnKeyConfigs = new[]
                {
                    new GoogleNative.Compute.V1.Inputs.SecurityPolicyRuleRateLimitOptionsEnforceOnKeyConfigArgs
                    {
                        EnforceOnKeyName = "string",
                        EnforceOnKeyType = GoogleNative.Compute.V1.SecurityPolicyRuleRateLimitOptionsEnforceOnKeyConfigEnforceOnKeyType.All,
                    },
                },
                EnforceOnKeyName = "string",
                ExceedAction = "string",
                ExceedRedirectOptions = new GoogleNative.Compute.V1.Inputs.SecurityPolicyRuleRedirectOptionsArgs
                {
                    Target = "string",
                    Type = GoogleNative.Compute.V1.SecurityPolicyRuleRedirectOptionsType.External302,
                },
                RateLimitThreshold = new GoogleNative.Compute.V1.Inputs.SecurityPolicyRuleRateLimitOptionsThresholdArgs
                {
                    Count = 0,
                    IntervalSec = 0,
                },
            },
            RedirectOptions = new GoogleNative.Compute.V1.Inputs.SecurityPolicyRuleRedirectOptionsArgs
            {
                Target = "string",
                Type = GoogleNative.Compute.V1.SecurityPolicyRuleRedirectOptionsType.External302,
            },
        },
    },
    Type = GoogleNative.Compute.V1.SecurityPolicyType.CloudArmor,
    UserDefinedFields = new[]
    {
        new GoogleNative.Compute.V1.Inputs.SecurityPolicyUserDefinedFieldArgs
        {
            Base = GoogleNative.Compute.V1.SecurityPolicyUserDefinedFieldBase.Ipv4,
            Mask = "string",
            Name = "string",
            Offset = 0,
            Size = 0,
        },
    },
});
example, err := computev1.NewSecurityPolicy(ctx, "examplesecurityPolicyResourceResourceFromComputev1", &computev1.SecurityPolicyArgs{
	AdaptiveProtectionConfig: &compute.SecurityPolicyAdaptiveProtectionConfigArgs{
		Layer7DdosDefenseConfig: &compute.SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfigArgs{
			Enable:         pulumi.Bool(false),
			RuleVisibility: computev1.SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfigRuleVisibilityPremium,
			ThresholdConfigs: compute.SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfigThresholdConfigArray{
				&compute.SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfigThresholdConfigArgs{
					AutoDeployConfidenceThreshold:       pulumi.Float64(0),
					AutoDeployExpirationSec:             pulumi.Int(0),
					AutoDeployImpactedBaselineThreshold: pulumi.Float64(0),
					AutoDeployLoadThreshold:             pulumi.Float64(0),
					Name:                                pulumi.String("string"),
				},
			},
		},
	},
	AdvancedOptionsConfig: &compute.SecurityPolicyAdvancedOptionsConfigArgs{
		JsonCustomConfig: &compute.SecurityPolicyAdvancedOptionsConfigJsonCustomConfigArgs{
			ContentTypes: pulumi.StringArray{
				pulumi.String("string"),
			},
		},
		JsonParsing: computev1.SecurityPolicyAdvancedOptionsConfigJsonParsingDisabled,
		LogLevel:    computev1.SecurityPolicyAdvancedOptionsConfigLogLevelNormal,
		UserIpRequestHeaders: pulumi.StringArray{
			pulumi.String("string"),
		},
	},
	DdosProtectionConfig: &compute.SecurityPolicyDdosProtectionConfigArgs{
		DdosProtection: computev1.SecurityPolicyDdosProtectionConfigDdosProtectionAdvanced,
	},
	Description: pulumi.String("string"),
	Labels: pulumi.StringMap{
		"string": pulumi.String("string"),
	},
	Name:    pulumi.String("string"),
	Project: pulumi.String("string"),
	RecaptchaOptionsConfig: &compute.SecurityPolicyRecaptchaOptionsConfigArgs{
		RedirectSiteKey: pulumi.String("string"),
	},
	RequestId: pulumi.String("string"),
	Rules: compute.SecurityPolicyRuleArray{
		&compute.SecurityPolicyRuleArgs{
			Action:      pulumi.String("string"),
			Description: pulumi.String("string"),
			HeaderAction: &compute.SecurityPolicyRuleHttpHeaderActionArgs{
				RequestHeadersToAdds: compute.SecurityPolicyRuleHttpHeaderActionHttpHeaderOptionArray{
					&compute.SecurityPolicyRuleHttpHeaderActionHttpHeaderOptionArgs{
						HeaderName:  pulumi.String("string"),
						HeaderValue: pulumi.String("string"),
					},
				},
			},
			Match: &compute.SecurityPolicyRuleMatcherArgs{
				Config: &compute.SecurityPolicyRuleMatcherConfigArgs{
					SrcIpRanges: pulumi.StringArray{
						pulumi.String("string"),
					},
				},
				Expr: &compute.ExprArgs{
					Description: pulumi.String("string"),
					Expression:  pulumi.String("string"),
					Location:    pulumi.String("string"),
					Title:       pulumi.String("string"),
				},
				VersionedExpr: computev1.SecurityPolicyRuleMatcherVersionedExprSrcIpsV1,
			},
			NetworkMatch: &compute.SecurityPolicyRuleNetworkMatcherArgs{
				DestIpRanges: pulumi.StringArray{
					pulumi.String("string"),
				},
				DestPorts: pulumi.StringArray{
					pulumi.String("string"),
				},
				IpProtocols: pulumi.StringArray{
					pulumi.String("string"),
				},
				SrcAsns: pulumi.IntArray{
					pulumi.Int(0),
				},
				SrcIpRanges: pulumi.StringArray{
					pulumi.String("string"),
				},
				SrcPorts: pulumi.StringArray{
					pulumi.String("string"),
				},
				SrcRegionCodes: pulumi.StringArray{
					pulumi.String("string"),
				},
				UserDefinedFields: compute.SecurityPolicyRuleNetworkMatcherUserDefinedFieldMatchArray{
					&compute.SecurityPolicyRuleNetworkMatcherUserDefinedFieldMatchArgs{
						Name: pulumi.String("string"),
						Values: pulumi.StringArray{
							pulumi.String("string"),
						},
					},
				},
			},
			PreconfiguredWafConfig: &compute.SecurityPolicyRulePreconfiguredWafConfigArgs{
				Exclusions: compute.SecurityPolicyRulePreconfiguredWafConfigExclusionArray{
					&compute.SecurityPolicyRulePreconfiguredWafConfigExclusionArgs{
						RequestCookiesToExclude: compute.SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParamsArray{
							&compute.SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParamsArgs{
								Op:  computev1.SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParamsOpContains,
								Val: pulumi.String("string"),
							},
						},
						RequestHeadersToExclude: compute.SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParamsArray{
							&compute.SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParamsArgs{
								Op:  computev1.SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParamsOpContains,
								Val: pulumi.String("string"),
							},
						},
						RequestQueryParamsToExclude: compute.SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParamsArray{
							&compute.SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParamsArgs{
								Op:  computev1.SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParamsOpContains,
								Val: pulumi.String("string"),
							},
						},
						RequestUrisToExclude: compute.SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParamsArray{
							&compute.SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParamsArgs{
								Op:  computev1.SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParamsOpContains,
								Val: pulumi.String("string"),
							},
						},
						TargetRuleIds: pulumi.StringArray{
							pulumi.String("string"),
						},
						TargetRuleSet: pulumi.String("string"),
					},
				},
			},
			Preview:  pulumi.Bool(false),
			Priority: pulumi.Int(0),
			RateLimitOptions: &compute.SecurityPolicyRuleRateLimitOptionsArgs{
				BanDurationSec: pulumi.Int(0),
				BanThreshold: &compute.SecurityPolicyRuleRateLimitOptionsThresholdArgs{
					Count:       pulumi.Int(0),
					IntervalSec: pulumi.Int(0),
				},
				ConformAction: pulumi.String("string"),
				EnforceOnKey:  computev1.SecurityPolicyRuleRateLimitOptionsEnforceOnKeyAll,
				EnforceOnKeyConfigs: compute.SecurityPolicyRuleRateLimitOptionsEnforceOnKeyConfigArray{
					&compute.SecurityPolicyRuleRateLimitOptionsEnforceOnKeyConfigArgs{
						EnforceOnKeyName: pulumi.String("string"),
						EnforceOnKeyType: computev1.SecurityPolicyRuleRateLimitOptionsEnforceOnKeyConfigEnforceOnKeyTypeAll,
					},
				},
				EnforceOnKeyName: pulumi.String("string"),
				ExceedAction:     pulumi.String("string"),
				ExceedRedirectOptions: &compute.SecurityPolicyRuleRedirectOptionsArgs{
					Target: pulumi.String("string"),
					Type:   computev1.SecurityPolicyRuleRedirectOptionsTypeExternal302,
				},
				RateLimitThreshold: &compute.SecurityPolicyRuleRateLimitOptionsThresholdArgs{
					Count:       pulumi.Int(0),
					IntervalSec: pulumi.Int(0),
				},
			},
			RedirectOptions: &compute.SecurityPolicyRuleRedirectOptionsArgs{
				Target: pulumi.String("string"),
				Type:   computev1.SecurityPolicyRuleRedirectOptionsTypeExternal302,
			},
		},
	},
	Type: computev1.SecurityPolicyTypeCloudArmor,
	UserDefinedFields: compute.SecurityPolicyUserDefinedFieldArray{
		&compute.SecurityPolicyUserDefinedFieldArgs{
			Base:   computev1.SecurityPolicyUserDefinedFieldBaseIpv4,
			Mask:   pulumi.String("string"),
			Name:   pulumi.String("string"),
			Offset: pulumi.Int(0),
			Size:   pulumi.Int(0),
		},
	},
})
var examplesecurityPolicyResourceResourceFromComputev1 = new SecurityPolicy("examplesecurityPolicyResourceResourceFromComputev1", SecurityPolicyArgs.builder()
    .adaptiveProtectionConfig(SecurityPolicyAdaptiveProtectionConfigArgs.builder()
        .layer7DdosDefenseConfig(SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfigArgs.builder()
            .enable(false)
            .ruleVisibility("PREMIUM")
            .thresholdConfigs(SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfigThresholdConfigArgs.builder()
                .autoDeployConfidenceThreshold(0)
                .autoDeployExpirationSec(0)
                .autoDeployImpactedBaselineThreshold(0)
                .autoDeployLoadThreshold(0)
                .name("string")
                .build())
            .build())
        .build())
    .advancedOptionsConfig(SecurityPolicyAdvancedOptionsConfigArgs.builder()
        .jsonCustomConfig(SecurityPolicyAdvancedOptionsConfigJsonCustomConfigArgs.builder()
            .contentTypes("string")
            .build())
        .jsonParsing("DISABLED")
        .logLevel("NORMAL")
        .userIpRequestHeaders("string")
        .build())
    .ddosProtectionConfig(SecurityPolicyDdosProtectionConfigArgs.builder()
        .ddosProtection("ADVANCED")
        .build())
    .description("string")
    .labels(Map.of("string", "string"))
    .name("string")
    .project("string")
    .recaptchaOptionsConfig(SecurityPolicyRecaptchaOptionsConfigArgs.builder()
        .redirectSiteKey("string")
        .build())
    .requestId("string")
    .rules(SecurityPolicyRuleArgs.builder()
        .action("string")
        .description("string")
        .headerAction(SecurityPolicyRuleHttpHeaderActionArgs.builder()
            .requestHeadersToAdds(SecurityPolicyRuleHttpHeaderActionHttpHeaderOptionArgs.builder()
                .headerName("string")
                .headerValue("string")
                .build())
            .build())
        .match(SecurityPolicyRuleMatcherArgs.builder()
            .config(SecurityPolicyRuleMatcherConfigArgs.builder()
                .srcIpRanges("string")
                .build())
            .expr(ExprArgs.builder()
                .description("string")
                .expression("string")
                .location("string")
                .title("string")
                .build())
            .versionedExpr("SRC_IPS_V1")
            .build())
        .networkMatch(SecurityPolicyRuleNetworkMatcherArgs.builder()
            .destIpRanges("string")
            .destPorts("string")
            .ipProtocols("string")
            .srcAsns(0)
            .srcIpRanges("string")
            .srcPorts("string")
            .srcRegionCodes("string")
            .userDefinedFields(SecurityPolicyRuleNetworkMatcherUserDefinedFieldMatchArgs.builder()
                .name("string")
                .values("string")
                .build())
            .build())
        .preconfiguredWafConfig(SecurityPolicyRulePreconfiguredWafConfigArgs.builder()
            .exclusions(SecurityPolicyRulePreconfiguredWafConfigExclusionArgs.builder()
                .requestCookiesToExclude(SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParamsArgs.builder()
                    .op("CONTAINS")
                    .val("string")
                    .build())
                .requestHeadersToExclude(SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParamsArgs.builder()
                    .op("CONTAINS")
                    .val("string")
                    .build())
                .requestQueryParamsToExclude(SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParamsArgs.builder()
                    .op("CONTAINS")
                    .val("string")
                    .build())
                .requestUrisToExclude(SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParamsArgs.builder()
                    .op("CONTAINS")
                    .val("string")
                    .build())
                .targetRuleIds("string")
                .targetRuleSet("string")
                .build())
            .build())
        .preview(false)
        .priority(0)
        .rateLimitOptions(SecurityPolicyRuleRateLimitOptionsArgs.builder()
            .banDurationSec(0)
            .banThreshold(SecurityPolicyRuleRateLimitOptionsThresholdArgs.builder()
                .count(0)
                .intervalSec(0)
                .build())
            .conformAction("string")
            .enforceOnKey("ALL")
            .enforceOnKeyConfigs(SecurityPolicyRuleRateLimitOptionsEnforceOnKeyConfigArgs.builder()
                .enforceOnKeyName("string")
                .enforceOnKeyType("ALL")
                .build())
            .enforceOnKeyName("string")
            .exceedAction("string")
            .exceedRedirectOptions(SecurityPolicyRuleRedirectOptionsArgs.builder()
                .target("string")
                .type("EXTERNAL_302")
                .build())
            .rateLimitThreshold(SecurityPolicyRuleRateLimitOptionsThresholdArgs.builder()
                .count(0)
                .intervalSec(0)
                .build())
            .build())
        .redirectOptions(SecurityPolicyRuleRedirectOptionsArgs.builder()
            .target("string")
            .type("EXTERNAL_302")
            .build())
        .build())
    .type("CLOUD_ARMOR")
    .userDefinedFields(SecurityPolicyUserDefinedFieldArgs.builder()
        .base("IPV4")
        .mask("string")
        .name("string")
        .offset(0)
        .size(0)
        .build())
    .build());
examplesecurity_policy_resource_resource_from_computev1 = google_native.compute.v1.SecurityPolicy("examplesecurityPolicyResourceResourceFromComputev1",
    adaptive_protection_config={
        "layer7_ddos_defense_config": {
            "enable": False,
            "rule_visibility": google_native.compute.v1.SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfigRuleVisibility.PREMIUM,
            "threshold_configs": [{
                "auto_deploy_confidence_threshold": 0,
                "auto_deploy_expiration_sec": 0,
                "auto_deploy_impacted_baseline_threshold": 0,
                "auto_deploy_load_threshold": 0,
                "name": "string",
            }],
        },
    },
    advanced_options_config={
        "json_custom_config": {
            "content_types": ["string"],
        },
        "json_parsing": google_native.compute.v1.SecurityPolicyAdvancedOptionsConfigJsonParsing.DISABLED,
        "log_level": google_native.compute.v1.SecurityPolicyAdvancedOptionsConfigLogLevel.NORMAL,
        "user_ip_request_headers": ["string"],
    },
    ddos_protection_config={
        "ddos_protection": google_native.compute.v1.SecurityPolicyDdosProtectionConfigDdosProtection.ADVANCED,
    },
    description="string",
    labels={
        "string": "string",
    },
    name="string",
    project="string",
    recaptcha_options_config={
        "redirect_site_key": "string",
    },
    request_id="string",
    rules=[{
        "action": "string",
        "description": "string",
        "header_action": {
            "request_headers_to_adds": [{
                "header_name": "string",
                "header_value": "string",
            }],
        },
        "match": {
            "config": {
                "src_ip_ranges": ["string"],
            },
            "expr": {
                "description": "string",
                "expression": "string",
                "location": "string",
                "title": "string",
            },
            "versioned_expr": google_native.compute.v1.SecurityPolicyRuleMatcherVersionedExpr.SRC_IPS_V1,
        },
        "network_match": {
            "dest_ip_ranges": ["string"],
            "dest_ports": ["string"],
            "ip_protocols": ["string"],
            "src_asns": [0],
            "src_ip_ranges": ["string"],
            "src_ports": ["string"],
            "src_region_codes": ["string"],
            "user_defined_fields": [{
                "name": "string",
                "values": ["string"],
            }],
        },
        "preconfigured_waf_config": {
            "exclusions": [{
                "request_cookies_to_exclude": [{
                    "op": google_native.compute.v1.SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParamsOp.CONTAINS,
                    "val": "string",
                }],
                "request_headers_to_exclude": [{
                    "op": google_native.compute.v1.SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParamsOp.CONTAINS,
                    "val": "string",
                }],
                "request_query_params_to_exclude": [{
                    "op": google_native.compute.v1.SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParamsOp.CONTAINS,
                    "val": "string",
                }],
                "request_uris_to_exclude": [{
                    "op": google_native.compute.v1.SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParamsOp.CONTAINS,
                    "val": "string",
                }],
                "target_rule_ids": ["string"],
                "target_rule_set": "string",
            }],
        },
        "preview": False,
        "priority": 0,
        "rate_limit_options": {
            "ban_duration_sec": 0,
            "ban_threshold": {
                "count": 0,
                "interval_sec": 0,
            },
            "conform_action": "string",
            "enforce_on_key": google_native.compute.v1.SecurityPolicyRuleRateLimitOptionsEnforceOnKey.ALL,
            "enforce_on_key_configs": [{
                "enforce_on_key_name": "string",
                "enforce_on_key_type": google_native.compute.v1.SecurityPolicyRuleRateLimitOptionsEnforceOnKeyConfigEnforceOnKeyType.ALL,
            }],
            "enforce_on_key_name": "string",
            "exceed_action": "string",
            "exceed_redirect_options": {
                "target": "string",
                "type": google_native.compute.v1.SecurityPolicyRuleRedirectOptionsType.EXTERNAL302,
            },
            "rate_limit_threshold": {
                "count": 0,
                "interval_sec": 0,
            },
        },
        "redirect_options": {
            "target": "string",
            "type": google_native.compute.v1.SecurityPolicyRuleRedirectOptionsType.EXTERNAL302,
        },
    }],
    type=google_native.compute.v1.SecurityPolicyType.CLOUD_ARMOR,
    user_defined_fields=[{
        "base": google_native.compute.v1.SecurityPolicyUserDefinedFieldBase.IPV4,
        "mask": "string",
        "name": "string",
        "offset": 0,
        "size": 0,
    }])
const examplesecurityPolicyResourceResourceFromComputev1 = new google_native.compute.v1.SecurityPolicy("examplesecurityPolicyResourceResourceFromComputev1", {
    adaptiveProtectionConfig: {
        layer7DdosDefenseConfig: {
            enable: false,
            ruleVisibility: google_native.compute.v1.SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfigRuleVisibility.Premium,
            thresholdConfigs: [{
                autoDeployConfidenceThreshold: 0,
                autoDeployExpirationSec: 0,
                autoDeployImpactedBaselineThreshold: 0,
                autoDeployLoadThreshold: 0,
                name: "string",
            }],
        },
    },
    advancedOptionsConfig: {
        jsonCustomConfig: {
            contentTypes: ["string"],
        },
        jsonParsing: google_native.compute.v1.SecurityPolicyAdvancedOptionsConfigJsonParsing.Disabled,
        logLevel: google_native.compute.v1.SecurityPolicyAdvancedOptionsConfigLogLevel.Normal,
        userIpRequestHeaders: ["string"],
    },
    ddosProtectionConfig: {
        ddosProtection: google_native.compute.v1.SecurityPolicyDdosProtectionConfigDdosProtection.Advanced,
    },
    description: "string",
    labels: {
        string: "string",
    },
    name: "string",
    project: "string",
    recaptchaOptionsConfig: {
        redirectSiteKey: "string",
    },
    requestId: "string",
    rules: [{
        action: "string",
        description: "string",
        headerAction: {
            requestHeadersToAdds: [{
                headerName: "string",
                headerValue: "string",
            }],
        },
        match: {
            config: {
                srcIpRanges: ["string"],
            },
            expr: {
                description: "string",
                expression: "string",
                location: "string",
                title: "string",
            },
            versionedExpr: google_native.compute.v1.SecurityPolicyRuleMatcherVersionedExpr.SrcIpsV1,
        },
        networkMatch: {
            destIpRanges: ["string"],
            destPorts: ["string"],
            ipProtocols: ["string"],
            srcAsns: [0],
            srcIpRanges: ["string"],
            srcPorts: ["string"],
            srcRegionCodes: ["string"],
            userDefinedFields: [{
                name: "string",
                values: ["string"],
            }],
        },
        preconfiguredWafConfig: {
            exclusions: [{
                requestCookiesToExclude: [{
                    op: google_native.compute.v1.SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParamsOp.Contains,
                    val: "string",
                }],
                requestHeadersToExclude: [{
                    op: google_native.compute.v1.SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParamsOp.Contains,
                    val: "string",
                }],
                requestQueryParamsToExclude: [{
                    op: google_native.compute.v1.SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParamsOp.Contains,
                    val: "string",
                }],
                requestUrisToExclude: [{
                    op: google_native.compute.v1.SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParamsOp.Contains,
                    val: "string",
                }],
                targetRuleIds: ["string"],
                targetRuleSet: "string",
            }],
        },
        preview: false,
        priority: 0,
        rateLimitOptions: {
            banDurationSec: 0,
            banThreshold: {
                count: 0,
                intervalSec: 0,
            },
            conformAction: "string",
            enforceOnKey: google_native.compute.v1.SecurityPolicyRuleRateLimitOptionsEnforceOnKey.All,
            enforceOnKeyConfigs: [{
                enforceOnKeyName: "string",
                enforceOnKeyType: google_native.compute.v1.SecurityPolicyRuleRateLimitOptionsEnforceOnKeyConfigEnforceOnKeyType.All,
            }],
            enforceOnKeyName: "string",
            exceedAction: "string",
            exceedRedirectOptions: {
                target: "string",
                type: google_native.compute.v1.SecurityPolicyRuleRedirectOptionsType.External302,
            },
            rateLimitThreshold: {
                count: 0,
                intervalSec: 0,
            },
        },
        redirectOptions: {
            target: "string",
            type: google_native.compute.v1.SecurityPolicyRuleRedirectOptionsType.External302,
        },
    }],
    type: google_native.compute.v1.SecurityPolicyType.CloudArmor,
    userDefinedFields: [{
        base: google_native.compute.v1.SecurityPolicyUserDefinedFieldBase.Ipv4,
        mask: "string",
        name: "string",
        offset: 0,
        size: 0,
    }],
});
type: google-native:compute/v1:SecurityPolicy
properties:
    adaptiveProtectionConfig:
        layer7DdosDefenseConfig:
            enable: false
            ruleVisibility: PREMIUM
            thresholdConfigs:
                - autoDeployConfidenceThreshold: 0
                  autoDeployExpirationSec: 0
                  autoDeployImpactedBaselineThreshold: 0
                  autoDeployLoadThreshold: 0
                  name: string
    advancedOptionsConfig:
        jsonCustomConfig:
            contentTypes:
                - string
        jsonParsing: DISABLED
        logLevel: NORMAL
        userIpRequestHeaders:
            - string
    ddosProtectionConfig:
        ddosProtection: ADVANCED
    description: string
    labels:
        string: string
    name: string
    project: string
    recaptchaOptionsConfig:
        redirectSiteKey: string
    requestId: string
    rules:
        - action: string
          description: string
          headerAction:
            requestHeadersToAdds:
                - headerName: string
                  headerValue: string
          match:
            config:
                srcIpRanges:
                    - string
            expr:
                description: string
                expression: string
                location: string
                title: string
            versionedExpr: SRC_IPS_V1
          networkMatch:
            destIpRanges:
                - string
            destPorts:
                - string
            ipProtocols:
                - string
            srcAsns:
                - 0
            srcIpRanges:
                - string
            srcPorts:
                - string
            srcRegionCodes:
                - string
            userDefinedFields:
                - name: string
                  values:
                    - string
          preconfiguredWafConfig:
            exclusions:
                - requestCookiesToExclude:
                    - op: CONTAINS
                      val: string
                  requestHeadersToExclude:
                    - op: CONTAINS
                      val: string
                  requestQueryParamsToExclude:
                    - op: CONTAINS
                      val: string
                  requestUrisToExclude:
                    - op: CONTAINS
                      val: string
                  targetRuleIds:
                    - string
                  targetRuleSet: string
          preview: false
          priority: 0
          rateLimitOptions:
            banDurationSec: 0
            banThreshold:
                count: 0
                intervalSec: 0
            conformAction: string
            enforceOnKey: ALL
            enforceOnKeyConfigs:
                - enforceOnKeyName: string
                  enforceOnKeyType: ALL
            enforceOnKeyName: string
            exceedAction: string
            exceedRedirectOptions:
                target: string
                type: EXTERNAL_302
            rateLimitThreshold:
                count: 0
                intervalSec: 0
          redirectOptions:
            target: string
            type: EXTERNAL_302
    type: CLOUD_ARMOR
    userDefinedFields:
        - base: IPV4
          mask: string
          name: string
          offset: 0
          size: 0
SecurityPolicy Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The SecurityPolicy resource accepts the following input properties:
- AdaptiveProtection Pulumi.Config Google Native. Compute. V1. Inputs. Security Policy Adaptive Protection Config 
- AdvancedOptions Pulumi.Config Google Native. Compute. V1. Inputs. Security Policy Advanced Options Config 
- DdosProtection Pulumi.Config Google Native. Compute. V1. Inputs. Security Policy Ddos Protection Config 
- Description string
- An optional description of this resource. Provide this property when you create the resource.
- Labels Dictionary<string, string>
- Labels for this resource. These can only be added or modified by the setLabels method. Each label key/value pair must comply with RFC1035. Label values may be empty.
- Name string
- Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])?which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
- Project string
- RecaptchaOptions Pulumi.Config Google Native. Compute. V1. Inputs. Security Policy Recaptcha Options Config 
- RequestId string
- An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).
- Rules
List<Pulumi.Google Native. Compute. V1. Inputs. Security Policy Rule> 
- A list of rules that belong to this policy. There must always be a default rule which is a rule with priority 2147483647 and match all condition (for the match condition this means match "" for srcIpRanges and for the networkMatch condition every field must be either match "" or not set). If no rules are provided when creating a security policy, a default rule with action "allow" will be added.
- Type
Pulumi.Google Native. Compute. V1. Security Policy Type 
- The type indicates the intended use of the security policy. - CLOUD_ARMOR: Cloud Armor backend security policies can be configured to filter incoming HTTP requests targeting backend services. They filter requests before they hit the origin servers. - CLOUD_ARMOR_EDGE: Cloud Armor edge security policies can be configured to filter incoming HTTP requests targeting backend services (including Cloud CDN-enabled) as well as backend buckets (Cloud Storage). They filter requests before the request is served from Google's cache. - CLOUD_ARMOR_INTERNAL_SERVICE: Cloud Armor internal service policies can be configured to filter HTTP requests targeting services managed by Traffic Director in a service mesh. They filter requests before the request is served from the application. - CLOUD_ARMOR_NETWORK: Cloud Armor network policies can be configured to filter packets targeting network load balancing resources such as backend services, target pools, target instances, and instances with external IPs. They filter requests before the request is served from the application. This field can be set only at resource creation time.
- UserDefined List<Pulumi.Fields Google Native. Compute. V1. Inputs. Security Policy User Defined Field> 
- Definitions of user-defined fields for CLOUD_ARMOR_NETWORK policies. A user-defined field consists of up to 4 bytes extracted from a fixed offset in the packet, relative to the IPv4, IPv6, TCP, or UDP header, with an optional mask to select certain bits. Rules may then specify matching values for these fields. Example: userDefinedFields: - name: "ipv4_fragment_offset" base: IPV4 offset: 6 size: 2 mask: "0x1fff"
- AdaptiveProtection SecurityConfig Policy Adaptive Protection Config Args 
- AdvancedOptions SecurityConfig Policy Advanced Options Config Args 
- DdosProtection SecurityConfig Policy Ddos Protection Config Args 
- Description string
- An optional description of this resource. Provide this property when you create the resource.
- Labels map[string]string
- Labels for this resource. These can only be added or modified by the setLabels method. Each label key/value pair must comply with RFC1035. Label values may be empty.
- Name string
- Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])?which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
- Project string
- RecaptchaOptions SecurityConfig Policy Recaptcha Options Config Args 
- RequestId string
- An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).
- Rules
[]SecurityPolicy Rule Args 
- A list of rules that belong to this policy. There must always be a default rule which is a rule with priority 2147483647 and match all condition (for the match condition this means match "" for srcIpRanges and for the networkMatch condition every field must be either match "" or not set). If no rules are provided when creating a security policy, a default rule with action "allow" will be added.
- Type
SecurityPolicy Type 
- The type indicates the intended use of the security policy. - CLOUD_ARMOR: Cloud Armor backend security policies can be configured to filter incoming HTTP requests targeting backend services. They filter requests before they hit the origin servers. - CLOUD_ARMOR_EDGE: Cloud Armor edge security policies can be configured to filter incoming HTTP requests targeting backend services (including Cloud CDN-enabled) as well as backend buckets (Cloud Storage). They filter requests before the request is served from Google's cache. - CLOUD_ARMOR_INTERNAL_SERVICE: Cloud Armor internal service policies can be configured to filter HTTP requests targeting services managed by Traffic Director in a service mesh. They filter requests before the request is served from the application. - CLOUD_ARMOR_NETWORK: Cloud Armor network policies can be configured to filter packets targeting network load balancing resources such as backend services, target pools, target instances, and instances with external IPs. They filter requests before the request is served from the application. This field can be set only at resource creation time.
- UserDefined []SecurityFields Policy User Defined Field Args 
- Definitions of user-defined fields for CLOUD_ARMOR_NETWORK policies. A user-defined field consists of up to 4 bytes extracted from a fixed offset in the packet, relative to the IPv4, IPv6, TCP, or UDP header, with an optional mask to select certain bits. Rules may then specify matching values for these fields. Example: userDefinedFields: - name: "ipv4_fragment_offset" base: IPV4 offset: 6 size: 2 mask: "0x1fff"
- adaptiveProtection SecurityConfig Policy Adaptive Protection Config 
- advancedOptions SecurityConfig Policy Advanced Options Config 
- ddosProtection SecurityConfig Policy Ddos Protection Config 
- description String
- An optional description of this resource. Provide this property when you create the resource.
- labels Map<String,String>
- Labels for this resource. These can only be added or modified by the setLabels method. Each label key/value pair must comply with RFC1035. Label values may be empty.
- name String
- Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])?which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
- project String
- recaptchaOptions SecurityConfig Policy Recaptcha Options Config 
- requestId String
- An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).
- rules
List<SecurityPolicy Rule> 
- A list of rules that belong to this policy. There must always be a default rule which is a rule with priority 2147483647 and match all condition (for the match condition this means match "" for srcIpRanges and for the networkMatch condition every field must be either match "" or not set). If no rules are provided when creating a security policy, a default rule with action "allow" will be added.
- type
SecurityPolicy Type 
- The type indicates the intended use of the security policy. - CLOUD_ARMOR: Cloud Armor backend security policies can be configured to filter incoming HTTP requests targeting backend services. They filter requests before they hit the origin servers. - CLOUD_ARMOR_EDGE: Cloud Armor edge security policies can be configured to filter incoming HTTP requests targeting backend services (including Cloud CDN-enabled) as well as backend buckets (Cloud Storage). They filter requests before the request is served from Google's cache. - CLOUD_ARMOR_INTERNAL_SERVICE: Cloud Armor internal service policies can be configured to filter HTTP requests targeting services managed by Traffic Director in a service mesh. They filter requests before the request is served from the application. - CLOUD_ARMOR_NETWORK: Cloud Armor network policies can be configured to filter packets targeting network load balancing resources such as backend services, target pools, target instances, and instances with external IPs. They filter requests before the request is served from the application. This field can be set only at resource creation time.
- userDefined List<SecurityFields Policy User Defined Field> 
- Definitions of user-defined fields for CLOUD_ARMOR_NETWORK policies. A user-defined field consists of up to 4 bytes extracted from a fixed offset in the packet, relative to the IPv4, IPv6, TCP, or UDP header, with an optional mask to select certain bits. Rules may then specify matching values for these fields. Example: userDefinedFields: - name: "ipv4_fragment_offset" base: IPV4 offset: 6 size: 2 mask: "0x1fff"
- adaptiveProtection SecurityConfig Policy Adaptive Protection Config 
- advancedOptions SecurityConfig Policy Advanced Options Config 
- ddosProtection SecurityConfig Policy Ddos Protection Config 
- description string
- An optional description of this resource. Provide this property when you create the resource.
- labels {[key: string]: string}
- Labels for this resource. These can only be added or modified by the setLabels method. Each label key/value pair must comply with RFC1035. Label values may be empty.
- name string
- Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])?which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
- project string
- recaptchaOptions SecurityConfig Policy Recaptcha Options Config 
- requestId string
- An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).
- rules
SecurityPolicy Rule[] 
- A list of rules that belong to this policy. There must always be a default rule which is a rule with priority 2147483647 and match all condition (for the match condition this means match "" for srcIpRanges and for the networkMatch condition every field must be either match "" or not set). If no rules are provided when creating a security policy, a default rule with action "allow" will be added.
- type
SecurityPolicy Type 
- The type indicates the intended use of the security policy. - CLOUD_ARMOR: Cloud Armor backend security policies can be configured to filter incoming HTTP requests targeting backend services. They filter requests before they hit the origin servers. - CLOUD_ARMOR_EDGE: Cloud Armor edge security policies can be configured to filter incoming HTTP requests targeting backend services (including Cloud CDN-enabled) as well as backend buckets (Cloud Storage). They filter requests before the request is served from Google's cache. - CLOUD_ARMOR_INTERNAL_SERVICE: Cloud Armor internal service policies can be configured to filter HTTP requests targeting services managed by Traffic Director in a service mesh. They filter requests before the request is served from the application. - CLOUD_ARMOR_NETWORK: Cloud Armor network policies can be configured to filter packets targeting network load balancing resources such as backend services, target pools, target instances, and instances with external IPs. They filter requests before the request is served from the application. This field can be set only at resource creation time.
- userDefined SecurityFields Policy User Defined Field[] 
- Definitions of user-defined fields for CLOUD_ARMOR_NETWORK policies. A user-defined field consists of up to 4 bytes extracted from a fixed offset in the packet, relative to the IPv4, IPv6, TCP, or UDP header, with an optional mask to select certain bits. Rules may then specify matching values for these fields. Example: userDefinedFields: - name: "ipv4_fragment_offset" base: IPV4 offset: 6 size: 2 mask: "0x1fff"
- adaptive_protection_ Securityconfig Policy Adaptive Protection Config Args 
- advanced_options_ Securityconfig Policy Advanced Options Config Args 
- ddos_protection_ Securityconfig Policy Ddos Protection Config Args 
- description str
- An optional description of this resource. Provide this property when you create the resource.
- labels Mapping[str, str]
- Labels for this resource. These can only be added or modified by the setLabels method. Each label key/value pair must comply with RFC1035. Label values may be empty.
- name str
- Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])?which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
- project str
- recaptcha_options_ Securityconfig Policy Recaptcha Options Config Args 
- request_id str
- An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).
- rules
Sequence[SecurityPolicy Rule Args] 
- A list of rules that belong to this policy. There must always be a default rule which is a rule with priority 2147483647 and match all condition (for the match condition this means match "" for srcIpRanges and for the networkMatch condition every field must be either match "" or not set). If no rules are provided when creating a security policy, a default rule with action "allow" will be added.
- type
SecurityPolicy Type 
- The type indicates the intended use of the security policy. - CLOUD_ARMOR: Cloud Armor backend security policies can be configured to filter incoming HTTP requests targeting backend services. They filter requests before they hit the origin servers. - CLOUD_ARMOR_EDGE: Cloud Armor edge security policies can be configured to filter incoming HTTP requests targeting backend services (including Cloud CDN-enabled) as well as backend buckets (Cloud Storage). They filter requests before the request is served from Google's cache. - CLOUD_ARMOR_INTERNAL_SERVICE: Cloud Armor internal service policies can be configured to filter HTTP requests targeting services managed by Traffic Director in a service mesh. They filter requests before the request is served from the application. - CLOUD_ARMOR_NETWORK: Cloud Armor network policies can be configured to filter packets targeting network load balancing resources such as backend services, target pools, target instances, and instances with external IPs. They filter requests before the request is served from the application. This field can be set only at resource creation time.
- user_defined_ Sequence[Securityfields Policy User Defined Field Args] 
- Definitions of user-defined fields for CLOUD_ARMOR_NETWORK policies. A user-defined field consists of up to 4 bytes extracted from a fixed offset in the packet, relative to the IPv4, IPv6, TCP, or UDP header, with an optional mask to select certain bits. Rules may then specify matching values for these fields. Example: userDefinedFields: - name: "ipv4_fragment_offset" base: IPV4 offset: 6 size: 2 mask: "0x1fff"
- adaptiveProtection Property MapConfig 
- advancedOptions Property MapConfig 
- ddosProtection Property MapConfig 
- description String
- An optional description of this resource. Provide this property when you create the resource.
- labels Map<String>
- Labels for this resource. These can only be added or modified by the setLabels method. Each label key/value pair must comply with RFC1035. Label values may be empty.
- name String
- Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])?which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
- project String
- recaptchaOptions Property MapConfig 
- requestId String
- An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).
- rules List<Property Map>
- A list of rules that belong to this policy. There must always be a default rule which is a rule with priority 2147483647 and match all condition (for the match condition this means match "" for srcIpRanges and for the networkMatch condition every field must be either match "" or not set). If no rules are provided when creating a security policy, a default rule with action "allow" will be added.
- type "CLOUD_ARMOR" | "CLOUD_ARMOR_EDGE" | "CLOUD_ARMOR_NETWORK"
- The type indicates the intended use of the security policy. - CLOUD_ARMOR: Cloud Armor backend security policies can be configured to filter incoming HTTP requests targeting backend services. They filter requests before they hit the origin servers. - CLOUD_ARMOR_EDGE: Cloud Armor edge security policies can be configured to filter incoming HTTP requests targeting backend services (including Cloud CDN-enabled) as well as backend buckets (Cloud Storage). They filter requests before the request is served from Google's cache. - CLOUD_ARMOR_INTERNAL_SERVICE: Cloud Armor internal service policies can be configured to filter HTTP requests targeting services managed by Traffic Director in a service mesh. They filter requests before the request is served from the application. - CLOUD_ARMOR_NETWORK: Cloud Armor network policies can be configured to filter packets targeting network load balancing resources such as backend services, target pools, target instances, and instances with external IPs. They filter requests before the request is served from the application. This field can be set only at resource creation time.
- userDefined List<Property Map>Fields 
- Definitions of user-defined fields for CLOUD_ARMOR_NETWORK policies. A user-defined field consists of up to 4 bytes extracted from a fixed offset in the packet, relative to the IPv4, IPv6, TCP, or UDP header, with an optional mask to select certain bits. Rules may then specify matching values for these fields. Example: userDefinedFields: - name: "ipv4_fragment_offset" base: IPV4 offset: 6 size: 2 mask: "0x1fff"
Outputs
All input properties are implicitly available as output properties. Additionally, the SecurityPolicy resource produces the following output properties:
- CreationTimestamp string
- Creation timestamp in RFC3339 text format.
- Fingerprint string
- Specifies a fingerprint for this resource, which is essentially a hash of the metadata's contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update metadata. You must always provide an up-to-date fingerprint hash in order to update or change metadata, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make get() request to the security policy.
- Id string
- The provider-assigned unique ID for this managed resource.
- Kind string
- [Output only] Type of the resource. Always compute#securityPolicyfor security policies
- LabelFingerprint string
- A fingerprint for the labels being applied to this security policy, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels. To see the latest fingerprint, make get() request to the security policy.
- Region string
- URL of the region where the regional security policy resides. This field is not applicable to global security policies.
- SelfLink string
- Server-defined URL for the resource.
- CreationTimestamp string
- Creation timestamp in RFC3339 text format.
- Fingerprint string
- Specifies a fingerprint for this resource, which is essentially a hash of the metadata's contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update metadata. You must always provide an up-to-date fingerprint hash in order to update or change metadata, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make get() request to the security policy.
- Id string
- The provider-assigned unique ID for this managed resource.
- Kind string
- [Output only] Type of the resource. Always compute#securityPolicyfor security policies
- LabelFingerprint string
- A fingerprint for the labels being applied to this security policy, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels. To see the latest fingerprint, make get() request to the security policy.
- Region string
- URL of the region where the regional security policy resides. This field is not applicable to global security policies.
- SelfLink string
- Server-defined URL for the resource.
- creationTimestamp String
- Creation timestamp in RFC3339 text format.
- fingerprint String
- Specifies a fingerprint for this resource, which is essentially a hash of the metadata's contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update metadata. You must always provide an up-to-date fingerprint hash in order to update or change metadata, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make get() request to the security policy.
- id String
- The provider-assigned unique ID for this managed resource.
- kind String
- [Output only] Type of the resource. Always compute#securityPolicyfor security policies
- labelFingerprint String
- A fingerprint for the labels being applied to this security policy, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels. To see the latest fingerprint, make get() request to the security policy.
- region String
- URL of the region where the regional security policy resides. This field is not applicable to global security policies.
- selfLink String
- Server-defined URL for the resource.
- creationTimestamp string
- Creation timestamp in RFC3339 text format.
- fingerprint string
- Specifies a fingerprint for this resource, which is essentially a hash of the metadata's contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update metadata. You must always provide an up-to-date fingerprint hash in order to update or change metadata, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make get() request to the security policy.
- id string
- The provider-assigned unique ID for this managed resource.
- kind string
- [Output only] Type of the resource. Always compute#securityPolicyfor security policies
- labelFingerprint string
- A fingerprint for the labels being applied to this security policy, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels. To see the latest fingerprint, make get() request to the security policy.
- region string
- URL of the region where the regional security policy resides. This field is not applicable to global security policies.
- selfLink string
- Server-defined URL for the resource.
- creation_timestamp str
- Creation timestamp in RFC3339 text format.
- fingerprint str
- Specifies a fingerprint for this resource, which is essentially a hash of the metadata's contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update metadata. You must always provide an up-to-date fingerprint hash in order to update or change metadata, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make get() request to the security policy.
- id str
- The provider-assigned unique ID for this managed resource.
- kind str
- [Output only] Type of the resource. Always compute#securityPolicyfor security policies
- label_fingerprint str
- A fingerprint for the labels being applied to this security policy, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels. To see the latest fingerprint, make get() request to the security policy.
- region str
- URL of the region where the regional security policy resides. This field is not applicable to global security policies.
- self_link str
- Server-defined URL for the resource.
- creationTimestamp String
- Creation timestamp in RFC3339 text format.
- fingerprint String
- Specifies a fingerprint for this resource, which is essentially a hash of the metadata's contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update metadata. You must always provide an up-to-date fingerprint hash in order to update or change metadata, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make get() request to the security policy.
- id String
- The provider-assigned unique ID for this managed resource.
- kind String
- [Output only] Type of the resource. Always compute#securityPolicyfor security policies
- labelFingerprint String
- A fingerprint for the labels being applied to this security policy, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels. To see the latest fingerprint, make get() request to the security policy.
- region String
- URL of the region where the regional security policy resides. This field is not applicable to global security policies.
- selfLink String
- Server-defined URL for the resource.
Supporting Types
Expr, ExprArgs  
- Description string
- Optional. Description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.
- Expression string
- Textual representation of an expression in Common Expression Language syntax.
- Location string
- Optional. String indicating the location of the expression for error reporting, e.g. a file name and a position in the file.
- Title string
- Optional. Title for the expression, i.e. a short string describing its purpose. This can be used e.g. in UIs which allow to enter the expression.
- Description string
- Optional. Description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.
- Expression string
- Textual representation of an expression in Common Expression Language syntax.
- Location string
- Optional. String indicating the location of the expression for error reporting, e.g. a file name and a position in the file.
- Title string
- Optional. Title for the expression, i.e. a short string describing its purpose. This can be used e.g. in UIs which allow to enter the expression.
- description String
- Optional. Description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.
- expression String
- Textual representation of an expression in Common Expression Language syntax.
- location String
- Optional. String indicating the location of the expression for error reporting, e.g. a file name and a position in the file.
- title String
- Optional. Title for the expression, i.e. a short string describing its purpose. This can be used e.g. in UIs which allow to enter the expression.
- description string
- Optional. Description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.
- expression string
- Textual representation of an expression in Common Expression Language syntax.
- location string
- Optional. String indicating the location of the expression for error reporting, e.g. a file name and a position in the file.
- title string
- Optional. Title for the expression, i.e. a short string describing its purpose. This can be used e.g. in UIs which allow to enter the expression.
- description str
- Optional. Description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.
- expression str
- Textual representation of an expression in Common Expression Language syntax.
- location str
- Optional. String indicating the location of the expression for error reporting, e.g. a file name and a position in the file.
- title str
- Optional. Title for the expression, i.e. a short string describing its purpose. This can be used e.g. in UIs which allow to enter the expression.
- description String
- Optional. Description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.
- expression String
- Textual representation of an expression in Common Expression Language syntax.
- location String
- Optional. String indicating the location of the expression for error reporting, e.g. a file name and a position in the file.
- title String
- Optional. Title for the expression, i.e. a short string describing its purpose. This can be used e.g. in UIs which allow to enter the expression.
ExprResponse, ExprResponseArgs    
- Description string
- Optional. Description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.
- Expression string
- Textual representation of an expression in Common Expression Language syntax.
- Location string
- Optional. String indicating the location of the expression for error reporting, e.g. a file name and a position in the file.
- Title string
- Optional. Title for the expression, i.e. a short string describing its purpose. This can be used e.g. in UIs which allow to enter the expression.
- Description string
- Optional. Description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.
- Expression string
- Textual representation of an expression in Common Expression Language syntax.
- Location string
- Optional. String indicating the location of the expression for error reporting, e.g. a file name and a position in the file.
- Title string
- Optional. Title for the expression, i.e. a short string describing its purpose. This can be used e.g. in UIs which allow to enter the expression.
- description String
- Optional. Description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.
- expression String
- Textual representation of an expression in Common Expression Language syntax.
- location String
- Optional. String indicating the location of the expression for error reporting, e.g. a file name and a position in the file.
- title String
- Optional. Title for the expression, i.e. a short string describing its purpose. This can be used e.g. in UIs which allow to enter the expression.
- description string
- Optional. Description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.
- expression string
- Textual representation of an expression in Common Expression Language syntax.
- location string
- Optional. String indicating the location of the expression for error reporting, e.g. a file name and a position in the file.
- title string
- Optional. Title for the expression, i.e. a short string describing its purpose. This can be used e.g. in UIs which allow to enter the expression.
- description str
- Optional. Description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.
- expression str
- Textual representation of an expression in Common Expression Language syntax.
- location str
- Optional. String indicating the location of the expression for error reporting, e.g. a file name and a position in the file.
- title str
- Optional. Title for the expression, i.e. a short string describing its purpose. This can be used e.g. in UIs which allow to enter the expression.
- description String
- Optional. Description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.
- expression String
- Textual representation of an expression in Common Expression Language syntax.
- location String
- Optional. String indicating the location of the expression for error reporting, e.g. a file name and a position in the file.
- title String
- Optional. Title for the expression, i.e. a short string describing its purpose. This can be used e.g. in UIs which allow to enter the expression.
SecurityPolicyAdaptiveProtectionConfig, SecurityPolicyAdaptiveProtectionConfigArgs          
- Layer7DdosDefense Pulumi.Config Google Native. Compute. V1. Inputs. Security Policy Adaptive Protection Config Layer7Ddos Defense Config 
- If set to true, enables Cloud Armor Machine Learning.
- Layer7DdosDefense SecurityConfig Policy Adaptive Protection Config Layer7Ddos Defense Config 
- If set to true, enables Cloud Armor Machine Learning.
- layer7DdosDefense SecurityConfig Policy Adaptive Protection Config Layer7Ddos Defense Config 
- If set to true, enables Cloud Armor Machine Learning.
- layer7DdosDefense SecurityConfig Policy Adaptive Protection Config Layer7Ddos Defense Config 
- If set to true, enables Cloud Armor Machine Learning.
- layer7_ddos_ Securitydefense_ config Policy Adaptive Protection Config Layer7Ddos Defense Config 
- If set to true, enables Cloud Armor Machine Learning.
- layer7DdosDefense Property MapConfig 
- If set to true, enables Cloud Armor Machine Learning.
SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig, SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfigArgs                
- Enable bool
- If set to true, enables CAAP for L7 DDoS detection. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- RuleVisibility Pulumi.Google Native. Compute. V1. Security Policy Adaptive Protection Config Layer7Ddos Defense Config Rule Visibility 
- Rule visibility can be one of the following: STANDARD - opaque rules. (default) PREMIUM - transparent rules. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- ThresholdConfigs List<Pulumi.Google Native. Compute. V1. Inputs. Security Policy Adaptive Protection Config Layer7Ddos Defense Config Threshold Config> 
- Configuration options for layer7 adaptive protection for various customizable thresholds.
- Enable bool
- If set to true, enables CAAP for L7 DDoS detection. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- RuleVisibility SecurityPolicy Adaptive Protection Config Layer7Ddos Defense Config Rule Visibility 
- Rule visibility can be one of the following: STANDARD - opaque rules. (default) PREMIUM - transparent rules. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- ThresholdConfigs []SecurityPolicy Adaptive Protection Config Layer7Ddos Defense Config Threshold Config 
- Configuration options for layer7 adaptive protection for various customizable thresholds.
- enable Boolean
- If set to true, enables CAAP for L7 DDoS detection. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- ruleVisibility SecurityPolicy Adaptive Protection Config Layer7Ddos Defense Config Rule Visibility 
- Rule visibility can be one of the following: STANDARD - opaque rules. (default) PREMIUM - transparent rules. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- thresholdConfigs List<SecurityPolicy Adaptive Protection Config Layer7Ddos Defense Config Threshold Config> 
- Configuration options for layer7 adaptive protection for various customizable thresholds.
- enable boolean
- If set to true, enables CAAP for L7 DDoS detection. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- ruleVisibility SecurityPolicy Adaptive Protection Config Layer7Ddos Defense Config Rule Visibility 
- Rule visibility can be one of the following: STANDARD - opaque rules. (default) PREMIUM - transparent rules. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- thresholdConfigs SecurityPolicy Adaptive Protection Config Layer7Ddos Defense Config Threshold Config[] 
- Configuration options for layer7 adaptive protection for various customizable thresholds.
- enable bool
- If set to true, enables CAAP for L7 DDoS detection. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- rule_visibility SecurityPolicy Adaptive Protection Config Layer7Ddos Defense Config Rule Visibility 
- Rule visibility can be one of the following: STANDARD - opaque rules. (default) PREMIUM - transparent rules. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- threshold_configs Sequence[SecurityPolicy Adaptive Protection Config Layer7Ddos Defense Config Threshold Config] 
- Configuration options for layer7 adaptive protection for various customizable thresholds.
- enable Boolean
- If set to true, enables CAAP for L7 DDoS detection. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- ruleVisibility "PREMIUM" | "STANDARD"
- Rule visibility can be one of the following: STANDARD - opaque rules. (default) PREMIUM - transparent rules. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- thresholdConfigs List<Property Map>
- Configuration options for layer7 adaptive protection for various customizable thresholds.
SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfigResponse, SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfigResponseArgs                  
- Enable bool
- If set to true, enables CAAP for L7 DDoS detection. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- RuleVisibility string
- Rule visibility can be one of the following: STANDARD - opaque rules. (default) PREMIUM - transparent rules. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- ThresholdConfigs List<Pulumi.Google Native. Compute. V1. Inputs. Security Policy Adaptive Protection Config Layer7Ddos Defense Config Threshold Config Response> 
- Configuration options for layer7 adaptive protection for various customizable thresholds.
- Enable bool
- If set to true, enables CAAP for L7 DDoS detection. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- RuleVisibility string
- Rule visibility can be one of the following: STANDARD - opaque rules. (default) PREMIUM - transparent rules. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- ThresholdConfigs []SecurityPolicy Adaptive Protection Config Layer7Ddos Defense Config Threshold Config Response 
- Configuration options for layer7 adaptive protection for various customizable thresholds.
- enable Boolean
- If set to true, enables CAAP for L7 DDoS detection. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- ruleVisibility String
- Rule visibility can be one of the following: STANDARD - opaque rules. (default) PREMIUM - transparent rules. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- thresholdConfigs List<SecurityPolicy Adaptive Protection Config Layer7Ddos Defense Config Threshold Config Response> 
- Configuration options for layer7 adaptive protection for various customizable thresholds.
- enable boolean
- If set to true, enables CAAP for L7 DDoS detection. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- ruleVisibility string
- Rule visibility can be one of the following: STANDARD - opaque rules. (default) PREMIUM - transparent rules. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- thresholdConfigs SecurityPolicy Adaptive Protection Config Layer7Ddos Defense Config Threshold Config Response[] 
- Configuration options for layer7 adaptive protection for various customizable thresholds.
- enable bool
- If set to true, enables CAAP for L7 DDoS detection. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- rule_visibility str
- Rule visibility can be one of the following: STANDARD - opaque rules. (default) PREMIUM - transparent rules. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- threshold_configs Sequence[SecurityPolicy Adaptive Protection Config Layer7Ddos Defense Config Threshold Config Response] 
- Configuration options for layer7 adaptive protection for various customizable thresholds.
- enable Boolean
- If set to true, enables CAAP for L7 DDoS detection. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- ruleVisibility String
- Rule visibility can be one of the following: STANDARD - opaque rules. (default) PREMIUM - transparent rules. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- thresholdConfigs List<Property Map>
- Configuration options for layer7 adaptive protection for various customizable thresholds.
SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfigRuleVisibility, SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfigRuleVisibilityArgs                    
- Premium
- PREMIUM
- Standard
- STANDARD
- SecurityPolicy Adaptive Protection Config Layer7Ddos Defense Config Rule Visibility Premium 
- PREMIUM
- SecurityPolicy Adaptive Protection Config Layer7Ddos Defense Config Rule Visibility Standard 
- STANDARD
- Premium
- PREMIUM
- Standard
- STANDARD
- Premium
- PREMIUM
- Standard
- STANDARD
- PREMIUM
- PREMIUM
- STANDARD
- STANDARD
- "PREMIUM"
- PREMIUM
- "STANDARD"
- STANDARD
SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfigThresholdConfig, SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfigThresholdConfigArgs                    
- AutoDeploy doubleConfidence Threshold 
- AutoDeploy intExpiration Sec 
- AutoDeploy doubleImpacted Baseline Threshold 
- AutoDeploy doubleLoad Threshold 
- Name string
- The name must be 1-63 characters long, and comply with RFC1035. The name must be unique within the security policy.
- AutoDeploy float64Confidence Threshold 
- AutoDeploy intExpiration Sec 
- AutoDeploy float64Impacted Baseline Threshold 
- AutoDeploy float64Load Threshold 
- Name string
- The name must be 1-63 characters long, and comply with RFC1035. The name must be unique within the security policy.
- autoDeploy DoubleConfidence Threshold 
- autoDeploy IntegerExpiration Sec 
- autoDeploy DoubleImpacted Baseline Threshold 
- autoDeploy DoubleLoad Threshold 
- name String
- The name must be 1-63 characters long, and comply with RFC1035. The name must be unique within the security policy.
- autoDeploy numberConfidence Threshold 
- autoDeploy numberExpiration Sec 
- autoDeploy numberImpacted Baseline Threshold 
- autoDeploy numberLoad Threshold 
- name string
- The name must be 1-63 characters long, and comply with RFC1035. The name must be unique within the security policy.
- auto_deploy_ floatconfidence_ threshold 
- auto_deploy_ intexpiration_ sec 
- auto_deploy_ floatimpacted_ baseline_ threshold 
- auto_deploy_ floatload_ threshold 
- name str
- The name must be 1-63 characters long, and comply with RFC1035. The name must be unique within the security policy.
- autoDeploy NumberConfidence Threshold 
- autoDeploy NumberExpiration Sec 
- autoDeploy NumberImpacted Baseline Threshold 
- autoDeploy NumberLoad Threshold 
- name String
- The name must be 1-63 characters long, and comply with RFC1035. The name must be unique within the security policy.
SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfigThresholdConfigResponse, SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfigThresholdConfigResponseArgs                      
- AutoDeploy doubleConfidence Threshold 
- AutoDeploy intExpiration Sec 
- AutoDeploy doubleImpacted Baseline Threshold 
- AutoDeploy doubleLoad Threshold 
- Name string
- The name must be 1-63 characters long, and comply with RFC1035. The name must be unique within the security policy.
- AutoDeploy float64Confidence Threshold 
- AutoDeploy intExpiration Sec 
- AutoDeploy float64Impacted Baseline Threshold 
- AutoDeploy float64Load Threshold 
- Name string
- The name must be 1-63 characters long, and comply with RFC1035. The name must be unique within the security policy.
- autoDeploy DoubleConfidence Threshold 
- autoDeploy IntegerExpiration Sec 
- autoDeploy DoubleImpacted Baseline Threshold 
- autoDeploy DoubleLoad Threshold 
- name String
- The name must be 1-63 characters long, and comply with RFC1035. The name must be unique within the security policy.
- autoDeploy numberConfidence Threshold 
- autoDeploy numberExpiration Sec 
- autoDeploy numberImpacted Baseline Threshold 
- autoDeploy numberLoad Threshold 
- name string
- The name must be 1-63 characters long, and comply with RFC1035. The name must be unique within the security policy.
- auto_deploy_ floatconfidence_ threshold 
- auto_deploy_ intexpiration_ sec 
- auto_deploy_ floatimpacted_ baseline_ threshold 
- auto_deploy_ floatload_ threshold 
- name str
- The name must be 1-63 characters long, and comply with RFC1035. The name must be unique within the security policy.
- autoDeploy NumberConfidence Threshold 
- autoDeploy NumberExpiration Sec 
- autoDeploy NumberImpacted Baseline Threshold 
- autoDeploy NumberLoad Threshold 
- name String
- The name must be 1-63 characters long, and comply with RFC1035. The name must be unique within the security policy.
SecurityPolicyAdaptiveProtectionConfigResponse, SecurityPolicyAdaptiveProtectionConfigResponseArgs            
- Layer7DdosDefense Pulumi.Config Google Native. Compute. V1. Inputs. Security Policy Adaptive Protection Config Layer7Ddos Defense Config Response 
- If set to true, enables Cloud Armor Machine Learning.
- Layer7DdosDefense SecurityConfig Policy Adaptive Protection Config Layer7Ddos Defense Config Response 
- If set to true, enables Cloud Armor Machine Learning.
- layer7DdosDefense SecurityConfig Policy Adaptive Protection Config Layer7Ddos Defense Config Response 
- If set to true, enables Cloud Armor Machine Learning.
- layer7DdosDefense SecurityConfig Policy Adaptive Protection Config Layer7Ddos Defense Config Response 
- If set to true, enables Cloud Armor Machine Learning.
- layer7_ddos_ Securitydefense_ config Policy Adaptive Protection Config Layer7Ddos Defense Config Response 
- If set to true, enables Cloud Armor Machine Learning.
- layer7DdosDefense Property MapConfig 
- If set to true, enables Cloud Armor Machine Learning.
SecurityPolicyAdvancedOptionsConfig, SecurityPolicyAdvancedOptionsConfigArgs          
- JsonCustom Pulumi.Config Google Native. Compute. V1. Inputs. Security Policy Advanced Options Config Json Custom Config 
- Custom configuration to apply the JSON parsing. Only applicable when json_parsing is set to STANDARD.
- JsonParsing Pulumi.Google Native. Compute. V1. Security Policy Advanced Options Config Json Parsing 
- LogLevel Pulumi.Google Native. Compute. V1. Security Policy Advanced Options Config Log Level 
- UserIp List<string>Request Headers 
- An optional list of case-insensitive request header names to use for resolving the callers client IP address.
- JsonCustom SecurityConfig Policy Advanced Options Config Json Custom Config 
- Custom configuration to apply the JSON parsing. Only applicable when json_parsing is set to STANDARD.
- JsonParsing SecurityPolicy Advanced Options Config Json Parsing 
- LogLevel SecurityPolicy Advanced Options Config Log Level 
- UserIp []stringRequest Headers 
- An optional list of case-insensitive request header names to use for resolving the callers client IP address.
- jsonCustom SecurityConfig Policy Advanced Options Config Json Custom Config 
- Custom configuration to apply the JSON parsing. Only applicable when json_parsing is set to STANDARD.
- jsonParsing SecurityPolicy Advanced Options Config Json Parsing 
- logLevel SecurityPolicy Advanced Options Config Log Level 
- userIp List<String>Request Headers 
- An optional list of case-insensitive request header names to use for resolving the callers client IP address.
- jsonCustom SecurityConfig Policy Advanced Options Config Json Custom Config 
- Custom configuration to apply the JSON parsing. Only applicable when json_parsing is set to STANDARD.
- jsonParsing SecurityPolicy Advanced Options Config Json Parsing 
- logLevel SecurityPolicy Advanced Options Config Log Level 
- userIp string[]Request Headers 
- An optional list of case-insensitive request header names to use for resolving the callers client IP address.
- json_custom_ Securityconfig Policy Advanced Options Config Json Custom Config 
- Custom configuration to apply the JSON parsing. Only applicable when json_parsing is set to STANDARD.
- json_parsing SecurityPolicy Advanced Options Config Json Parsing 
- log_level SecurityPolicy Advanced Options Config Log Level 
- user_ip_ Sequence[str]request_ headers 
- An optional list of case-insensitive request header names to use for resolving the callers client IP address.
- jsonCustom Property MapConfig 
- Custom configuration to apply the JSON parsing. Only applicable when json_parsing is set to STANDARD.
- jsonParsing "DISABLED" | "STANDARD" | "STANDARD_WITH_GRAPHQL"
- logLevel "NORMAL" | "VERBOSE"
- userIp List<String>Request Headers 
- An optional list of case-insensitive request header names to use for resolving the callers client IP address.
SecurityPolicyAdvancedOptionsConfigJsonCustomConfig, SecurityPolicyAdvancedOptionsConfigJsonCustomConfigArgs                
- ContentTypes List<string>
- A list of custom Content-Type header values to apply the JSON parsing. As per RFC 1341, a Content-Type header value has the following format: Content-Type := type "/" subtype *[";" parameter] When configuring a custom Content-Type header value, only the type/subtype needs to be specified, and the parameters should be excluded.
- ContentTypes []string
- A list of custom Content-Type header values to apply the JSON parsing. As per RFC 1341, a Content-Type header value has the following format: Content-Type := type "/" subtype *[";" parameter] When configuring a custom Content-Type header value, only the type/subtype needs to be specified, and the parameters should be excluded.
- contentTypes List<String>
- A list of custom Content-Type header values to apply the JSON parsing. As per RFC 1341, a Content-Type header value has the following format: Content-Type := type "/" subtype *[";" parameter] When configuring a custom Content-Type header value, only the type/subtype needs to be specified, and the parameters should be excluded.
- contentTypes string[]
- A list of custom Content-Type header values to apply the JSON parsing. As per RFC 1341, a Content-Type header value has the following format: Content-Type := type "/" subtype *[";" parameter] When configuring a custom Content-Type header value, only the type/subtype needs to be specified, and the parameters should be excluded.
- content_types Sequence[str]
- A list of custom Content-Type header values to apply the JSON parsing. As per RFC 1341, a Content-Type header value has the following format: Content-Type := type "/" subtype *[";" parameter] When configuring a custom Content-Type header value, only the type/subtype needs to be specified, and the parameters should be excluded.
- contentTypes List<String>
- A list of custom Content-Type header values to apply the JSON parsing. As per RFC 1341, a Content-Type header value has the following format: Content-Type := type "/" subtype *[";" parameter] When configuring a custom Content-Type header value, only the type/subtype needs to be specified, and the parameters should be excluded.
SecurityPolicyAdvancedOptionsConfigJsonCustomConfigResponse, SecurityPolicyAdvancedOptionsConfigJsonCustomConfigResponseArgs                  
- ContentTypes List<string>
- A list of custom Content-Type header values to apply the JSON parsing. As per RFC 1341, a Content-Type header value has the following format: Content-Type := type "/" subtype *[";" parameter] When configuring a custom Content-Type header value, only the type/subtype needs to be specified, and the parameters should be excluded.
- ContentTypes []string
- A list of custom Content-Type header values to apply the JSON parsing. As per RFC 1341, a Content-Type header value has the following format: Content-Type := type "/" subtype *[";" parameter] When configuring a custom Content-Type header value, only the type/subtype needs to be specified, and the parameters should be excluded.
- contentTypes List<String>
- A list of custom Content-Type header values to apply the JSON parsing. As per RFC 1341, a Content-Type header value has the following format: Content-Type := type "/" subtype *[";" parameter] When configuring a custom Content-Type header value, only the type/subtype needs to be specified, and the parameters should be excluded.
- contentTypes string[]
- A list of custom Content-Type header values to apply the JSON parsing. As per RFC 1341, a Content-Type header value has the following format: Content-Type := type "/" subtype *[";" parameter] When configuring a custom Content-Type header value, only the type/subtype needs to be specified, and the parameters should be excluded.
- content_types Sequence[str]
- A list of custom Content-Type header values to apply the JSON parsing. As per RFC 1341, a Content-Type header value has the following format: Content-Type := type "/" subtype *[";" parameter] When configuring a custom Content-Type header value, only the type/subtype needs to be specified, and the parameters should be excluded.
- contentTypes List<String>
- A list of custom Content-Type header values to apply the JSON parsing. As per RFC 1341, a Content-Type header value has the following format: Content-Type := type "/" subtype *[";" parameter] When configuring a custom Content-Type header value, only the type/subtype needs to be specified, and the parameters should be excluded.
SecurityPolicyAdvancedOptionsConfigJsonParsing, SecurityPolicyAdvancedOptionsConfigJsonParsingArgs              
- Disabled
- DISABLED
- Standard
- STANDARD
- StandardWith Graphql 
- STANDARD_WITH_GRAPHQL
- SecurityPolicy Advanced Options Config Json Parsing Disabled 
- DISABLED
- SecurityPolicy Advanced Options Config Json Parsing Standard 
- STANDARD
- SecurityPolicy Advanced Options Config Json Parsing Standard With Graphql 
- STANDARD_WITH_GRAPHQL
- Disabled
- DISABLED
- Standard
- STANDARD
- StandardWith Graphql 
- STANDARD_WITH_GRAPHQL
- Disabled
- DISABLED
- Standard
- STANDARD
- StandardWith Graphql 
- STANDARD_WITH_GRAPHQL
- DISABLED
- DISABLED
- STANDARD
- STANDARD
- STANDARD_WITH_GRAPHQL
- STANDARD_WITH_GRAPHQL
- "DISABLED"
- DISABLED
- "STANDARD"
- STANDARD
- "STANDARD_WITH_GRAPHQL"
- STANDARD_WITH_GRAPHQL
SecurityPolicyAdvancedOptionsConfigLogLevel, SecurityPolicyAdvancedOptionsConfigLogLevelArgs              
- Normal
- NORMAL
- Verbose
- VERBOSE
- SecurityPolicy Advanced Options Config Log Level Normal 
- NORMAL
- SecurityPolicy Advanced Options Config Log Level Verbose 
- VERBOSE
- Normal
- NORMAL
- Verbose
- VERBOSE
- Normal
- NORMAL
- Verbose
- VERBOSE
- NORMAL
- NORMAL
- VERBOSE
- VERBOSE
- "NORMAL"
- NORMAL
- "VERBOSE"
- VERBOSE
SecurityPolicyAdvancedOptionsConfigResponse, SecurityPolicyAdvancedOptionsConfigResponseArgs            
- JsonCustom Pulumi.Config Google Native. Compute. V1. Inputs. Security Policy Advanced Options Config Json Custom Config Response 
- Custom configuration to apply the JSON parsing. Only applicable when json_parsing is set to STANDARD.
- JsonParsing string
- LogLevel string
- UserIp List<string>Request Headers 
- An optional list of case-insensitive request header names to use for resolving the callers client IP address.
- JsonCustom SecurityConfig Policy Advanced Options Config Json Custom Config Response 
- Custom configuration to apply the JSON parsing. Only applicable when json_parsing is set to STANDARD.
- JsonParsing string
- LogLevel string
- UserIp []stringRequest Headers 
- An optional list of case-insensitive request header names to use for resolving the callers client IP address.
- jsonCustom SecurityConfig Policy Advanced Options Config Json Custom Config Response 
- Custom configuration to apply the JSON parsing. Only applicable when json_parsing is set to STANDARD.
- jsonParsing String
- logLevel String
- userIp List<String>Request Headers 
- An optional list of case-insensitive request header names to use for resolving the callers client IP address.
- jsonCustom SecurityConfig Policy Advanced Options Config Json Custom Config Response 
- Custom configuration to apply the JSON parsing. Only applicable when json_parsing is set to STANDARD.
- jsonParsing string
- logLevel string
- userIp string[]Request Headers 
- An optional list of case-insensitive request header names to use for resolving the callers client IP address.
- json_custom_ Securityconfig Policy Advanced Options Config Json Custom Config Response 
- Custom configuration to apply the JSON parsing. Only applicable when json_parsing is set to STANDARD.
- json_parsing str
- log_level str
- user_ip_ Sequence[str]request_ headers 
- An optional list of case-insensitive request header names to use for resolving the callers client IP address.
- jsonCustom Property MapConfig 
- Custom configuration to apply the JSON parsing. Only applicable when json_parsing is set to STANDARD.
- jsonParsing String
- logLevel String
- userIp List<String>Request Headers 
- An optional list of case-insensitive request header names to use for resolving the callers client IP address.
SecurityPolicyDdosProtectionConfig, SecurityPolicyDdosProtectionConfigArgs          
SecurityPolicyDdosProtectionConfigDdosProtection, SecurityPolicyDdosProtectionConfigDdosProtectionArgs              
- Advanced
- ADVANCED
- Standard
- STANDARD
- SecurityPolicy Ddos Protection Config Ddos Protection Advanced 
- ADVANCED
- SecurityPolicy Ddos Protection Config Ddos Protection Standard 
- STANDARD
- Advanced
- ADVANCED
- Standard
- STANDARD
- Advanced
- ADVANCED
- Standard
- STANDARD
- ADVANCED
- ADVANCED
- STANDARD
- STANDARD
- "ADVANCED"
- ADVANCED
- "STANDARD"
- STANDARD
SecurityPolicyDdosProtectionConfigResponse, SecurityPolicyDdosProtectionConfigResponseArgs            
- DdosProtection string
- DdosProtection string
- ddosProtection String
- ddosProtection string
- ddos_protection str
- ddosProtection String
SecurityPolicyRecaptchaOptionsConfig, SecurityPolicyRecaptchaOptionsConfigArgs          
- RedirectSite stringKey 
- An optional field to supply a reCAPTCHA site key to be used for all the rules using the redirect action with the type of GOOGLE_RECAPTCHA under the security policy. The specified site key needs to be created from the reCAPTCHA API. The user is responsible for the validity of the specified site key. If not specified, a Google-managed site key is used. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- RedirectSite stringKey 
- An optional field to supply a reCAPTCHA site key to be used for all the rules using the redirect action with the type of GOOGLE_RECAPTCHA under the security policy. The specified site key needs to be created from the reCAPTCHA API. The user is responsible for the validity of the specified site key. If not specified, a Google-managed site key is used. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- redirectSite StringKey 
- An optional field to supply a reCAPTCHA site key to be used for all the rules using the redirect action with the type of GOOGLE_RECAPTCHA under the security policy. The specified site key needs to be created from the reCAPTCHA API. The user is responsible for the validity of the specified site key. If not specified, a Google-managed site key is used. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- redirectSite stringKey 
- An optional field to supply a reCAPTCHA site key to be used for all the rules using the redirect action with the type of GOOGLE_RECAPTCHA under the security policy. The specified site key needs to be created from the reCAPTCHA API. The user is responsible for the validity of the specified site key. If not specified, a Google-managed site key is used. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- redirect_site_ strkey 
- An optional field to supply a reCAPTCHA site key to be used for all the rules using the redirect action with the type of GOOGLE_RECAPTCHA under the security policy. The specified site key needs to be created from the reCAPTCHA API. The user is responsible for the validity of the specified site key. If not specified, a Google-managed site key is used. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- redirectSite StringKey 
- An optional field to supply a reCAPTCHA site key to be used for all the rules using the redirect action with the type of GOOGLE_RECAPTCHA under the security policy. The specified site key needs to be created from the reCAPTCHA API. The user is responsible for the validity of the specified site key. If not specified, a Google-managed site key is used. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
SecurityPolicyRecaptchaOptionsConfigResponse, SecurityPolicyRecaptchaOptionsConfigResponseArgs            
- RedirectSite stringKey 
- An optional field to supply a reCAPTCHA site key to be used for all the rules using the redirect action with the type of GOOGLE_RECAPTCHA under the security policy. The specified site key needs to be created from the reCAPTCHA API. The user is responsible for the validity of the specified site key. If not specified, a Google-managed site key is used. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- RedirectSite stringKey 
- An optional field to supply a reCAPTCHA site key to be used for all the rules using the redirect action with the type of GOOGLE_RECAPTCHA under the security policy. The specified site key needs to be created from the reCAPTCHA API. The user is responsible for the validity of the specified site key. If not specified, a Google-managed site key is used. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- redirectSite StringKey 
- An optional field to supply a reCAPTCHA site key to be used for all the rules using the redirect action with the type of GOOGLE_RECAPTCHA under the security policy. The specified site key needs to be created from the reCAPTCHA API. The user is responsible for the validity of the specified site key. If not specified, a Google-managed site key is used. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- redirectSite stringKey 
- An optional field to supply a reCAPTCHA site key to be used for all the rules using the redirect action with the type of GOOGLE_RECAPTCHA under the security policy. The specified site key needs to be created from the reCAPTCHA API. The user is responsible for the validity of the specified site key. If not specified, a Google-managed site key is used. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- redirect_site_ strkey 
- An optional field to supply a reCAPTCHA site key to be used for all the rules using the redirect action with the type of GOOGLE_RECAPTCHA under the security policy. The specified site key needs to be created from the reCAPTCHA API. The user is responsible for the validity of the specified site key. If not specified, a Google-managed site key is used. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- redirectSite StringKey 
- An optional field to supply a reCAPTCHA site key to be used for all the rules using the redirect action with the type of GOOGLE_RECAPTCHA under the security policy. The specified site key needs to be created from the reCAPTCHA API. The user is responsible for the validity of the specified site key. If not specified, a Google-managed site key is used. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
SecurityPolicyRule, SecurityPolicyRuleArgs      
- Action string
- The Action to perform when the rule is matched. The following are the valid actions: - allow: allow access to target. - deny(STATUS): deny access to target, returns the HTTP response code specified. Valid values for STATUSare 403, 404, and 502. - rate_based_ban: limit client traffic to the configured threshold and ban the client if the traffic exceeds the threshold. Configure parameters for this action in RateLimitOptions. Requires rate_limit_options to be set. - redirect: redirect to a different target. This can either be an internal reCAPTCHA redirect, or an external URL-based redirect via a 302 response. Parameters for this action can be configured via redirectOptions. This action is only supported in Global Security Policies of type CLOUD_ARMOR. - throttle: limit client traffic to the configured threshold. Configure parameters for this action in rateLimitOptions. Requires rate_limit_options to be set for this.
- Description string
- An optional description of this resource. Provide this property when you create the resource.
- HeaderAction Pulumi.Google Native. Compute. V1. Inputs. Security Policy Rule Http Header Action 
- Optional, additional actions that are performed on headers. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- Match
Pulumi.Google Native. Compute. V1. Inputs. Security Policy Rule Matcher 
- A match condition that incoming traffic is evaluated against. If it evaluates to true, the corresponding 'action' is enforced.
- NetworkMatch Pulumi.Google Native. Compute. V1. Inputs. Security Policy Rule Network Matcher 
- A match condition that incoming packets are evaluated against for CLOUD_ARMOR_NETWORK security policies. If it matches, the corresponding 'action' is enforced. The match criteria for a rule consists of built-in match fields (like 'srcIpRanges') and potentially multiple user-defined match fields ('userDefinedFields'). Field values may be extracted directly from the packet or derived from it (e.g. 'srcRegionCodes'). Some fields may not be present in every packet (e.g. 'srcPorts'). A user-defined field is only present if the base header is found in the packet and the entire field is in bounds. Each match field may specify which values can match it, listing one or more ranges, prefixes, or exact values that are considered a match for the field. A field value must be present in order to match a specified match field. If no match values are specified for a match field, then any field value is considered to match it, and it's not required to be present. For strings specifying '*' is also equivalent to match all. For a packet to match a rule, all specified match fields must match the corresponding field values derived from the packet. Example: networkMatch: srcIpRanges: - "192.0.2.0/24" - "198.51.100.0/24" userDefinedFields: - name: "ipv4_fragment_offset" values: - "1-0x1fff" The above match condition matches packets with a source IP in 192.0.2.0/24 or 198.51.100.0/24 and a user-defined field named "ipv4_fragment_offset" with a value between 1 and 0x1fff inclusive.
- PreconfiguredWaf Pulumi.Config Google Native. Compute. V1. Inputs. Security Policy Rule Preconfigured Waf Config 
- Preconfigured WAF configuration to be applied for the rule. If the rule does not evaluate preconfigured WAF rules, i.e., if evaluatePreconfiguredWaf() is not used, this field will have no effect.
- Preview bool
- If set to true, the specified action is not enforced.
- Priority int
- An integer indicating the priority of a rule in the list. The priority must be a positive value between 0 and 2147483647. Rules are evaluated from highest to lowest priority where 0 is the highest priority and 2147483647 is the lowest priority.
- RateLimit Pulumi.Options Google Native. Compute. V1. Inputs. Security Policy Rule Rate Limit Options 
- Must be specified if the action is "rate_based_ban" or "throttle". Cannot be specified for any other actions.
- RedirectOptions Pulumi.Google Native. Compute. V1. Inputs. Security Policy Rule Redirect Options 
- Parameters defining the redirect action. Cannot be specified for any other actions. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- Action string
- The Action to perform when the rule is matched. The following are the valid actions: - allow: allow access to target. - deny(STATUS): deny access to target, returns the HTTP response code specified. Valid values for STATUSare 403, 404, and 502. - rate_based_ban: limit client traffic to the configured threshold and ban the client if the traffic exceeds the threshold. Configure parameters for this action in RateLimitOptions. Requires rate_limit_options to be set. - redirect: redirect to a different target. This can either be an internal reCAPTCHA redirect, or an external URL-based redirect via a 302 response. Parameters for this action can be configured via redirectOptions. This action is only supported in Global Security Policies of type CLOUD_ARMOR. - throttle: limit client traffic to the configured threshold. Configure parameters for this action in rateLimitOptions. Requires rate_limit_options to be set for this.
- Description string
- An optional description of this resource. Provide this property when you create the resource.
- HeaderAction SecurityPolicy Rule Http Header Action 
- Optional, additional actions that are performed on headers. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- Match
SecurityPolicy Rule Matcher 
- A match condition that incoming traffic is evaluated against. If it evaluates to true, the corresponding 'action' is enforced.
- NetworkMatch SecurityPolicy Rule Network Matcher 
- A match condition that incoming packets are evaluated against for CLOUD_ARMOR_NETWORK security policies. If it matches, the corresponding 'action' is enforced. The match criteria for a rule consists of built-in match fields (like 'srcIpRanges') and potentially multiple user-defined match fields ('userDefinedFields'). Field values may be extracted directly from the packet or derived from it (e.g. 'srcRegionCodes'). Some fields may not be present in every packet (e.g. 'srcPorts'). A user-defined field is only present if the base header is found in the packet and the entire field is in bounds. Each match field may specify which values can match it, listing one or more ranges, prefixes, or exact values that are considered a match for the field. A field value must be present in order to match a specified match field. If no match values are specified for a match field, then any field value is considered to match it, and it's not required to be present. For strings specifying '*' is also equivalent to match all. For a packet to match a rule, all specified match fields must match the corresponding field values derived from the packet. Example: networkMatch: srcIpRanges: - "192.0.2.0/24" - "198.51.100.0/24" userDefinedFields: - name: "ipv4_fragment_offset" values: - "1-0x1fff" The above match condition matches packets with a source IP in 192.0.2.0/24 or 198.51.100.0/24 and a user-defined field named "ipv4_fragment_offset" with a value between 1 and 0x1fff inclusive.
- PreconfiguredWaf SecurityConfig Policy Rule Preconfigured Waf Config 
- Preconfigured WAF configuration to be applied for the rule. If the rule does not evaluate preconfigured WAF rules, i.e., if evaluatePreconfiguredWaf() is not used, this field will have no effect.
- Preview bool
- If set to true, the specified action is not enforced.
- Priority int
- An integer indicating the priority of a rule in the list. The priority must be a positive value between 0 and 2147483647. Rules are evaluated from highest to lowest priority where 0 is the highest priority and 2147483647 is the lowest priority.
- RateLimit SecurityOptions Policy Rule Rate Limit Options 
- Must be specified if the action is "rate_based_ban" or "throttle". Cannot be specified for any other actions.
- RedirectOptions SecurityPolicy Rule Redirect Options 
- Parameters defining the redirect action. Cannot be specified for any other actions. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- action String
- The Action to perform when the rule is matched. The following are the valid actions: - allow: allow access to target. - deny(STATUS): deny access to target, returns the HTTP response code specified. Valid values for STATUSare 403, 404, and 502. - rate_based_ban: limit client traffic to the configured threshold and ban the client if the traffic exceeds the threshold. Configure parameters for this action in RateLimitOptions. Requires rate_limit_options to be set. - redirect: redirect to a different target. This can either be an internal reCAPTCHA redirect, or an external URL-based redirect via a 302 response. Parameters for this action can be configured via redirectOptions. This action is only supported in Global Security Policies of type CLOUD_ARMOR. - throttle: limit client traffic to the configured threshold. Configure parameters for this action in rateLimitOptions. Requires rate_limit_options to be set for this.
- description String
- An optional description of this resource. Provide this property when you create the resource.
- headerAction SecurityPolicy Rule Http Header Action 
- Optional, additional actions that are performed on headers. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- match
SecurityPolicy Rule Matcher 
- A match condition that incoming traffic is evaluated against. If it evaluates to true, the corresponding 'action' is enforced.
- networkMatch SecurityPolicy Rule Network Matcher 
- A match condition that incoming packets are evaluated against for CLOUD_ARMOR_NETWORK security policies. If it matches, the corresponding 'action' is enforced. The match criteria for a rule consists of built-in match fields (like 'srcIpRanges') and potentially multiple user-defined match fields ('userDefinedFields'). Field values may be extracted directly from the packet or derived from it (e.g. 'srcRegionCodes'). Some fields may not be present in every packet (e.g. 'srcPorts'). A user-defined field is only present if the base header is found in the packet and the entire field is in bounds. Each match field may specify which values can match it, listing one or more ranges, prefixes, or exact values that are considered a match for the field. A field value must be present in order to match a specified match field. If no match values are specified for a match field, then any field value is considered to match it, and it's not required to be present. For strings specifying '*' is also equivalent to match all. For a packet to match a rule, all specified match fields must match the corresponding field values derived from the packet. Example: networkMatch: srcIpRanges: - "192.0.2.0/24" - "198.51.100.0/24" userDefinedFields: - name: "ipv4_fragment_offset" values: - "1-0x1fff" The above match condition matches packets with a source IP in 192.0.2.0/24 or 198.51.100.0/24 and a user-defined field named "ipv4_fragment_offset" with a value between 1 and 0x1fff inclusive.
- preconfiguredWaf SecurityConfig Policy Rule Preconfigured Waf Config 
- Preconfigured WAF configuration to be applied for the rule. If the rule does not evaluate preconfigured WAF rules, i.e., if evaluatePreconfiguredWaf() is not used, this field will have no effect.
- preview Boolean
- If set to true, the specified action is not enforced.
- priority Integer
- An integer indicating the priority of a rule in the list. The priority must be a positive value between 0 and 2147483647. Rules are evaluated from highest to lowest priority where 0 is the highest priority and 2147483647 is the lowest priority.
- rateLimit SecurityOptions Policy Rule Rate Limit Options 
- Must be specified if the action is "rate_based_ban" or "throttle". Cannot be specified for any other actions.
- redirectOptions SecurityPolicy Rule Redirect Options 
- Parameters defining the redirect action. Cannot be specified for any other actions. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- action string
- The Action to perform when the rule is matched. The following are the valid actions: - allow: allow access to target. - deny(STATUS): deny access to target, returns the HTTP response code specified. Valid values for STATUSare 403, 404, and 502. - rate_based_ban: limit client traffic to the configured threshold and ban the client if the traffic exceeds the threshold. Configure parameters for this action in RateLimitOptions. Requires rate_limit_options to be set. - redirect: redirect to a different target. This can either be an internal reCAPTCHA redirect, or an external URL-based redirect via a 302 response. Parameters for this action can be configured via redirectOptions. This action is only supported in Global Security Policies of type CLOUD_ARMOR. - throttle: limit client traffic to the configured threshold. Configure parameters for this action in rateLimitOptions. Requires rate_limit_options to be set for this.
- description string
- An optional description of this resource. Provide this property when you create the resource.
- headerAction SecurityPolicy Rule Http Header Action 
- Optional, additional actions that are performed on headers. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- match
SecurityPolicy Rule Matcher 
- A match condition that incoming traffic is evaluated against. If it evaluates to true, the corresponding 'action' is enforced.
- networkMatch SecurityPolicy Rule Network Matcher 
- A match condition that incoming packets are evaluated against for CLOUD_ARMOR_NETWORK security policies. If it matches, the corresponding 'action' is enforced. The match criteria for a rule consists of built-in match fields (like 'srcIpRanges') and potentially multiple user-defined match fields ('userDefinedFields'). Field values may be extracted directly from the packet or derived from it (e.g. 'srcRegionCodes'). Some fields may not be present in every packet (e.g. 'srcPorts'). A user-defined field is only present if the base header is found in the packet and the entire field is in bounds. Each match field may specify which values can match it, listing one or more ranges, prefixes, or exact values that are considered a match for the field. A field value must be present in order to match a specified match field. If no match values are specified for a match field, then any field value is considered to match it, and it's not required to be present. For strings specifying '*' is also equivalent to match all. For a packet to match a rule, all specified match fields must match the corresponding field values derived from the packet. Example: networkMatch: srcIpRanges: - "192.0.2.0/24" - "198.51.100.0/24" userDefinedFields: - name: "ipv4_fragment_offset" values: - "1-0x1fff" The above match condition matches packets with a source IP in 192.0.2.0/24 or 198.51.100.0/24 and a user-defined field named "ipv4_fragment_offset" with a value between 1 and 0x1fff inclusive.
- preconfiguredWaf SecurityConfig Policy Rule Preconfigured Waf Config 
- Preconfigured WAF configuration to be applied for the rule. If the rule does not evaluate preconfigured WAF rules, i.e., if evaluatePreconfiguredWaf() is not used, this field will have no effect.
- preview boolean
- If set to true, the specified action is not enforced.
- priority number
- An integer indicating the priority of a rule in the list. The priority must be a positive value between 0 and 2147483647. Rules are evaluated from highest to lowest priority where 0 is the highest priority and 2147483647 is the lowest priority.
- rateLimit SecurityOptions Policy Rule Rate Limit Options 
- Must be specified if the action is "rate_based_ban" or "throttle". Cannot be specified for any other actions.
- redirectOptions SecurityPolicy Rule Redirect Options 
- Parameters defining the redirect action. Cannot be specified for any other actions. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- action str
- The Action to perform when the rule is matched. The following are the valid actions: - allow: allow access to target. - deny(STATUS): deny access to target, returns the HTTP response code specified. Valid values for STATUSare 403, 404, and 502. - rate_based_ban: limit client traffic to the configured threshold and ban the client if the traffic exceeds the threshold. Configure parameters for this action in RateLimitOptions. Requires rate_limit_options to be set. - redirect: redirect to a different target. This can either be an internal reCAPTCHA redirect, or an external URL-based redirect via a 302 response. Parameters for this action can be configured via redirectOptions. This action is only supported in Global Security Policies of type CLOUD_ARMOR. - throttle: limit client traffic to the configured threshold. Configure parameters for this action in rateLimitOptions. Requires rate_limit_options to be set for this.
- description str
- An optional description of this resource. Provide this property when you create the resource.
- header_action SecurityPolicy Rule Http Header Action 
- Optional, additional actions that are performed on headers. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- match
SecurityPolicy Rule Matcher 
- A match condition that incoming traffic is evaluated against. If it evaluates to true, the corresponding 'action' is enforced.
- network_match SecurityPolicy Rule Network Matcher 
- A match condition that incoming packets are evaluated against for CLOUD_ARMOR_NETWORK security policies. If it matches, the corresponding 'action' is enforced. The match criteria for a rule consists of built-in match fields (like 'srcIpRanges') and potentially multiple user-defined match fields ('userDefinedFields'). Field values may be extracted directly from the packet or derived from it (e.g. 'srcRegionCodes'). Some fields may not be present in every packet (e.g. 'srcPorts'). A user-defined field is only present if the base header is found in the packet and the entire field is in bounds. Each match field may specify which values can match it, listing one or more ranges, prefixes, or exact values that are considered a match for the field. A field value must be present in order to match a specified match field. If no match values are specified for a match field, then any field value is considered to match it, and it's not required to be present. For strings specifying '*' is also equivalent to match all. For a packet to match a rule, all specified match fields must match the corresponding field values derived from the packet. Example: networkMatch: srcIpRanges: - "192.0.2.0/24" - "198.51.100.0/24" userDefinedFields: - name: "ipv4_fragment_offset" values: - "1-0x1fff" The above match condition matches packets with a source IP in 192.0.2.0/24 or 198.51.100.0/24 and a user-defined field named "ipv4_fragment_offset" with a value between 1 and 0x1fff inclusive.
- preconfigured_waf_ Securityconfig Policy Rule Preconfigured Waf Config 
- Preconfigured WAF configuration to be applied for the rule. If the rule does not evaluate preconfigured WAF rules, i.e., if evaluatePreconfiguredWaf() is not used, this field will have no effect.
- preview bool
- If set to true, the specified action is not enforced.
- priority int
- An integer indicating the priority of a rule in the list. The priority must be a positive value between 0 and 2147483647. Rules are evaluated from highest to lowest priority where 0 is the highest priority and 2147483647 is the lowest priority.
- rate_limit_ Securityoptions Policy Rule Rate Limit Options 
- Must be specified if the action is "rate_based_ban" or "throttle". Cannot be specified for any other actions.
- redirect_options SecurityPolicy Rule Redirect Options 
- Parameters defining the redirect action. Cannot be specified for any other actions. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- action String
- The Action to perform when the rule is matched. The following are the valid actions: - allow: allow access to target. - deny(STATUS): deny access to target, returns the HTTP response code specified. Valid values for STATUSare 403, 404, and 502. - rate_based_ban: limit client traffic to the configured threshold and ban the client if the traffic exceeds the threshold. Configure parameters for this action in RateLimitOptions. Requires rate_limit_options to be set. - redirect: redirect to a different target. This can either be an internal reCAPTCHA redirect, or an external URL-based redirect via a 302 response. Parameters for this action can be configured via redirectOptions. This action is only supported in Global Security Policies of type CLOUD_ARMOR. - throttle: limit client traffic to the configured threshold. Configure parameters for this action in rateLimitOptions. Requires rate_limit_options to be set for this.
- description String
- An optional description of this resource. Provide this property when you create the resource.
- headerAction Property Map
- Optional, additional actions that are performed on headers. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- match Property Map
- A match condition that incoming traffic is evaluated against. If it evaluates to true, the corresponding 'action' is enforced.
- networkMatch Property Map
- A match condition that incoming packets are evaluated against for CLOUD_ARMOR_NETWORK security policies. If it matches, the corresponding 'action' is enforced. The match criteria for a rule consists of built-in match fields (like 'srcIpRanges') and potentially multiple user-defined match fields ('userDefinedFields'). Field values may be extracted directly from the packet or derived from it (e.g. 'srcRegionCodes'). Some fields may not be present in every packet (e.g. 'srcPorts'). A user-defined field is only present if the base header is found in the packet and the entire field is in bounds. Each match field may specify which values can match it, listing one or more ranges, prefixes, or exact values that are considered a match for the field. A field value must be present in order to match a specified match field. If no match values are specified for a match field, then any field value is considered to match it, and it's not required to be present. For strings specifying '*' is also equivalent to match all. For a packet to match a rule, all specified match fields must match the corresponding field values derived from the packet. Example: networkMatch: srcIpRanges: - "192.0.2.0/24" - "198.51.100.0/24" userDefinedFields: - name: "ipv4_fragment_offset" values: - "1-0x1fff" The above match condition matches packets with a source IP in 192.0.2.0/24 or 198.51.100.0/24 and a user-defined field named "ipv4_fragment_offset" with a value between 1 and 0x1fff inclusive.
- preconfiguredWaf Property MapConfig 
- Preconfigured WAF configuration to be applied for the rule. If the rule does not evaluate preconfigured WAF rules, i.e., if evaluatePreconfiguredWaf() is not used, this field will have no effect.
- preview Boolean
- If set to true, the specified action is not enforced.
- priority Number
- An integer indicating the priority of a rule in the list. The priority must be a positive value between 0 and 2147483647. Rules are evaluated from highest to lowest priority where 0 is the highest priority and 2147483647 is the lowest priority.
- rateLimit Property MapOptions 
- Must be specified if the action is "rate_based_ban" or "throttle". Cannot be specified for any other actions.
- redirectOptions Property Map
- Parameters defining the redirect action. Cannot be specified for any other actions. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
SecurityPolicyRuleHttpHeaderAction, SecurityPolicyRuleHttpHeaderActionArgs            
- RequestHeaders List<Pulumi.To Adds Google Native. Compute. V1. Inputs. Security Policy Rule Http Header Action Http Header Option> 
- The list of request headers to add or overwrite if they're already present.
- RequestHeaders []SecurityTo Adds Policy Rule Http Header Action Http Header Option 
- The list of request headers to add or overwrite if they're already present.
- requestHeaders List<SecurityTo Adds Policy Rule Http Header Action Http Header Option> 
- The list of request headers to add or overwrite if they're already present.
- requestHeaders SecurityTo Adds Policy Rule Http Header Action Http Header Option[] 
- The list of request headers to add or overwrite if they're already present.
- request_headers_ Sequence[Securityto_ adds Policy Rule Http Header Action Http Header Option] 
- The list of request headers to add or overwrite if they're already present.
- requestHeaders List<Property Map>To Adds 
- The list of request headers to add or overwrite if they're already present.
SecurityPolicyRuleHttpHeaderActionHttpHeaderOption, SecurityPolicyRuleHttpHeaderActionHttpHeaderOptionArgs                  
- HeaderName string
- The name of the header to set.
- HeaderValue string
- The value to set the named header to.
- HeaderName string
- The name of the header to set.
- HeaderValue string
- The value to set the named header to.
- headerName String
- The name of the header to set.
- headerValue String
- The value to set the named header to.
- headerName string
- The name of the header to set.
- headerValue string
- The value to set the named header to.
- header_name str
- The name of the header to set.
- header_value str
- The value to set the named header to.
- headerName String
- The name of the header to set.
- headerValue String
- The value to set the named header to.
SecurityPolicyRuleHttpHeaderActionHttpHeaderOptionResponse, SecurityPolicyRuleHttpHeaderActionHttpHeaderOptionResponseArgs                    
- HeaderName string
- The name of the header to set.
- HeaderValue string
- The value to set the named header to.
- HeaderName string
- The name of the header to set.
- HeaderValue string
- The value to set the named header to.
- headerName String
- The name of the header to set.
- headerValue String
- The value to set the named header to.
- headerName string
- The name of the header to set.
- headerValue string
- The value to set the named header to.
- header_name str
- The name of the header to set.
- header_value str
- The value to set the named header to.
- headerName String
- The name of the header to set.
- headerValue String
- The value to set the named header to.
SecurityPolicyRuleHttpHeaderActionResponse, SecurityPolicyRuleHttpHeaderActionResponseArgs              
- RequestHeaders List<Pulumi.To Adds Google Native. Compute. V1. Inputs. Security Policy Rule Http Header Action Http Header Option Response> 
- The list of request headers to add or overwrite if they're already present.
- RequestHeaders []SecurityTo Adds Policy Rule Http Header Action Http Header Option Response 
- The list of request headers to add or overwrite if they're already present.
- requestHeaders List<SecurityTo Adds Policy Rule Http Header Action Http Header Option Response> 
- The list of request headers to add or overwrite if they're already present.
- requestHeaders SecurityTo Adds Policy Rule Http Header Action Http Header Option Response[] 
- The list of request headers to add or overwrite if they're already present.
- request_headers_ Sequence[Securityto_ adds Policy Rule Http Header Action Http Header Option Response] 
- The list of request headers to add or overwrite if they're already present.
- requestHeaders List<Property Map>To Adds 
- The list of request headers to add or overwrite if they're already present.
SecurityPolicyRuleMatcher, SecurityPolicyRuleMatcherArgs        
- Config
Pulumi.Google Native. Compute. V1. Inputs. Security Policy Rule Matcher Config 
- The configuration options available when specifying versioned_expr. This field must be specified if versioned_expr is specified and cannot be specified if versioned_expr is not specified.
- Expr
Pulumi.Google Native. Compute. V1. Inputs. Expr 
- User defined CEVAL expression. A CEVAL expression is used to specify match criteria such as origin.ip, source.region_code and contents in the request header. Expressions containing evaluateThreatIntelligencerequire Cloud Armor Managed Protection Plus tier and are not supported in Edge Policies nor in Regional Policies. Expressions containingevaluatePreconfiguredExpr('sourceiplist-*')require Cloud Armor Managed Protection Plus tier and are only supported in Global Security Policies.
- VersionedExpr Pulumi.Google Native. Compute. V1. Security Policy Rule Matcher Versioned Expr 
- Preconfigured versioned expression. If this field is specified, config must also be specified. Available preconfigured expressions along with their requirements are: SRC_IPS_V1 - must specify the corresponding src_ip_range field in config.
- Config
SecurityPolicy Rule Matcher Config 
- The configuration options available when specifying versioned_expr. This field must be specified if versioned_expr is specified and cannot be specified if versioned_expr is not specified.
- Expr Expr
- User defined CEVAL expression. A CEVAL expression is used to specify match criteria such as origin.ip, source.region_code and contents in the request header. Expressions containing evaluateThreatIntelligencerequire Cloud Armor Managed Protection Plus tier and are not supported in Edge Policies nor in Regional Policies. Expressions containingevaluatePreconfiguredExpr('sourceiplist-*')require Cloud Armor Managed Protection Plus tier and are only supported in Global Security Policies.
- VersionedExpr SecurityPolicy Rule Matcher Versioned Expr 
- Preconfigured versioned expression. If this field is specified, config must also be specified. Available preconfigured expressions along with their requirements are: SRC_IPS_V1 - must specify the corresponding src_ip_range field in config.
- config
SecurityPolicy Rule Matcher Config 
- The configuration options available when specifying versioned_expr. This field must be specified if versioned_expr is specified and cannot be specified if versioned_expr is not specified.
- expr Expr
- User defined CEVAL expression. A CEVAL expression is used to specify match criteria such as origin.ip, source.region_code and contents in the request header. Expressions containing evaluateThreatIntelligencerequire Cloud Armor Managed Protection Plus tier and are not supported in Edge Policies nor in Regional Policies. Expressions containingevaluatePreconfiguredExpr('sourceiplist-*')require Cloud Armor Managed Protection Plus tier and are only supported in Global Security Policies.
- versionedExpr SecurityPolicy Rule Matcher Versioned Expr 
- Preconfigured versioned expression. If this field is specified, config must also be specified. Available preconfigured expressions along with their requirements are: SRC_IPS_V1 - must specify the corresponding src_ip_range field in config.
- config
SecurityPolicy Rule Matcher Config 
- The configuration options available when specifying versioned_expr. This field must be specified if versioned_expr is specified and cannot be specified if versioned_expr is not specified.
- expr Expr
- User defined CEVAL expression. A CEVAL expression is used to specify match criteria such as origin.ip, source.region_code and contents in the request header. Expressions containing evaluateThreatIntelligencerequire Cloud Armor Managed Protection Plus tier and are not supported in Edge Policies nor in Regional Policies. Expressions containingevaluatePreconfiguredExpr('sourceiplist-*')require Cloud Armor Managed Protection Plus tier and are only supported in Global Security Policies.
- versionedExpr SecurityPolicy Rule Matcher Versioned Expr 
- Preconfigured versioned expression. If this field is specified, config must also be specified. Available preconfigured expressions along with their requirements are: SRC_IPS_V1 - must specify the corresponding src_ip_range field in config.
- config
SecurityPolicy Rule Matcher Config 
- The configuration options available when specifying versioned_expr. This field must be specified if versioned_expr is specified and cannot be specified if versioned_expr is not specified.
- expr Expr
- User defined CEVAL expression. A CEVAL expression is used to specify match criteria such as origin.ip, source.region_code and contents in the request header. Expressions containing evaluateThreatIntelligencerequire Cloud Armor Managed Protection Plus tier and are not supported in Edge Policies nor in Regional Policies. Expressions containingevaluatePreconfiguredExpr('sourceiplist-*')require Cloud Armor Managed Protection Plus tier and are only supported in Global Security Policies.
- versioned_expr SecurityPolicy Rule Matcher Versioned Expr 
- Preconfigured versioned expression. If this field is specified, config must also be specified. Available preconfigured expressions along with their requirements are: SRC_IPS_V1 - must specify the corresponding src_ip_range field in config.
- config Property Map
- The configuration options available when specifying versioned_expr. This field must be specified if versioned_expr is specified and cannot be specified if versioned_expr is not specified.
- expr Property Map
- User defined CEVAL expression. A CEVAL expression is used to specify match criteria such as origin.ip, source.region_code and contents in the request header. Expressions containing evaluateThreatIntelligencerequire Cloud Armor Managed Protection Plus tier and are not supported in Edge Policies nor in Regional Policies. Expressions containingevaluatePreconfiguredExpr('sourceiplist-*')require Cloud Armor Managed Protection Plus tier and are only supported in Global Security Policies.
- versionedExpr "SRC_IPS_V1"
- Preconfigured versioned expression. If this field is specified, config must also be specified. Available preconfigured expressions along with their requirements are: SRC_IPS_V1 - must specify the corresponding src_ip_range field in config.
SecurityPolicyRuleMatcherConfig, SecurityPolicyRuleMatcherConfigArgs          
- SrcIp List<string>Ranges 
- CIDR IP address range. Maximum number of src_ip_ranges allowed is 10.
- SrcIp []stringRanges 
- CIDR IP address range. Maximum number of src_ip_ranges allowed is 10.
- srcIp List<String>Ranges 
- CIDR IP address range. Maximum number of src_ip_ranges allowed is 10.
- srcIp string[]Ranges 
- CIDR IP address range. Maximum number of src_ip_ranges allowed is 10.
- src_ip_ Sequence[str]ranges 
- CIDR IP address range. Maximum number of src_ip_ranges allowed is 10.
- srcIp List<String>Ranges 
- CIDR IP address range. Maximum number of src_ip_ranges allowed is 10.
SecurityPolicyRuleMatcherConfigResponse, SecurityPolicyRuleMatcherConfigResponseArgs            
- SrcIp List<string>Ranges 
- CIDR IP address range. Maximum number of src_ip_ranges allowed is 10.
- SrcIp []stringRanges 
- CIDR IP address range. Maximum number of src_ip_ranges allowed is 10.
- srcIp List<String>Ranges 
- CIDR IP address range. Maximum number of src_ip_ranges allowed is 10.
- srcIp string[]Ranges 
- CIDR IP address range. Maximum number of src_ip_ranges allowed is 10.
- src_ip_ Sequence[str]ranges 
- CIDR IP address range. Maximum number of src_ip_ranges allowed is 10.
- srcIp List<String>Ranges 
- CIDR IP address range. Maximum number of src_ip_ranges allowed is 10.
SecurityPolicyRuleMatcherResponse, SecurityPolicyRuleMatcherResponseArgs          
- Config
Pulumi.Google Native. Compute. V1. Inputs. Security Policy Rule Matcher Config Response 
- The configuration options available when specifying versioned_expr. This field must be specified if versioned_expr is specified and cannot be specified if versioned_expr is not specified.
- Expr
Pulumi.Google Native. Compute. V1. Inputs. Expr Response 
- User defined CEVAL expression. A CEVAL expression is used to specify match criteria such as origin.ip, source.region_code and contents in the request header. Expressions containing evaluateThreatIntelligencerequire Cloud Armor Managed Protection Plus tier and are not supported in Edge Policies nor in Regional Policies. Expressions containingevaluatePreconfiguredExpr('sourceiplist-*')require Cloud Armor Managed Protection Plus tier and are only supported in Global Security Policies.
- VersionedExpr string
- Preconfigured versioned expression. If this field is specified, config must also be specified. Available preconfigured expressions along with their requirements are: SRC_IPS_V1 - must specify the corresponding src_ip_range field in config.
- Config
SecurityPolicy Rule Matcher Config Response 
- The configuration options available when specifying versioned_expr. This field must be specified if versioned_expr is specified and cannot be specified if versioned_expr is not specified.
- Expr
ExprResponse 
- User defined CEVAL expression. A CEVAL expression is used to specify match criteria such as origin.ip, source.region_code and contents in the request header. Expressions containing evaluateThreatIntelligencerequire Cloud Armor Managed Protection Plus tier and are not supported in Edge Policies nor in Regional Policies. Expressions containingevaluatePreconfiguredExpr('sourceiplist-*')require Cloud Armor Managed Protection Plus tier and are only supported in Global Security Policies.
- VersionedExpr string
- Preconfigured versioned expression. If this field is specified, config must also be specified. Available preconfigured expressions along with their requirements are: SRC_IPS_V1 - must specify the corresponding src_ip_range field in config.
- config
SecurityPolicy Rule Matcher Config Response 
- The configuration options available when specifying versioned_expr. This field must be specified if versioned_expr is specified and cannot be specified if versioned_expr is not specified.
- expr
ExprResponse 
- User defined CEVAL expression. A CEVAL expression is used to specify match criteria such as origin.ip, source.region_code and contents in the request header. Expressions containing evaluateThreatIntelligencerequire Cloud Armor Managed Protection Plus tier and are not supported in Edge Policies nor in Regional Policies. Expressions containingevaluatePreconfiguredExpr('sourceiplist-*')require Cloud Armor Managed Protection Plus tier and are only supported in Global Security Policies.
- versionedExpr String
- Preconfigured versioned expression. If this field is specified, config must also be specified. Available preconfigured expressions along with their requirements are: SRC_IPS_V1 - must specify the corresponding src_ip_range field in config.
- config
SecurityPolicy Rule Matcher Config Response 
- The configuration options available when specifying versioned_expr. This field must be specified if versioned_expr is specified and cannot be specified if versioned_expr is not specified.
- expr
ExprResponse 
- User defined CEVAL expression. A CEVAL expression is used to specify match criteria such as origin.ip, source.region_code and contents in the request header. Expressions containing evaluateThreatIntelligencerequire Cloud Armor Managed Protection Plus tier and are not supported in Edge Policies nor in Regional Policies. Expressions containingevaluatePreconfiguredExpr('sourceiplist-*')require Cloud Armor Managed Protection Plus tier and are only supported in Global Security Policies.
- versionedExpr string
- Preconfigured versioned expression. If this field is specified, config must also be specified. Available preconfigured expressions along with their requirements are: SRC_IPS_V1 - must specify the corresponding src_ip_range field in config.
- config
SecurityPolicy Rule Matcher Config Response 
- The configuration options available when specifying versioned_expr. This field must be specified if versioned_expr is specified and cannot be specified if versioned_expr is not specified.
- expr
ExprResponse 
- User defined CEVAL expression. A CEVAL expression is used to specify match criteria such as origin.ip, source.region_code and contents in the request header. Expressions containing evaluateThreatIntelligencerequire Cloud Armor Managed Protection Plus tier and are not supported in Edge Policies nor in Regional Policies. Expressions containingevaluatePreconfiguredExpr('sourceiplist-*')require Cloud Armor Managed Protection Plus tier and are only supported in Global Security Policies.
- versioned_expr str
- Preconfigured versioned expression. If this field is specified, config must also be specified. Available preconfigured expressions along with their requirements are: SRC_IPS_V1 - must specify the corresponding src_ip_range field in config.
- config Property Map
- The configuration options available when specifying versioned_expr. This field must be specified if versioned_expr is specified and cannot be specified if versioned_expr is not specified.
- expr Property Map
- User defined CEVAL expression. A CEVAL expression is used to specify match criteria such as origin.ip, source.region_code and contents in the request header. Expressions containing evaluateThreatIntelligencerequire Cloud Armor Managed Protection Plus tier and are not supported in Edge Policies nor in Regional Policies. Expressions containingevaluatePreconfiguredExpr('sourceiplist-*')require Cloud Armor Managed Protection Plus tier and are only supported in Global Security Policies.
- versionedExpr String
- Preconfigured versioned expression. If this field is specified, config must also be specified. Available preconfigured expressions along with their requirements are: SRC_IPS_V1 - must specify the corresponding src_ip_range field in config.
SecurityPolicyRuleMatcherVersionedExpr, SecurityPolicyRuleMatcherVersionedExprArgs            
- SrcIps V1 
- SRC_IPS_V1Matches the source IP address of a request to the IP ranges supplied in config.
- SecurityPolicy Rule Matcher Versioned Expr Src Ips V1 
- SRC_IPS_V1Matches the source IP address of a request to the IP ranges supplied in config.
- SrcIps V1 
- SRC_IPS_V1Matches the source IP address of a request to the IP ranges supplied in config.
- SrcIps V1 
- SRC_IPS_V1Matches the source IP address of a request to the IP ranges supplied in config.
- SRC_IPS_V1
- SRC_IPS_V1Matches the source IP address of a request to the IP ranges supplied in config.
- "SRC_IPS_V1"
- SRC_IPS_V1Matches the source IP address of a request to the IP ranges supplied in config.
SecurityPolicyRuleNetworkMatcher, SecurityPolicyRuleNetworkMatcherArgs          
- DestIp List<string>Ranges 
- Destination IPv4/IPv6 addresses or CIDR prefixes, in standard text format.
- DestPorts List<string>
- Destination port numbers for TCP/UDP/SCTP. Each element can be a 16-bit unsigned decimal number (e.g. "80") or range (e.g. "0-1023").
- IpProtocols List<string>
- IPv4 protocol / IPv6 next header (after extension headers). Each element can be an 8-bit unsigned decimal number (e.g. "6"), range (e.g. "253-254"), or one of the following protocol names: "tcp", "udp", "icmp", "esp", "ah", "ipip", or "sctp".
- SrcAsns List<int>
- BGP Autonomous System Number associated with the source IP address.
- SrcIp List<string>Ranges 
- Source IPv4/IPv6 addresses or CIDR prefixes, in standard text format.
- SrcPorts List<string>
- Source port numbers for TCP/UDP/SCTP. Each element can be a 16-bit unsigned decimal number (e.g. "80") or range (e.g. "0-1023").
- SrcRegion List<string>Codes 
- Two-letter ISO 3166-1 alpha-2 country code associated with the source IP address.
- UserDefined List<Pulumi.Fields Google Native. Compute. V1. Inputs. Security Policy Rule Network Matcher User Defined Field Match> 
- User-defined fields. Each element names a defined field and lists the matching values for that field.
- DestIp []stringRanges 
- Destination IPv4/IPv6 addresses or CIDR prefixes, in standard text format.
- DestPorts []string
- Destination port numbers for TCP/UDP/SCTP. Each element can be a 16-bit unsigned decimal number (e.g. "80") or range (e.g. "0-1023").
- IpProtocols []string
- IPv4 protocol / IPv6 next header (after extension headers). Each element can be an 8-bit unsigned decimal number (e.g. "6"), range (e.g. "253-254"), or one of the following protocol names: "tcp", "udp", "icmp", "esp", "ah", "ipip", or "sctp".
- SrcAsns []int
- BGP Autonomous System Number associated with the source IP address.
- SrcIp []stringRanges 
- Source IPv4/IPv6 addresses or CIDR prefixes, in standard text format.
- SrcPorts []string
- Source port numbers for TCP/UDP/SCTP. Each element can be a 16-bit unsigned decimal number (e.g. "80") or range (e.g. "0-1023").
- SrcRegion []stringCodes 
- Two-letter ISO 3166-1 alpha-2 country code associated with the source IP address.
- UserDefined []SecurityFields Policy Rule Network Matcher User Defined Field Match 
- User-defined fields. Each element names a defined field and lists the matching values for that field.
- destIp List<String>Ranges 
- Destination IPv4/IPv6 addresses or CIDR prefixes, in standard text format.
- destPorts List<String>
- Destination port numbers for TCP/UDP/SCTP. Each element can be a 16-bit unsigned decimal number (e.g. "80") or range (e.g. "0-1023").
- ipProtocols List<String>
- IPv4 protocol / IPv6 next header (after extension headers). Each element can be an 8-bit unsigned decimal number (e.g. "6"), range (e.g. "253-254"), or one of the following protocol names: "tcp", "udp", "icmp", "esp", "ah", "ipip", or "sctp".
- srcAsns List<Integer>
- BGP Autonomous System Number associated with the source IP address.
- srcIp List<String>Ranges 
- Source IPv4/IPv6 addresses or CIDR prefixes, in standard text format.
- srcPorts List<String>
- Source port numbers for TCP/UDP/SCTP. Each element can be a 16-bit unsigned decimal number (e.g. "80") or range (e.g. "0-1023").
- srcRegion List<String>Codes 
- Two-letter ISO 3166-1 alpha-2 country code associated with the source IP address.
- userDefined List<SecurityFields Policy Rule Network Matcher User Defined Field Match> 
- User-defined fields. Each element names a defined field and lists the matching values for that field.
- destIp string[]Ranges 
- Destination IPv4/IPv6 addresses or CIDR prefixes, in standard text format.
- destPorts string[]
- Destination port numbers for TCP/UDP/SCTP. Each element can be a 16-bit unsigned decimal number (e.g. "80") or range (e.g. "0-1023").
- ipProtocols string[]
- IPv4 protocol / IPv6 next header (after extension headers). Each element can be an 8-bit unsigned decimal number (e.g. "6"), range (e.g. "253-254"), or one of the following protocol names: "tcp", "udp", "icmp", "esp", "ah", "ipip", or "sctp".
- srcAsns number[]
- BGP Autonomous System Number associated with the source IP address.
- srcIp string[]Ranges 
- Source IPv4/IPv6 addresses or CIDR prefixes, in standard text format.
- srcPorts string[]
- Source port numbers for TCP/UDP/SCTP. Each element can be a 16-bit unsigned decimal number (e.g. "80") or range (e.g. "0-1023").
- srcRegion string[]Codes 
- Two-letter ISO 3166-1 alpha-2 country code associated with the source IP address.
- userDefined SecurityFields Policy Rule Network Matcher User Defined Field Match[] 
- User-defined fields. Each element names a defined field and lists the matching values for that field.
- dest_ip_ Sequence[str]ranges 
- Destination IPv4/IPv6 addresses or CIDR prefixes, in standard text format.
- dest_ports Sequence[str]
- Destination port numbers for TCP/UDP/SCTP. Each element can be a 16-bit unsigned decimal number (e.g. "80") or range (e.g. "0-1023").
- ip_protocols Sequence[str]
- IPv4 protocol / IPv6 next header (after extension headers). Each element can be an 8-bit unsigned decimal number (e.g. "6"), range (e.g. "253-254"), or one of the following protocol names: "tcp", "udp", "icmp", "esp", "ah", "ipip", or "sctp".
- src_asns Sequence[int]
- BGP Autonomous System Number associated with the source IP address.
- src_ip_ Sequence[str]ranges 
- Source IPv4/IPv6 addresses or CIDR prefixes, in standard text format.
- src_ports Sequence[str]
- Source port numbers for TCP/UDP/SCTP. Each element can be a 16-bit unsigned decimal number (e.g. "80") or range (e.g. "0-1023").
- src_region_ Sequence[str]codes 
- Two-letter ISO 3166-1 alpha-2 country code associated with the source IP address.
- user_defined_ Sequence[Securityfields Policy Rule Network Matcher User Defined Field Match] 
- User-defined fields. Each element names a defined field and lists the matching values for that field.
- destIp List<String>Ranges 
- Destination IPv4/IPv6 addresses or CIDR prefixes, in standard text format.
- destPorts List<String>
- Destination port numbers for TCP/UDP/SCTP. Each element can be a 16-bit unsigned decimal number (e.g. "80") or range (e.g. "0-1023").
- ipProtocols List<String>
- IPv4 protocol / IPv6 next header (after extension headers). Each element can be an 8-bit unsigned decimal number (e.g. "6"), range (e.g. "253-254"), or one of the following protocol names: "tcp", "udp", "icmp", "esp", "ah", "ipip", or "sctp".
- srcAsns List<Number>
- BGP Autonomous System Number associated with the source IP address.
- srcIp List<String>Ranges 
- Source IPv4/IPv6 addresses or CIDR prefixes, in standard text format.
- srcPorts List<String>
- Source port numbers for TCP/UDP/SCTP. Each element can be a 16-bit unsigned decimal number (e.g. "80") or range (e.g. "0-1023").
- srcRegion List<String>Codes 
- Two-letter ISO 3166-1 alpha-2 country code associated with the source IP address.
- userDefined List<Property Map>Fields 
- User-defined fields. Each element names a defined field and lists the matching values for that field.
SecurityPolicyRuleNetworkMatcherResponse, SecurityPolicyRuleNetworkMatcherResponseArgs            
- DestIp List<string>Ranges 
- Destination IPv4/IPv6 addresses or CIDR prefixes, in standard text format.
- DestPorts List<string>
- Destination port numbers for TCP/UDP/SCTP. Each element can be a 16-bit unsigned decimal number (e.g. "80") or range (e.g. "0-1023").
- IpProtocols List<string>
- IPv4 protocol / IPv6 next header (after extension headers). Each element can be an 8-bit unsigned decimal number (e.g. "6"), range (e.g. "253-254"), or one of the following protocol names: "tcp", "udp", "icmp", "esp", "ah", "ipip", or "sctp".
- SrcAsns List<int>
- BGP Autonomous System Number associated with the source IP address.
- SrcIp List<string>Ranges 
- Source IPv4/IPv6 addresses or CIDR prefixes, in standard text format.
- SrcPorts List<string>
- Source port numbers for TCP/UDP/SCTP. Each element can be a 16-bit unsigned decimal number (e.g. "80") or range (e.g. "0-1023").
- SrcRegion List<string>Codes 
- Two-letter ISO 3166-1 alpha-2 country code associated with the source IP address.
- UserDefined List<Pulumi.Fields Google Native. Compute. V1. Inputs. Security Policy Rule Network Matcher User Defined Field Match Response> 
- User-defined fields. Each element names a defined field and lists the matching values for that field.
- DestIp []stringRanges 
- Destination IPv4/IPv6 addresses or CIDR prefixes, in standard text format.
- DestPorts []string
- Destination port numbers for TCP/UDP/SCTP. Each element can be a 16-bit unsigned decimal number (e.g. "80") or range (e.g. "0-1023").
- IpProtocols []string
- IPv4 protocol / IPv6 next header (after extension headers). Each element can be an 8-bit unsigned decimal number (e.g. "6"), range (e.g. "253-254"), or one of the following protocol names: "tcp", "udp", "icmp", "esp", "ah", "ipip", or "sctp".
- SrcAsns []int
- BGP Autonomous System Number associated with the source IP address.
- SrcIp []stringRanges 
- Source IPv4/IPv6 addresses or CIDR prefixes, in standard text format.
- SrcPorts []string
- Source port numbers for TCP/UDP/SCTP. Each element can be a 16-bit unsigned decimal number (e.g. "80") or range (e.g. "0-1023").
- SrcRegion []stringCodes 
- Two-letter ISO 3166-1 alpha-2 country code associated with the source IP address.
- UserDefined []SecurityFields Policy Rule Network Matcher User Defined Field Match Response 
- User-defined fields. Each element names a defined field and lists the matching values for that field.
- destIp List<String>Ranges 
- Destination IPv4/IPv6 addresses or CIDR prefixes, in standard text format.
- destPorts List<String>
- Destination port numbers for TCP/UDP/SCTP. Each element can be a 16-bit unsigned decimal number (e.g. "80") or range (e.g. "0-1023").
- ipProtocols List<String>
- IPv4 protocol / IPv6 next header (after extension headers). Each element can be an 8-bit unsigned decimal number (e.g. "6"), range (e.g. "253-254"), or one of the following protocol names: "tcp", "udp", "icmp", "esp", "ah", "ipip", or "sctp".
- srcAsns List<Integer>
- BGP Autonomous System Number associated with the source IP address.
- srcIp List<String>Ranges 
- Source IPv4/IPv6 addresses or CIDR prefixes, in standard text format.
- srcPorts List<String>
- Source port numbers for TCP/UDP/SCTP. Each element can be a 16-bit unsigned decimal number (e.g. "80") or range (e.g. "0-1023").
- srcRegion List<String>Codes 
- Two-letter ISO 3166-1 alpha-2 country code associated with the source IP address.
- userDefined List<SecurityFields Policy Rule Network Matcher User Defined Field Match Response> 
- User-defined fields. Each element names a defined field and lists the matching values for that field.
- destIp string[]Ranges 
- Destination IPv4/IPv6 addresses or CIDR prefixes, in standard text format.
- destPorts string[]
- Destination port numbers for TCP/UDP/SCTP. Each element can be a 16-bit unsigned decimal number (e.g. "80") or range (e.g. "0-1023").
- ipProtocols string[]
- IPv4 protocol / IPv6 next header (after extension headers). Each element can be an 8-bit unsigned decimal number (e.g. "6"), range (e.g. "253-254"), or one of the following protocol names: "tcp", "udp", "icmp", "esp", "ah", "ipip", or "sctp".
- srcAsns number[]
- BGP Autonomous System Number associated with the source IP address.
- srcIp string[]Ranges 
- Source IPv4/IPv6 addresses or CIDR prefixes, in standard text format.
- srcPorts string[]
- Source port numbers for TCP/UDP/SCTP. Each element can be a 16-bit unsigned decimal number (e.g. "80") or range (e.g. "0-1023").
- srcRegion string[]Codes 
- Two-letter ISO 3166-1 alpha-2 country code associated with the source IP address.
- userDefined SecurityFields Policy Rule Network Matcher User Defined Field Match Response[] 
- User-defined fields. Each element names a defined field and lists the matching values for that field.
- dest_ip_ Sequence[str]ranges 
- Destination IPv4/IPv6 addresses or CIDR prefixes, in standard text format.
- dest_ports Sequence[str]
- Destination port numbers for TCP/UDP/SCTP. Each element can be a 16-bit unsigned decimal number (e.g. "80") or range (e.g. "0-1023").
- ip_protocols Sequence[str]
- IPv4 protocol / IPv6 next header (after extension headers). Each element can be an 8-bit unsigned decimal number (e.g. "6"), range (e.g. "253-254"), or one of the following protocol names: "tcp", "udp", "icmp", "esp", "ah", "ipip", or "sctp".
- src_asns Sequence[int]
- BGP Autonomous System Number associated with the source IP address.
- src_ip_ Sequence[str]ranges 
- Source IPv4/IPv6 addresses or CIDR prefixes, in standard text format.
- src_ports Sequence[str]
- Source port numbers for TCP/UDP/SCTP. Each element can be a 16-bit unsigned decimal number (e.g. "80") or range (e.g. "0-1023").
- src_region_ Sequence[str]codes 
- Two-letter ISO 3166-1 alpha-2 country code associated with the source IP address.
- user_defined_ Sequence[Securityfields Policy Rule Network Matcher User Defined Field Match Response] 
- User-defined fields. Each element names a defined field and lists the matching values for that field.
- destIp List<String>Ranges 
- Destination IPv4/IPv6 addresses or CIDR prefixes, in standard text format.
- destPorts List<String>
- Destination port numbers for TCP/UDP/SCTP. Each element can be a 16-bit unsigned decimal number (e.g. "80") or range (e.g. "0-1023").
- ipProtocols List<String>
- IPv4 protocol / IPv6 next header (after extension headers). Each element can be an 8-bit unsigned decimal number (e.g. "6"), range (e.g. "253-254"), or one of the following protocol names: "tcp", "udp", "icmp", "esp", "ah", "ipip", or "sctp".
- srcAsns List<Number>
- BGP Autonomous System Number associated with the source IP address.
- srcIp List<String>Ranges 
- Source IPv4/IPv6 addresses or CIDR prefixes, in standard text format.
- srcPorts List<String>
- Source port numbers for TCP/UDP/SCTP. Each element can be a 16-bit unsigned decimal number (e.g. "80") or range (e.g. "0-1023").
- srcRegion List<String>Codes 
- Two-letter ISO 3166-1 alpha-2 country code associated with the source IP address.
- userDefined List<Property Map>Fields 
- User-defined fields. Each element names a defined field and lists the matching values for that field.
SecurityPolicyRuleNetworkMatcherUserDefinedFieldMatch, SecurityPolicyRuleNetworkMatcherUserDefinedFieldMatchArgs                  
SecurityPolicyRuleNetworkMatcherUserDefinedFieldMatchResponse, SecurityPolicyRuleNetworkMatcherUserDefinedFieldMatchResponseArgs                    
SecurityPolicyRulePreconfiguredWafConfig, SecurityPolicyRulePreconfiguredWafConfigArgs            
- Exclusions
List<Pulumi.Google Native. Compute. V1. Inputs. Security Policy Rule Preconfigured Waf Config Exclusion> 
- A list of exclusions to apply during preconfigured WAF evaluation.
- Exclusions
[]SecurityPolicy Rule Preconfigured Waf Config Exclusion 
- A list of exclusions to apply during preconfigured WAF evaluation.
- exclusions
List<SecurityPolicy Rule Preconfigured Waf Config Exclusion> 
- A list of exclusions to apply during preconfigured WAF evaluation.
- exclusions
SecurityPolicy Rule Preconfigured Waf Config Exclusion[] 
- A list of exclusions to apply during preconfigured WAF evaluation.
- exclusions
Sequence[SecurityPolicy Rule Preconfigured Waf Config Exclusion] 
- A list of exclusions to apply during preconfigured WAF evaluation.
- exclusions List<Property Map>
- A list of exclusions to apply during preconfigured WAF evaluation.
SecurityPolicyRulePreconfiguredWafConfigExclusion, SecurityPolicyRulePreconfiguredWafConfigExclusionArgs              
- 
List<Pulumi.Google Native. Compute. V1. Inputs. Security Policy Rule Preconfigured Waf Config Exclusion Field Params> 
- A list of request cookie names whose value will be excluded from inspection during preconfigured WAF evaluation.
- RequestHeaders List<Pulumi.To Exclude Google Native. Compute. V1. Inputs. Security Policy Rule Preconfigured Waf Config Exclusion Field Params> 
- A list of request header names whose value will be excluded from inspection during preconfigured WAF evaluation.
- RequestQuery List<Pulumi.Params To Exclude Google Native. Compute. V1. Inputs. Security Policy Rule Preconfigured Waf Config Exclusion Field Params> 
- A list of request query parameter names whose value will be excluded from inspection during preconfigured WAF evaluation. Note that the parameter can be in the query string or in the POST body.
- RequestUris List<Pulumi.To Exclude Google Native. Compute. V1. Inputs. Security Policy Rule Preconfigured Waf Config Exclusion Field Params> 
- A list of request URIs from the request line to be excluded from inspection during preconfigured WAF evaluation. When specifying this field, the query or fragment part should be excluded.
- TargetRule List<string>Ids 
- A list of target rule IDs under the WAF rule set to apply the preconfigured WAF exclusion. If omitted, it refers to all the rule IDs under the WAF rule set.
- TargetRule stringSet 
- Target WAF rule set to apply the preconfigured WAF exclusion.
- 
[]SecurityPolicy Rule Preconfigured Waf Config Exclusion Field Params 
- A list of request cookie names whose value will be excluded from inspection during preconfigured WAF evaluation.
- RequestHeaders []SecurityTo Exclude Policy Rule Preconfigured Waf Config Exclusion Field Params 
- A list of request header names whose value will be excluded from inspection during preconfigured WAF evaluation.
- RequestQuery []SecurityParams To Exclude Policy Rule Preconfigured Waf Config Exclusion Field Params 
- A list of request query parameter names whose value will be excluded from inspection during preconfigured WAF evaluation. Note that the parameter can be in the query string or in the POST body.
- RequestUris []SecurityTo Exclude Policy Rule Preconfigured Waf Config Exclusion Field Params 
- A list of request URIs from the request line to be excluded from inspection during preconfigured WAF evaluation. When specifying this field, the query or fragment part should be excluded.
- TargetRule []stringIds 
- A list of target rule IDs under the WAF rule set to apply the preconfigured WAF exclusion. If omitted, it refers to all the rule IDs under the WAF rule set.
- TargetRule stringSet 
- Target WAF rule set to apply the preconfigured WAF exclusion.
- 
List<SecurityPolicy Rule Preconfigured Waf Config Exclusion Field Params> 
- A list of request cookie names whose value will be excluded from inspection during preconfigured WAF evaluation.
- requestHeaders List<SecurityTo Exclude Policy Rule Preconfigured Waf Config Exclusion Field Params> 
- A list of request header names whose value will be excluded from inspection during preconfigured WAF evaluation.
- requestQuery List<SecurityParams To Exclude Policy Rule Preconfigured Waf Config Exclusion Field Params> 
- A list of request query parameter names whose value will be excluded from inspection during preconfigured WAF evaluation. Note that the parameter can be in the query string or in the POST body.
- requestUris List<SecurityTo Exclude Policy Rule Preconfigured Waf Config Exclusion Field Params> 
- A list of request URIs from the request line to be excluded from inspection during preconfigured WAF evaluation. When specifying this field, the query or fragment part should be excluded.
- targetRule List<String>Ids 
- A list of target rule IDs under the WAF rule set to apply the preconfigured WAF exclusion. If omitted, it refers to all the rule IDs under the WAF rule set.
- targetRule StringSet 
- Target WAF rule set to apply the preconfigured WAF exclusion.
- 
SecurityPolicy Rule Preconfigured Waf Config Exclusion Field Params[] 
- A list of request cookie names whose value will be excluded from inspection during preconfigured WAF evaluation.
- requestHeaders SecurityTo Exclude Policy Rule Preconfigured Waf Config Exclusion Field Params[] 
- A list of request header names whose value will be excluded from inspection during preconfigured WAF evaluation.
- requestQuery SecurityParams To Exclude Policy Rule Preconfigured Waf Config Exclusion Field Params[] 
- A list of request query parameter names whose value will be excluded from inspection during preconfigured WAF evaluation. Note that the parameter can be in the query string or in the POST body.
- requestUris SecurityTo Exclude Policy Rule Preconfigured Waf Config Exclusion Field Params[] 
- A list of request URIs from the request line to be excluded from inspection during preconfigured WAF evaluation. When specifying this field, the query or fragment part should be excluded.
- targetRule string[]Ids 
- A list of target rule IDs under the WAF rule set to apply the preconfigured WAF exclusion. If omitted, it refers to all the rule IDs under the WAF rule set.
- targetRule stringSet 
- Target WAF rule set to apply the preconfigured WAF exclusion.
- 
Sequence[SecurityPolicy Rule Preconfigured Waf Config Exclusion Field Params] 
- A list of request cookie names whose value will be excluded from inspection during preconfigured WAF evaluation.
- request_headers_ Sequence[Securityto_ exclude Policy Rule Preconfigured Waf Config Exclusion Field Params] 
- A list of request header names whose value will be excluded from inspection during preconfigured WAF evaluation.
- request_query_ Sequence[Securityparams_ to_ exclude Policy Rule Preconfigured Waf Config Exclusion Field Params] 
- A list of request query parameter names whose value will be excluded from inspection during preconfigured WAF evaluation. Note that the parameter can be in the query string or in the POST body.
- request_uris_ Sequence[Securityto_ exclude Policy Rule Preconfigured Waf Config Exclusion Field Params] 
- A list of request URIs from the request line to be excluded from inspection during preconfigured WAF evaluation. When specifying this field, the query or fragment part should be excluded.
- target_rule_ Sequence[str]ids 
- A list of target rule IDs under the WAF rule set to apply the preconfigured WAF exclusion. If omitted, it refers to all the rule IDs under the WAF rule set.
- target_rule_ strset 
- Target WAF rule set to apply the preconfigured WAF exclusion.
- List<Property Map>
- A list of request cookie names whose value will be excluded from inspection during preconfigured WAF evaluation.
- requestHeaders List<Property Map>To Exclude 
- A list of request header names whose value will be excluded from inspection during preconfigured WAF evaluation.
- requestQuery List<Property Map>Params To Exclude 
- A list of request query parameter names whose value will be excluded from inspection during preconfigured WAF evaluation. Note that the parameter can be in the query string or in the POST body.
- requestUris List<Property Map>To Exclude 
- A list of request URIs from the request line to be excluded from inspection during preconfigured WAF evaluation. When specifying this field, the query or fragment part should be excluded.
- targetRule List<String>Ids 
- A list of target rule IDs under the WAF rule set to apply the preconfigured WAF exclusion. If omitted, it refers to all the rule IDs under the WAF rule set.
- targetRule StringSet 
- Target WAF rule set to apply the preconfigured WAF exclusion.
SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParams, SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParamsArgs                  
- Op
Pulumi.Google Native. Compute. V1. Security Policy Rule Preconfigured Waf Config Exclusion Field Params Op 
- The match operator for the field.
- Val string
- The value of the field.
- Op
SecurityPolicy Rule Preconfigured Waf Config Exclusion Field Params Op 
- The match operator for the field.
- Val string
- The value of the field.
- op
SecurityPolicy Rule Preconfigured Waf Config Exclusion Field Params Op 
- The match operator for the field.
- val String
- The value of the field.
- op
SecurityPolicy Rule Preconfigured Waf Config Exclusion Field Params Op 
- The match operator for the field.
- val string
- The value of the field.
- op
SecurityPolicy Rule Preconfigured Waf Config Exclusion Field Params Op 
- The match operator for the field.
- val str
- The value of the field.
- op "CONTAINS" | "ENDS_WITH" | "EQUALS" | "EQUALS_ANY" | "STARTS_WITH"
- The match operator for the field.
- val String
- The value of the field.
SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParamsOp, SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParamsOpArgs                    
- Contains
- CONTAINSThe operator matches if the field value contains the specified value.
- EndsWith 
- ENDS_WITHThe operator matches if the field value ends with the specified value.
- EqualsValue 
- EQUALSThe operator matches if the field value equals the specified value.
- EqualsAny 
- EQUALS_ANYThe operator matches if the field value is any value.
- StartsWith 
- STARTS_WITHThe operator matches if the field value starts with the specified value.
- SecurityPolicy Rule Preconfigured Waf Config Exclusion Field Params Op Contains 
- CONTAINSThe operator matches if the field value contains the specified value.
- SecurityPolicy Rule Preconfigured Waf Config Exclusion Field Params Op Ends With 
- ENDS_WITHThe operator matches if the field value ends with the specified value.
- SecurityPolicy Rule Preconfigured Waf Config Exclusion Field Params Op Equals 
- EQUALSThe operator matches if the field value equals the specified value.
- SecurityPolicy Rule Preconfigured Waf Config Exclusion Field Params Op Equals Any 
- EQUALS_ANYThe operator matches if the field value is any value.
- SecurityPolicy Rule Preconfigured Waf Config Exclusion Field Params Op Starts With 
- STARTS_WITHThe operator matches if the field value starts with the specified value.
- Contains
- CONTAINSThe operator matches if the field value contains the specified value.
- EndsWith 
- ENDS_WITHThe operator matches if the field value ends with the specified value.
- Equals
- EQUALSThe operator matches if the field value equals the specified value.
- EqualsAny 
- EQUALS_ANYThe operator matches if the field value is any value.
- StartsWith 
- STARTS_WITHThe operator matches if the field value starts with the specified value.
- Contains
- CONTAINSThe operator matches if the field value contains the specified value.
- EndsWith 
- ENDS_WITHThe operator matches if the field value ends with the specified value.
- Equals
- EQUALSThe operator matches if the field value equals the specified value.
- EqualsAny 
- EQUALS_ANYThe operator matches if the field value is any value.
- StartsWith 
- STARTS_WITHThe operator matches if the field value starts with the specified value.
- CONTAINS
- CONTAINSThe operator matches if the field value contains the specified value.
- ENDS_WITH
- ENDS_WITHThe operator matches if the field value ends with the specified value.
- EQUALS
- EQUALSThe operator matches if the field value equals the specified value.
- EQUALS_ANY
- EQUALS_ANYThe operator matches if the field value is any value.
- STARTS_WITH
- STARTS_WITHThe operator matches if the field value starts with the specified value.
- "CONTAINS"
- CONTAINSThe operator matches if the field value contains the specified value.
- "ENDS_WITH"
- ENDS_WITHThe operator matches if the field value ends with the specified value.
- "EQUALS"
- EQUALSThe operator matches if the field value equals the specified value.
- "EQUALS_ANY"
- EQUALS_ANYThe operator matches if the field value is any value.
- "STARTS_WITH"
- STARTS_WITHThe operator matches if the field value starts with the specified value.
SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParamsResponse, SecurityPolicyRulePreconfiguredWafConfigExclusionFieldParamsResponseArgs                    
SecurityPolicyRulePreconfiguredWafConfigExclusionResponse, SecurityPolicyRulePreconfiguredWafConfigExclusionResponseArgs                
- 
List<Pulumi.Google Native. Compute. V1. Inputs. Security Policy Rule Preconfigured Waf Config Exclusion Field Params Response> 
- A list of request cookie names whose value will be excluded from inspection during preconfigured WAF evaluation.
- RequestHeaders List<Pulumi.To Exclude Google Native. Compute. V1. Inputs. Security Policy Rule Preconfigured Waf Config Exclusion Field Params Response> 
- A list of request header names whose value will be excluded from inspection during preconfigured WAF evaluation.
- RequestQuery List<Pulumi.Params To Exclude Google Native. Compute. V1. Inputs. Security Policy Rule Preconfigured Waf Config Exclusion Field Params Response> 
- A list of request query parameter names whose value will be excluded from inspection during preconfigured WAF evaluation. Note that the parameter can be in the query string or in the POST body.
- RequestUris List<Pulumi.To Exclude Google Native. Compute. V1. Inputs. Security Policy Rule Preconfigured Waf Config Exclusion Field Params Response> 
- A list of request URIs from the request line to be excluded from inspection during preconfigured WAF evaluation. When specifying this field, the query or fragment part should be excluded.
- TargetRule List<string>Ids 
- A list of target rule IDs under the WAF rule set to apply the preconfigured WAF exclusion. If omitted, it refers to all the rule IDs under the WAF rule set.
- TargetRule stringSet 
- Target WAF rule set to apply the preconfigured WAF exclusion.
- 
[]SecurityPolicy Rule Preconfigured Waf Config Exclusion Field Params Response 
- A list of request cookie names whose value will be excluded from inspection during preconfigured WAF evaluation.
- RequestHeaders []SecurityTo Exclude Policy Rule Preconfigured Waf Config Exclusion Field Params Response 
- A list of request header names whose value will be excluded from inspection during preconfigured WAF evaluation.
- RequestQuery []SecurityParams To Exclude Policy Rule Preconfigured Waf Config Exclusion Field Params Response 
- A list of request query parameter names whose value will be excluded from inspection during preconfigured WAF evaluation. Note that the parameter can be in the query string or in the POST body.
- RequestUris []SecurityTo Exclude Policy Rule Preconfigured Waf Config Exclusion Field Params Response 
- A list of request URIs from the request line to be excluded from inspection during preconfigured WAF evaluation. When specifying this field, the query or fragment part should be excluded.
- TargetRule []stringIds 
- A list of target rule IDs under the WAF rule set to apply the preconfigured WAF exclusion. If omitted, it refers to all the rule IDs under the WAF rule set.
- TargetRule stringSet 
- Target WAF rule set to apply the preconfigured WAF exclusion.
- 
List<SecurityPolicy Rule Preconfigured Waf Config Exclusion Field Params Response> 
- A list of request cookie names whose value will be excluded from inspection during preconfigured WAF evaluation.
- requestHeaders List<SecurityTo Exclude Policy Rule Preconfigured Waf Config Exclusion Field Params Response> 
- A list of request header names whose value will be excluded from inspection during preconfigured WAF evaluation.
- requestQuery List<SecurityParams To Exclude Policy Rule Preconfigured Waf Config Exclusion Field Params Response> 
- A list of request query parameter names whose value will be excluded from inspection during preconfigured WAF evaluation. Note that the parameter can be in the query string or in the POST body.
- requestUris List<SecurityTo Exclude Policy Rule Preconfigured Waf Config Exclusion Field Params Response> 
- A list of request URIs from the request line to be excluded from inspection during preconfigured WAF evaluation. When specifying this field, the query or fragment part should be excluded.
- targetRule List<String>Ids 
- A list of target rule IDs under the WAF rule set to apply the preconfigured WAF exclusion. If omitted, it refers to all the rule IDs under the WAF rule set.
- targetRule StringSet 
- Target WAF rule set to apply the preconfigured WAF exclusion.
- 
SecurityPolicy Rule Preconfigured Waf Config Exclusion Field Params Response[] 
- A list of request cookie names whose value will be excluded from inspection during preconfigured WAF evaluation.
- requestHeaders SecurityTo Exclude Policy Rule Preconfigured Waf Config Exclusion Field Params Response[] 
- A list of request header names whose value will be excluded from inspection during preconfigured WAF evaluation.
- requestQuery SecurityParams To Exclude Policy Rule Preconfigured Waf Config Exclusion Field Params Response[] 
- A list of request query parameter names whose value will be excluded from inspection during preconfigured WAF evaluation. Note that the parameter can be in the query string or in the POST body.
- requestUris SecurityTo Exclude Policy Rule Preconfigured Waf Config Exclusion Field Params Response[] 
- A list of request URIs from the request line to be excluded from inspection during preconfigured WAF evaluation. When specifying this field, the query or fragment part should be excluded.
- targetRule string[]Ids 
- A list of target rule IDs under the WAF rule set to apply the preconfigured WAF exclusion. If omitted, it refers to all the rule IDs under the WAF rule set.
- targetRule stringSet 
- Target WAF rule set to apply the preconfigured WAF exclusion.
- 
Sequence[SecurityPolicy Rule Preconfigured Waf Config Exclusion Field Params Response] 
- A list of request cookie names whose value will be excluded from inspection during preconfigured WAF evaluation.
- request_headers_ Sequence[Securityto_ exclude Policy Rule Preconfigured Waf Config Exclusion Field Params Response] 
- A list of request header names whose value will be excluded from inspection during preconfigured WAF evaluation.
- request_query_ Sequence[Securityparams_ to_ exclude Policy Rule Preconfigured Waf Config Exclusion Field Params Response] 
- A list of request query parameter names whose value will be excluded from inspection during preconfigured WAF evaluation. Note that the parameter can be in the query string or in the POST body.
- request_uris_ Sequence[Securityto_ exclude Policy Rule Preconfigured Waf Config Exclusion Field Params Response] 
- A list of request URIs from the request line to be excluded from inspection during preconfigured WAF evaluation. When specifying this field, the query or fragment part should be excluded.
- target_rule_ Sequence[str]ids 
- A list of target rule IDs under the WAF rule set to apply the preconfigured WAF exclusion. If omitted, it refers to all the rule IDs under the WAF rule set.
- target_rule_ strset 
- Target WAF rule set to apply the preconfigured WAF exclusion.
- List<Property Map>
- A list of request cookie names whose value will be excluded from inspection during preconfigured WAF evaluation.
- requestHeaders List<Property Map>To Exclude 
- A list of request header names whose value will be excluded from inspection during preconfigured WAF evaluation.
- requestQuery List<Property Map>Params To Exclude 
- A list of request query parameter names whose value will be excluded from inspection during preconfigured WAF evaluation. Note that the parameter can be in the query string or in the POST body.
- requestUris List<Property Map>To Exclude 
- A list of request URIs from the request line to be excluded from inspection during preconfigured WAF evaluation. When specifying this field, the query or fragment part should be excluded.
- targetRule List<String>Ids 
- A list of target rule IDs under the WAF rule set to apply the preconfigured WAF exclusion. If omitted, it refers to all the rule IDs under the WAF rule set.
- targetRule StringSet 
- Target WAF rule set to apply the preconfigured WAF exclusion.
SecurityPolicyRulePreconfiguredWafConfigResponse, SecurityPolicyRulePreconfiguredWafConfigResponseArgs              
- Exclusions
List<Pulumi.Google Native. Compute. V1. Inputs. Security Policy Rule Preconfigured Waf Config Exclusion Response> 
- A list of exclusions to apply during preconfigured WAF evaluation.
- Exclusions
[]SecurityPolicy Rule Preconfigured Waf Config Exclusion Response 
- A list of exclusions to apply during preconfigured WAF evaluation.
- exclusions
List<SecurityPolicy Rule Preconfigured Waf Config Exclusion Response> 
- A list of exclusions to apply during preconfigured WAF evaluation.
- exclusions
SecurityPolicy Rule Preconfigured Waf Config Exclusion Response[] 
- A list of exclusions to apply during preconfigured WAF evaluation.
- exclusions
Sequence[SecurityPolicy Rule Preconfigured Waf Config Exclusion Response] 
- A list of exclusions to apply during preconfigured WAF evaluation.
- exclusions List<Property Map>
- A list of exclusions to apply during preconfigured WAF evaluation.
SecurityPolicyRuleRateLimitOptions, SecurityPolicyRuleRateLimitOptionsArgs            
- BanDuration intSec 
- Can only be specified if the action for the rule is "rate_based_ban". If specified, determines the time (in seconds) the traffic will continue to be banned by the rate limit after the rate falls below the threshold.
- BanThreshold Pulumi.Google Native. Compute. V1. Inputs. Security Policy Rule Rate Limit Options Threshold 
- Can only be specified if the action for the rule is "rate_based_ban". If specified, the key will be banned for the configured 'ban_duration_sec' when the number of requests that exceed the 'rate_limit_threshold' also exceed this 'ban_threshold'.
- ConformAction string
- Action to take for requests that are under the configured rate limit threshold. Valid option is "allow" only.
- EnforceOn Pulumi.Key Google Native. Compute. V1. Security Policy Rule Rate Limit Options Enforce On Key 
- Determines the key to enforce the rate_limit_threshold on. Possible values are: - ALL: A single rate limit threshold is applied to all the requests matching this rule. This is the default value if "enforceOnKey" is not configured. - IP: The source IP address of the request is the key. Each IP has this limit enforced separately. - HTTP_HEADER: The value of the HTTP header whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the header value. If no such header is present in the request, the key type defaults to ALL. - XFF_IP: The first IP address (i.e. the originating client IP address) specified in the list of IPs under X-Forwarded-For HTTP header. If no such header is present or the value is not a valid IP, the key defaults to the source IP address of the request i.e. key type IP. - HTTP_COOKIE: The value of the HTTP cookie whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the cookie value. If no such cookie is present in the request, the key type defaults to ALL. - HTTP_PATH: The URL path of the HTTP request. The key value is truncated to the first 128 bytes. - SNI: Server name indication in the TLS session of the HTTPS request. The key value is truncated to the first 128 bytes. The key type defaults to ALL on a HTTP session. - REGION_CODE: The country/region from which the request originates.
- EnforceOn List<Pulumi.Key Configs Google Native. Compute. V1. Inputs. Security Policy Rule Rate Limit Options Enforce On Key Config> 
- If specified, any combination of values of enforce_on_key_type/enforce_on_key_name is treated as the key on which ratelimit threshold/action is enforced. You can specify up to 3 enforce_on_key_configs. If enforce_on_key_configs is specified, enforce_on_key must not be specified.
- EnforceOn stringKey Name 
- Rate limit key name applicable only for the following key types: HTTP_HEADER -- Name of the HTTP header whose value is taken as the key value. HTTP_COOKIE -- Name of the HTTP cookie whose value is taken as the key value.
- ExceedAction string
- Action to take for requests that are above the configured rate limit threshold, to either deny with a specified HTTP response code, or redirect to a different endpoint. Valid options are deny(STATUS), where valid values forSTATUSare 403, 404, 429, and 502, andredirect, where the redirect parameters come fromexceedRedirectOptionsbelow. Theredirectaction is only supported in Global Security Policies of type CLOUD_ARMOR.
- ExceedRedirect Pulumi.Options Google Native. Compute. V1. Inputs. Security Policy Rule Redirect Options 
- Parameters defining the redirect action that is used as the exceed action. Cannot be specified if the exceed action is not redirect. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- RateLimit Pulumi.Threshold Google Native. Compute. V1. Inputs. Security Policy Rule Rate Limit Options Threshold 
- Threshold at which to begin ratelimiting.
- BanDuration intSec 
- Can only be specified if the action for the rule is "rate_based_ban". If specified, determines the time (in seconds) the traffic will continue to be banned by the rate limit after the rate falls below the threshold.
- BanThreshold SecurityPolicy Rule Rate Limit Options Threshold 
- Can only be specified if the action for the rule is "rate_based_ban". If specified, the key will be banned for the configured 'ban_duration_sec' when the number of requests that exceed the 'rate_limit_threshold' also exceed this 'ban_threshold'.
- ConformAction string
- Action to take for requests that are under the configured rate limit threshold. Valid option is "allow" only.
- EnforceOn SecurityKey Policy Rule Rate Limit Options Enforce On Key 
- Determines the key to enforce the rate_limit_threshold on. Possible values are: - ALL: A single rate limit threshold is applied to all the requests matching this rule. This is the default value if "enforceOnKey" is not configured. - IP: The source IP address of the request is the key. Each IP has this limit enforced separately. - HTTP_HEADER: The value of the HTTP header whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the header value. If no such header is present in the request, the key type defaults to ALL. - XFF_IP: The first IP address (i.e. the originating client IP address) specified in the list of IPs under X-Forwarded-For HTTP header. If no such header is present or the value is not a valid IP, the key defaults to the source IP address of the request i.e. key type IP. - HTTP_COOKIE: The value of the HTTP cookie whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the cookie value. If no such cookie is present in the request, the key type defaults to ALL. - HTTP_PATH: The URL path of the HTTP request. The key value is truncated to the first 128 bytes. - SNI: Server name indication in the TLS session of the HTTPS request. The key value is truncated to the first 128 bytes. The key type defaults to ALL on a HTTP session. - REGION_CODE: The country/region from which the request originates.
- EnforceOn []SecurityKey Configs Policy Rule Rate Limit Options Enforce On Key Config 
- If specified, any combination of values of enforce_on_key_type/enforce_on_key_name is treated as the key on which ratelimit threshold/action is enforced. You can specify up to 3 enforce_on_key_configs. If enforce_on_key_configs is specified, enforce_on_key must not be specified.
- EnforceOn stringKey Name 
- Rate limit key name applicable only for the following key types: HTTP_HEADER -- Name of the HTTP header whose value is taken as the key value. HTTP_COOKIE -- Name of the HTTP cookie whose value is taken as the key value.
- ExceedAction string
- Action to take for requests that are above the configured rate limit threshold, to either deny with a specified HTTP response code, or redirect to a different endpoint. Valid options are deny(STATUS), where valid values forSTATUSare 403, 404, 429, and 502, andredirect, where the redirect parameters come fromexceedRedirectOptionsbelow. Theredirectaction is only supported in Global Security Policies of type CLOUD_ARMOR.
- ExceedRedirect SecurityOptions Policy Rule Redirect Options 
- Parameters defining the redirect action that is used as the exceed action. Cannot be specified if the exceed action is not redirect. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- RateLimit SecurityThreshold Policy Rule Rate Limit Options Threshold 
- Threshold at which to begin ratelimiting.
- banDuration IntegerSec 
- Can only be specified if the action for the rule is "rate_based_ban". If specified, determines the time (in seconds) the traffic will continue to be banned by the rate limit after the rate falls below the threshold.
- banThreshold SecurityPolicy Rule Rate Limit Options Threshold 
- Can only be specified if the action for the rule is "rate_based_ban". If specified, the key will be banned for the configured 'ban_duration_sec' when the number of requests that exceed the 'rate_limit_threshold' also exceed this 'ban_threshold'.
- conformAction String
- Action to take for requests that are under the configured rate limit threshold. Valid option is "allow" only.
- enforceOn SecurityKey Policy Rule Rate Limit Options Enforce On Key 
- Determines the key to enforce the rate_limit_threshold on. Possible values are: - ALL: A single rate limit threshold is applied to all the requests matching this rule. This is the default value if "enforceOnKey" is not configured. - IP: The source IP address of the request is the key. Each IP has this limit enforced separately. - HTTP_HEADER: The value of the HTTP header whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the header value. If no such header is present in the request, the key type defaults to ALL. - XFF_IP: The first IP address (i.e. the originating client IP address) specified in the list of IPs under X-Forwarded-For HTTP header. If no such header is present or the value is not a valid IP, the key defaults to the source IP address of the request i.e. key type IP. - HTTP_COOKIE: The value of the HTTP cookie whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the cookie value. If no such cookie is present in the request, the key type defaults to ALL. - HTTP_PATH: The URL path of the HTTP request. The key value is truncated to the first 128 bytes. - SNI: Server name indication in the TLS session of the HTTPS request. The key value is truncated to the first 128 bytes. The key type defaults to ALL on a HTTP session. - REGION_CODE: The country/region from which the request originates.
- enforceOn List<SecurityKey Configs Policy Rule Rate Limit Options Enforce On Key Config> 
- If specified, any combination of values of enforce_on_key_type/enforce_on_key_name is treated as the key on which ratelimit threshold/action is enforced. You can specify up to 3 enforce_on_key_configs. If enforce_on_key_configs is specified, enforce_on_key must not be specified.
- enforceOn StringKey Name 
- Rate limit key name applicable only for the following key types: HTTP_HEADER -- Name of the HTTP header whose value is taken as the key value. HTTP_COOKIE -- Name of the HTTP cookie whose value is taken as the key value.
- exceedAction String
- Action to take for requests that are above the configured rate limit threshold, to either deny with a specified HTTP response code, or redirect to a different endpoint. Valid options are deny(STATUS), where valid values forSTATUSare 403, 404, 429, and 502, andredirect, where the redirect parameters come fromexceedRedirectOptionsbelow. Theredirectaction is only supported in Global Security Policies of type CLOUD_ARMOR.
- exceedRedirect SecurityOptions Policy Rule Redirect Options 
- Parameters defining the redirect action that is used as the exceed action. Cannot be specified if the exceed action is not redirect. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- rateLimit SecurityThreshold Policy Rule Rate Limit Options Threshold 
- Threshold at which to begin ratelimiting.
- banDuration numberSec 
- Can only be specified if the action for the rule is "rate_based_ban". If specified, determines the time (in seconds) the traffic will continue to be banned by the rate limit after the rate falls below the threshold.
- banThreshold SecurityPolicy Rule Rate Limit Options Threshold 
- Can only be specified if the action for the rule is "rate_based_ban". If specified, the key will be banned for the configured 'ban_duration_sec' when the number of requests that exceed the 'rate_limit_threshold' also exceed this 'ban_threshold'.
- conformAction string
- Action to take for requests that are under the configured rate limit threshold. Valid option is "allow" only.
- enforceOn SecurityKey Policy Rule Rate Limit Options Enforce On Key 
- Determines the key to enforce the rate_limit_threshold on. Possible values are: - ALL: A single rate limit threshold is applied to all the requests matching this rule. This is the default value if "enforceOnKey" is not configured. - IP: The source IP address of the request is the key. Each IP has this limit enforced separately. - HTTP_HEADER: The value of the HTTP header whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the header value. If no such header is present in the request, the key type defaults to ALL. - XFF_IP: The first IP address (i.e. the originating client IP address) specified in the list of IPs under X-Forwarded-For HTTP header. If no such header is present or the value is not a valid IP, the key defaults to the source IP address of the request i.e. key type IP. - HTTP_COOKIE: The value of the HTTP cookie whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the cookie value. If no such cookie is present in the request, the key type defaults to ALL. - HTTP_PATH: The URL path of the HTTP request. The key value is truncated to the first 128 bytes. - SNI: Server name indication in the TLS session of the HTTPS request. The key value is truncated to the first 128 bytes. The key type defaults to ALL on a HTTP session. - REGION_CODE: The country/region from which the request originates.
- enforceOn SecurityKey Configs Policy Rule Rate Limit Options Enforce On Key Config[] 
- If specified, any combination of values of enforce_on_key_type/enforce_on_key_name is treated as the key on which ratelimit threshold/action is enforced. You can specify up to 3 enforce_on_key_configs. If enforce_on_key_configs is specified, enforce_on_key must not be specified.
- enforceOn stringKey Name 
- Rate limit key name applicable only for the following key types: HTTP_HEADER -- Name of the HTTP header whose value is taken as the key value. HTTP_COOKIE -- Name of the HTTP cookie whose value is taken as the key value.
- exceedAction string
- Action to take for requests that are above the configured rate limit threshold, to either deny with a specified HTTP response code, or redirect to a different endpoint. Valid options are deny(STATUS), where valid values forSTATUSare 403, 404, 429, and 502, andredirect, where the redirect parameters come fromexceedRedirectOptionsbelow. Theredirectaction is only supported in Global Security Policies of type CLOUD_ARMOR.
- exceedRedirect SecurityOptions Policy Rule Redirect Options 
- Parameters defining the redirect action that is used as the exceed action. Cannot be specified if the exceed action is not redirect. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- rateLimit SecurityThreshold Policy Rule Rate Limit Options Threshold 
- Threshold at which to begin ratelimiting.
- ban_duration_ intsec 
- Can only be specified if the action for the rule is "rate_based_ban". If specified, determines the time (in seconds) the traffic will continue to be banned by the rate limit after the rate falls below the threshold.
- ban_threshold SecurityPolicy Rule Rate Limit Options Threshold 
- Can only be specified if the action for the rule is "rate_based_ban". If specified, the key will be banned for the configured 'ban_duration_sec' when the number of requests that exceed the 'rate_limit_threshold' also exceed this 'ban_threshold'.
- conform_action str
- Action to take for requests that are under the configured rate limit threshold. Valid option is "allow" only.
- enforce_on_ Securitykey Policy Rule Rate Limit Options Enforce On Key 
- Determines the key to enforce the rate_limit_threshold on. Possible values are: - ALL: A single rate limit threshold is applied to all the requests matching this rule. This is the default value if "enforceOnKey" is not configured. - IP: The source IP address of the request is the key. Each IP has this limit enforced separately. - HTTP_HEADER: The value of the HTTP header whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the header value. If no such header is present in the request, the key type defaults to ALL. - XFF_IP: The first IP address (i.e. the originating client IP address) specified in the list of IPs under X-Forwarded-For HTTP header. If no such header is present or the value is not a valid IP, the key defaults to the source IP address of the request i.e. key type IP. - HTTP_COOKIE: The value of the HTTP cookie whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the cookie value. If no such cookie is present in the request, the key type defaults to ALL. - HTTP_PATH: The URL path of the HTTP request. The key value is truncated to the first 128 bytes. - SNI: Server name indication in the TLS session of the HTTPS request. The key value is truncated to the first 128 bytes. The key type defaults to ALL on a HTTP session. - REGION_CODE: The country/region from which the request originates.
- enforce_on_ Sequence[Securitykey_ configs Policy Rule Rate Limit Options Enforce On Key Config] 
- If specified, any combination of values of enforce_on_key_type/enforce_on_key_name is treated as the key on which ratelimit threshold/action is enforced. You can specify up to 3 enforce_on_key_configs. If enforce_on_key_configs is specified, enforce_on_key must not be specified.
- enforce_on_ strkey_ name 
- Rate limit key name applicable only for the following key types: HTTP_HEADER -- Name of the HTTP header whose value is taken as the key value. HTTP_COOKIE -- Name of the HTTP cookie whose value is taken as the key value.
- exceed_action str
- Action to take for requests that are above the configured rate limit threshold, to either deny with a specified HTTP response code, or redirect to a different endpoint. Valid options are deny(STATUS), where valid values forSTATUSare 403, 404, 429, and 502, andredirect, where the redirect parameters come fromexceedRedirectOptionsbelow. Theredirectaction is only supported in Global Security Policies of type CLOUD_ARMOR.
- exceed_redirect_ Securityoptions Policy Rule Redirect Options 
- Parameters defining the redirect action that is used as the exceed action. Cannot be specified if the exceed action is not redirect. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- rate_limit_ Securitythreshold Policy Rule Rate Limit Options Threshold 
- Threshold at which to begin ratelimiting.
- banDuration NumberSec 
- Can only be specified if the action for the rule is "rate_based_ban". If specified, determines the time (in seconds) the traffic will continue to be banned by the rate limit after the rate falls below the threshold.
- banThreshold Property Map
- Can only be specified if the action for the rule is "rate_based_ban". If specified, the key will be banned for the configured 'ban_duration_sec' when the number of requests that exceed the 'rate_limit_threshold' also exceed this 'ban_threshold'.
- conformAction String
- Action to take for requests that are under the configured rate limit threshold. Valid option is "allow" only.
- enforceOn "ALL" | "HTTP_COOKIE" | "HTTP_HEADER" | "HTTP_PATH" | "IP" | "REGION_CODE" | "SNI" | "XFF_IP"Key 
- Determines the key to enforce the rate_limit_threshold on. Possible values are: - ALL: A single rate limit threshold is applied to all the requests matching this rule. This is the default value if "enforceOnKey" is not configured. - IP: The source IP address of the request is the key. Each IP has this limit enforced separately. - HTTP_HEADER: The value of the HTTP header whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the header value. If no such header is present in the request, the key type defaults to ALL. - XFF_IP: The first IP address (i.e. the originating client IP address) specified in the list of IPs under X-Forwarded-For HTTP header. If no such header is present or the value is not a valid IP, the key defaults to the source IP address of the request i.e. key type IP. - HTTP_COOKIE: The value of the HTTP cookie whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the cookie value. If no such cookie is present in the request, the key type defaults to ALL. - HTTP_PATH: The URL path of the HTTP request. The key value is truncated to the first 128 bytes. - SNI: Server name indication in the TLS session of the HTTPS request. The key value is truncated to the first 128 bytes. The key type defaults to ALL on a HTTP session. - REGION_CODE: The country/region from which the request originates.
- enforceOn List<Property Map>Key Configs 
- If specified, any combination of values of enforce_on_key_type/enforce_on_key_name is treated as the key on which ratelimit threshold/action is enforced. You can specify up to 3 enforce_on_key_configs. If enforce_on_key_configs is specified, enforce_on_key must not be specified.
- enforceOn StringKey Name 
- Rate limit key name applicable only for the following key types: HTTP_HEADER -- Name of the HTTP header whose value is taken as the key value. HTTP_COOKIE -- Name of the HTTP cookie whose value is taken as the key value.
- exceedAction String
- Action to take for requests that are above the configured rate limit threshold, to either deny with a specified HTTP response code, or redirect to a different endpoint. Valid options are deny(STATUS), where valid values forSTATUSare 403, 404, 429, and 502, andredirect, where the redirect parameters come fromexceedRedirectOptionsbelow. Theredirectaction is only supported in Global Security Policies of type CLOUD_ARMOR.
- exceedRedirect Property MapOptions 
- Parameters defining the redirect action that is used as the exceed action. Cannot be specified if the exceed action is not redirect. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- rateLimit Property MapThreshold 
- Threshold at which to begin ratelimiting.
SecurityPolicyRuleRateLimitOptionsEnforceOnKey, SecurityPolicyRuleRateLimitOptionsEnforceOnKeyArgs                  
- All
- ALL
- HttpCookie 
- HTTP_COOKIE
- HttpHeader 
- HTTP_HEADER
- HttpPath 
- HTTP_PATH
- Ip
- IP
- RegionCode 
- REGION_CODE
- Sni
- SNI
- XffIp 
- XFF_IP
- SecurityPolicy Rule Rate Limit Options Enforce On Key All 
- ALL
- SecurityPolicy Rule Rate Limit Options Enforce On Key Http Cookie 
- HTTP_COOKIE
- SecurityPolicy Rule Rate Limit Options Enforce On Key Http Header 
- HTTP_HEADER
- SecurityPolicy Rule Rate Limit Options Enforce On Key Http Path 
- HTTP_PATH
- SecurityPolicy Rule Rate Limit Options Enforce On Key Ip 
- IP
- SecurityPolicy Rule Rate Limit Options Enforce On Key Region Code 
- REGION_CODE
- SecurityPolicy Rule Rate Limit Options Enforce On Key Sni 
- SNI
- SecurityPolicy Rule Rate Limit Options Enforce On Key Xff Ip 
- XFF_IP
- All
- ALL
- HttpCookie 
- HTTP_COOKIE
- HttpHeader 
- HTTP_HEADER
- HttpPath 
- HTTP_PATH
- Ip
- IP
- RegionCode 
- REGION_CODE
- Sni
- SNI
- XffIp 
- XFF_IP
- All
- ALL
- HttpCookie 
- HTTP_COOKIE
- HttpHeader 
- HTTP_HEADER
- HttpPath 
- HTTP_PATH
- Ip
- IP
- RegionCode 
- REGION_CODE
- Sni
- SNI
- XffIp 
- XFF_IP
- ALL
- ALL
- HTTP_COOKIE
- HTTP_COOKIE
- HTTP_HEADER
- HTTP_HEADER
- HTTP_PATH
- HTTP_PATH
- IP
- IP
- REGION_CODE
- REGION_CODE
- SNI
- SNI
- XFF_IP
- XFF_IP
- "ALL"
- ALL
- "HTTP_COOKIE"
- HTTP_COOKIE
- "HTTP_HEADER"
- HTTP_HEADER
- "HTTP_PATH"
- HTTP_PATH
- "IP"
- IP
- "REGION_CODE"
- REGION_CODE
- "SNI"
- SNI
- "XFF_IP"
- XFF_IP
SecurityPolicyRuleRateLimitOptionsEnforceOnKeyConfig, SecurityPolicyRuleRateLimitOptionsEnforceOnKeyConfigArgs                    
- EnforceOn stringKey Name 
- Rate limit key name applicable only for the following key types: HTTP_HEADER -- Name of the HTTP header whose value is taken as the key value. HTTP_COOKIE -- Name of the HTTP cookie whose value is taken as the key value.
- EnforceOn Pulumi.Key Type Google Native. Compute. V1. Security Policy Rule Rate Limit Options Enforce On Key Config Enforce On Key Type 
- Determines the key to enforce the rate_limit_threshold on. Possible values are: - ALL: A single rate limit threshold is applied to all the requests matching this rule. This is the default value if "enforceOnKeyConfigs" is not configured. - IP: The source IP address of the request is the key. Each IP has this limit enforced separately. - HTTP_HEADER: The value of the HTTP header whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the header value. If no such header is present in the request, the key type defaults to ALL. - XFF_IP: The first IP address (i.e. the originating client IP address) specified in the list of IPs under X-Forwarded-For HTTP header. If no such header is present or the value is not a valid IP, the key defaults to the source IP address of the request i.e. key type IP. - HTTP_COOKIE: The value of the HTTP cookie whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the cookie value. If no such cookie is present in the request, the key type defaults to ALL. - HTTP_PATH: The URL path of the HTTP request. The key value is truncated to the first 128 bytes. - SNI: Server name indication in the TLS session of the HTTPS request. The key value is truncated to the first 128 bytes. The key type defaults to ALL on a HTTP session. - REGION_CODE: The country/region from which the request originates.
- EnforceOn stringKey Name 
- Rate limit key name applicable only for the following key types: HTTP_HEADER -- Name of the HTTP header whose value is taken as the key value. HTTP_COOKIE -- Name of the HTTP cookie whose value is taken as the key value.
- EnforceOn SecurityKey Type Policy Rule Rate Limit Options Enforce On Key Config Enforce On Key Type 
- Determines the key to enforce the rate_limit_threshold on. Possible values are: - ALL: A single rate limit threshold is applied to all the requests matching this rule. This is the default value if "enforceOnKeyConfigs" is not configured. - IP: The source IP address of the request is the key. Each IP has this limit enforced separately. - HTTP_HEADER: The value of the HTTP header whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the header value. If no such header is present in the request, the key type defaults to ALL. - XFF_IP: The first IP address (i.e. the originating client IP address) specified in the list of IPs under X-Forwarded-For HTTP header. If no such header is present or the value is not a valid IP, the key defaults to the source IP address of the request i.e. key type IP. - HTTP_COOKIE: The value of the HTTP cookie whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the cookie value. If no such cookie is present in the request, the key type defaults to ALL. - HTTP_PATH: The URL path of the HTTP request. The key value is truncated to the first 128 bytes. - SNI: Server name indication in the TLS session of the HTTPS request. The key value is truncated to the first 128 bytes. The key type defaults to ALL on a HTTP session. - REGION_CODE: The country/region from which the request originates.
- enforceOn StringKey Name 
- Rate limit key name applicable only for the following key types: HTTP_HEADER -- Name of the HTTP header whose value is taken as the key value. HTTP_COOKIE -- Name of the HTTP cookie whose value is taken as the key value.
- enforceOn SecurityKey Type Policy Rule Rate Limit Options Enforce On Key Config Enforce On Key Type 
- Determines the key to enforce the rate_limit_threshold on. Possible values are: - ALL: A single rate limit threshold is applied to all the requests matching this rule. This is the default value if "enforceOnKeyConfigs" is not configured. - IP: The source IP address of the request is the key. Each IP has this limit enforced separately. - HTTP_HEADER: The value of the HTTP header whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the header value. If no such header is present in the request, the key type defaults to ALL. - XFF_IP: The first IP address (i.e. the originating client IP address) specified in the list of IPs under X-Forwarded-For HTTP header. If no such header is present or the value is not a valid IP, the key defaults to the source IP address of the request i.e. key type IP. - HTTP_COOKIE: The value of the HTTP cookie whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the cookie value. If no such cookie is present in the request, the key type defaults to ALL. - HTTP_PATH: The URL path of the HTTP request. The key value is truncated to the first 128 bytes. - SNI: Server name indication in the TLS session of the HTTPS request. The key value is truncated to the first 128 bytes. The key type defaults to ALL on a HTTP session. - REGION_CODE: The country/region from which the request originates.
- enforceOn stringKey Name 
- Rate limit key name applicable only for the following key types: HTTP_HEADER -- Name of the HTTP header whose value is taken as the key value. HTTP_COOKIE -- Name of the HTTP cookie whose value is taken as the key value.
- enforceOn SecurityKey Type Policy Rule Rate Limit Options Enforce On Key Config Enforce On Key Type 
- Determines the key to enforce the rate_limit_threshold on. Possible values are: - ALL: A single rate limit threshold is applied to all the requests matching this rule. This is the default value if "enforceOnKeyConfigs" is not configured. - IP: The source IP address of the request is the key. Each IP has this limit enforced separately. - HTTP_HEADER: The value of the HTTP header whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the header value. If no such header is present in the request, the key type defaults to ALL. - XFF_IP: The first IP address (i.e. the originating client IP address) specified in the list of IPs under X-Forwarded-For HTTP header. If no such header is present or the value is not a valid IP, the key defaults to the source IP address of the request i.e. key type IP. - HTTP_COOKIE: The value of the HTTP cookie whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the cookie value. If no such cookie is present in the request, the key type defaults to ALL. - HTTP_PATH: The URL path of the HTTP request. The key value is truncated to the first 128 bytes. - SNI: Server name indication in the TLS session of the HTTPS request. The key value is truncated to the first 128 bytes. The key type defaults to ALL on a HTTP session. - REGION_CODE: The country/region from which the request originates.
- enforce_on_ strkey_ name 
- Rate limit key name applicable only for the following key types: HTTP_HEADER -- Name of the HTTP header whose value is taken as the key value. HTTP_COOKIE -- Name of the HTTP cookie whose value is taken as the key value.
- enforce_on_ Securitykey_ type Policy Rule Rate Limit Options Enforce On Key Config Enforce On Key Type 
- Determines the key to enforce the rate_limit_threshold on. Possible values are: - ALL: A single rate limit threshold is applied to all the requests matching this rule. This is the default value if "enforceOnKeyConfigs" is not configured. - IP: The source IP address of the request is the key. Each IP has this limit enforced separately. - HTTP_HEADER: The value of the HTTP header whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the header value. If no such header is present in the request, the key type defaults to ALL. - XFF_IP: The first IP address (i.e. the originating client IP address) specified in the list of IPs under X-Forwarded-For HTTP header. If no such header is present or the value is not a valid IP, the key defaults to the source IP address of the request i.e. key type IP. - HTTP_COOKIE: The value of the HTTP cookie whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the cookie value. If no such cookie is present in the request, the key type defaults to ALL. - HTTP_PATH: The URL path of the HTTP request. The key value is truncated to the first 128 bytes. - SNI: Server name indication in the TLS session of the HTTPS request. The key value is truncated to the first 128 bytes. The key type defaults to ALL on a HTTP session. - REGION_CODE: The country/region from which the request originates.
- enforceOn StringKey Name 
- Rate limit key name applicable only for the following key types: HTTP_HEADER -- Name of the HTTP header whose value is taken as the key value. HTTP_COOKIE -- Name of the HTTP cookie whose value is taken as the key value.
- enforceOn "ALL" | "HTTP_COOKIE" | "HTTP_HEADER" | "HTTP_PATH" | "IP" | "REGION_CODE" | "SNI" | "XFF_IP"Key Type 
- Determines the key to enforce the rate_limit_threshold on. Possible values are: - ALL: A single rate limit threshold is applied to all the requests matching this rule. This is the default value if "enforceOnKeyConfigs" is not configured. - IP: The source IP address of the request is the key. Each IP has this limit enforced separately. - HTTP_HEADER: The value of the HTTP header whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the header value. If no such header is present in the request, the key type defaults to ALL. - XFF_IP: The first IP address (i.e. the originating client IP address) specified in the list of IPs under X-Forwarded-For HTTP header. If no such header is present or the value is not a valid IP, the key defaults to the source IP address of the request i.e. key type IP. - HTTP_COOKIE: The value of the HTTP cookie whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the cookie value. If no such cookie is present in the request, the key type defaults to ALL. - HTTP_PATH: The URL path of the HTTP request. The key value is truncated to the first 128 bytes. - SNI: Server name indication in the TLS session of the HTTPS request. The key value is truncated to the first 128 bytes. The key type defaults to ALL on a HTTP session. - REGION_CODE: The country/region from which the request originates.
SecurityPolicyRuleRateLimitOptionsEnforceOnKeyConfigEnforceOnKeyType, SecurityPolicyRuleRateLimitOptionsEnforceOnKeyConfigEnforceOnKeyTypeArgs                            
- All
- ALL
- HttpCookie 
- HTTP_COOKIE
- HttpHeader 
- HTTP_HEADER
- HttpPath 
- HTTP_PATH
- Ip
- IP
- RegionCode 
- REGION_CODE
- Sni
- SNI
- XffIp 
- XFF_IP
- SecurityPolicy Rule Rate Limit Options Enforce On Key Config Enforce On Key Type All 
- ALL
- SecurityPolicy Rule Rate Limit Options Enforce On Key Config Enforce On Key Type Http Cookie 
- HTTP_COOKIE
- SecurityPolicy Rule Rate Limit Options Enforce On Key Config Enforce On Key Type Http Header 
- HTTP_HEADER
- SecurityPolicy Rule Rate Limit Options Enforce On Key Config Enforce On Key Type Http Path 
- HTTP_PATH
- SecurityPolicy Rule Rate Limit Options Enforce On Key Config Enforce On Key Type Ip 
- IP
- SecurityPolicy Rule Rate Limit Options Enforce On Key Config Enforce On Key Type Region Code 
- REGION_CODE
- SecurityPolicy Rule Rate Limit Options Enforce On Key Config Enforce On Key Type Sni 
- SNI
- SecurityPolicy Rule Rate Limit Options Enforce On Key Config Enforce On Key Type Xff Ip 
- XFF_IP
- All
- ALL
- HttpCookie 
- HTTP_COOKIE
- HttpHeader 
- HTTP_HEADER
- HttpPath 
- HTTP_PATH
- Ip
- IP
- RegionCode 
- REGION_CODE
- Sni
- SNI
- XffIp 
- XFF_IP
- All
- ALL
- HttpCookie 
- HTTP_COOKIE
- HttpHeader 
- HTTP_HEADER
- HttpPath 
- HTTP_PATH
- Ip
- IP
- RegionCode 
- REGION_CODE
- Sni
- SNI
- XffIp 
- XFF_IP
- ALL
- ALL
- HTTP_COOKIE
- HTTP_COOKIE
- HTTP_HEADER
- HTTP_HEADER
- HTTP_PATH
- HTTP_PATH
- IP
- IP
- REGION_CODE
- REGION_CODE
- SNI
- SNI
- XFF_IP
- XFF_IP
- "ALL"
- ALL
- "HTTP_COOKIE"
- HTTP_COOKIE
- "HTTP_HEADER"
- HTTP_HEADER
- "HTTP_PATH"
- HTTP_PATH
- "IP"
- IP
- "REGION_CODE"
- REGION_CODE
- "SNI"
- SNI
- "XFF_IP"
- XFF_IP
SecurityPolicyRuleRateLimitOptionsEnforceOnKeyConfigResponse, SecurityPolicyRuleRateLimitOptionsEnforceOnKeyConfigResponseArgs                      
- EnforceOn stringKey Name 
- Rate limit key name applicable only for the following key types: HTTP_HEADER -- Name of the HTTP header whose value is taken as the key value. HTTP_COOKIE -- Name of the HTTP cookie whose value is taken as the key value.
- EnforceOn stringKey Type 
- Determines the key to enforce the rate_limit_threshold on. Possible values are: - ALL: A single rate limit threshold is applied to all the requests matching this rule. This is the default value if "enforceOnKeyConfigs" is not configured. - IP: The source IP address of the request is the key. Each IP has this limit enforced separately. - HTTP_HEADER: The value of the HTTP header whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the header value. If no such header is present in the request, the key type defaults to ALL. - XFF_IP: The first IP address (i.e. the originating client IP address) specified in the list of IPs under X-Forwarded-For HTTP header. If no such header is present or the value is not a valid IP, the key defaults to the source IP address of the request i.e. key type IP. - HTTP_COOKIE: The value of the HTTP cookie whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the cookie value. If no such cookie is present in the request, the key type defaults to ALL. - HTTP_PATH: The URL path of the HTTP request. The key value is truncated to the first 128 bytes. - SNI: Server name indication in the TLS session of the HTTPS request. The key value is truncated to the first 128 bytes. The key type defaults to ALL on a HTTP session. - REGION_CODE: The country/region from which the request originates.
- EnforceOn stringKey Name 
- Rate limit key name applicable only for the following key types: HTTP_HEADER -- Name of the HTTP header whose value is taken as the key value. HTTP_COOKIE -- Name of the HTTP cookie whose value is taken as the key value.
- EnforceOn stringKey Type 
- Determines the key to enforce the rate_limit_threshold on. Possible values are: - ALL: A single rate limit threshold is applied to all the requests matching this rule. This is the default value if "enforceOnKeyConfigs" is not configured. - IP: The source IP address of the request is the key. Each IP has this limit enforced separately. - HTTP_HEADER: The value of the HTTP header whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the header value. If no such header is present in the request, the key type defaults to ALL. - XFF_IP: The first IP address (i.e. the originating client IP address) specified in the list of IPs under X-Forwarded-For HTTP header. If no such header is present or the value is not a valid IP, the key defaults to the source IP address of the request i.e. key type IP. - HTTP_COOKIE: The value of the HTTP cookie whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the cookie value. If no such cookie is present in the request, the key type defaults to ALL. - HTTP_PATH: The URL path of the HTTP request. The key value is truncated to the first 128 bytes. - SNI: Server name indication in the TLS session of the HTTPS request. The key value is truncated to the first 128 bytes. The key type defaults to ALL on a HTTP session. - REGION_CODE: The country/region from which the request originates.
- enforceOn StringKey Name 
- Rate limit key name applicable only for the following key types: HTTP_HEADER -- Name of the HTTP header whose value is taken as the key value. HTTP_COOKIE -- Name of the HTTP cookie whose value is taken as the key value.
- enforceOn StringKey Type 
- Determines the key to enforce the rate_limit_threshold on. Possible values are: - ALL: A single rate limit threshold is applied to all the requests matching this rule. This is the default value if "enforceOnKeyConfigs" is not configured. - IP: The source IP address of the request is the key. Each IP has this limit enforced separately. - HTTP_HEADER: The value of the HTTP header whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the header value. If no such header is present in the request, the key type defaults to ALL. - XFF_IP: The first IP address (i.e. the originating client IP address) specified in the list of IPs under X-Forwarded-For HTTP header. If no such header is present or the value is not a valid IP, the key defaults to the source IP address of the request i.e. key type IP. - HTTP_COOKIE: The value of the HTTP cookie whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the cookie value. If no such cookie is present in the request, the key type defaults to ALL. - HTTP_PATH: The URL path of the HTTP request. The key value is truncated to the first 128 bytes. - SNI: Server name indication in the TLS session of the HTTPS request. The key value is truncated to the first 128 bytes. The key type defaults to ALL on a HTTP session. - REGION_CODE: The country/region from which the request originates.
- enforceOn stringKey Name 
- Rate limit key name applicable only for the following key types: HTTP_HEADER -- Name of the HTTP header whose value is taken as the key value. HTTP_COOKIE -- Name of the HTTP cookie whose value is taken as the key value.
- enforceOn stringKey Type 
- Determines the key to enforce the rate_limit_threshold on. Possible values are: - ALL: A single rate limit threshold is applied to all the requests matching this rule. This is the default value if "enforceOnKeyConfigs" is not configured. - IP: The source IP address of the request is the key. Each IP has this limit enforced separately. - HTTP_HEADER: The value of the HTTP header whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the header value. If no such header is present in the request, the key type defaults to ALL. - XFF_IP: The first IP address (i.e. the originating client IP address) specified in the list of IPs under X-Forwarded-For HTTP header. If no such header is present or the value is not a valid IP, the key defaults to the source IP address of the request i.e. key type IP. - HTTP_COOKIE: The value of the HTTP cookie whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the cookie value. If no such cookie is present in the request, the key type defaults to ALL. - HTTP_PATH: The URL path of the HTTP request. The key value is truncated to the first 128 bytes. - SNI: Server name indication in the TLS session of the HTTPS request. The key value is truncated to the first 128 bytes. The key type defaults to ALL on a HTTP session. - REGION_CODE: The country/region from which the request originates.
- enforce_on_ strkey_ name 
- Rate limit key name applicable only for the following key types: HTTP_HEADER -- Name of the HTTP header whose value is taken as the key value. HTTP_COOKIE -- Name of the HTTP cookie whose value is taken as the key value.
- enforce_on_ strkey_ type 
- Determines the key to enforce the rate_limit_threshold on. Possible values are: - ALL: A single rate limit threshold is applied to all the requests matching this rule. This is the default value if "enforceOnKeyConfigs" is not configured. - IP: The source IP address of the request is the key. Each IP has this limit enforced separately. - HTTP_HEADER: The value of the HTTP header whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the header value. If no such header is present in the request, the key type defaults to ALL. - XFF_IP: The first IP address (i.e. the originating client IP address) specified in the list of IPs under X-Forwarded-For HTTP header. If no such header is present or the value is not a valid IP, the key defaults to the source IP address of the request i.e. key type IP. - HTTP_COOKIE: The value of the HTTP cookie whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the cookie value. If no such cookie is present in the request, the key type defaults to ALL. - HTTP_PATH: The URL path of the HTTP request. The key value is truncated to the first 128 bytes. - SNI: Server name indication in the TLS session of the HTTPS request. The key value is truncated to the first 128 bytes. The key type defaults to ALL on a HTTP session. - REGION_CODE: The country/region from which the request originates.
- enforceOn StringKey Name 
- Rate limit key name applicable only for the following key types: HTTP_HEADER -- Name of the HTTP header whose value is taken as the key value. HTTP_COOKIE -- Name of the HTTP cookie whose value is taken as the key value.
- enforceOn StringKey Type 
- Determines the key to enforce the rate_limit_threshold on. Possible values are: - ALL: A single rate limit threshold is applied to all the requests matching this rule. This is the default value if "enforceOnKeyConfigs" is not configured. - IP: The source IP address of the request is the key. Each IP has this limit enforced separately. - HTTP_HEADER: The value of the HTTP header whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the header value. If no such header is present in the request, the key type defaults to ALL. - XFF_IP: The first IP address (i.e. the originating client IP address) specified in the list of IPs under X-Forwarded-For HTTP header. If no such header is present or the value is not a valid IP, the key defaults to the source IP address of the request i.e. key type IP. - HTTP_COOKIE: The value of the HTTP cookie whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the cookie value. If no such cookie is present in the request, the key type defaults to ALL. - HTTP_PATH: The URL path of the HTTP request. The key value is truncated to the first 128 bytes. - SNI: Server name indication in the TLS session of the HTTPS request. The key value is truncated to the first 128 bytes. The key type defaults to ALL on a HTTP session. - REGION_CODE: The country/region from which the request originates.
SecurityPolicyRuleRateLimitOptionsResponse, SecurityPolicyRuleRateLimitOptionsResponseArgs              
- BanDuration intSec 
- Can only be specified if the action for the rule is "rate_based_ban". If specified, determines the time (in seconds) the traffic will continue to be banned by the rate limit after the rate falls below the threshold.
- BanThreshold Pulumi.Google Native. Compute. V1. Inputs. Security Policy Rule Rate Limit Options Threshold Response 
- Can only be specified if the action for the rule is "rate_based_ban". If specified, the key will be banned for the configured 'ban_duration_sec' when the number of requests that exceed the 'rate_limit_threshold' also exceed this 'ban_threshold'.
- ConformAction string
- Action to take for requests that are under the configured rate limit threshold. Valid option is "allow" only.
- EnforceOn stringKey 
- Determines the key to enforce the rate_limit_threshold on. Possible values are: - ALL: A single rate limit threshold is applied to all the requests matching this rule. This is the default value if "enforceOnKey" is not configured. - IP: The source IP address of the request is the key. Each IP has this limit enforced separately. - HTTP_HEADER: The value of the HTTP header whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the header value. If no such header is present in the request, the key type defaults to ALL. - XFF_IP: The first IP address (i.e. the originating client IP address) specified in the list of IPs under X-Forwarded-For HTTP header. If no such header is present or the value is not a valid IP, the key defaults to the source IP address of the request i.e. key type IP. - HTTP_COOKIE: The value of the HTTP cookie whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the cookie value. If no such cookie is present in the request, the key type defaults to ALL. - HTTP_PATH: The URL path of the HTTP request. The key value is truncated to the first 128 bytes. - SNI: Server name indication in the TLS session of the HTTPS request. The key value is truncated to the first 128 bytes. The key type defaults to ALL on a HTTP session. - REGION_CODE: The country/region from which the request originates.
- EnforceOn List<Pulumi.Key Configs Google Native. Compute. V1. Inputs. Security Policy Rule Rate Limit Options Enforce On Key Config Response> 
- If specified, any combination of values of enforce_on_key_type/enforce_on_key_name is treated as the key on which ratelimit threshold/action is enforced. You can specify up to 3 enforce_on_key_configs. If enforce_on_key_configs is specified, enforce_on_key must not be specified.
- EnforceOn stringKey Name 
- Rate limit key name applicable only for the following key types: HTTP_HEADER -- Name of the HTTP header whose value is taken as the key value. HTTP_COOKIE -- Name of the HTTP cookie whose value is taken as the key value.
- ExceedAction string
- Action to take for requests that are above the configured rate limit threshold, to either deny with a specified HTTP response code, or redirect to a different endpoint. Valid options are deny(STATUS), where valid values forSTATUSare 403, 404, 429, and 502, andredirect, where the redirect parameters come fromexceedRedirectOptionsbelow. Theredirectaction is only supported in Global Security Policies of type CLOUD_ARMOR.
- ExceedRedirect Pulumi.Options Google Native. Compute. V1. Inputs. Security Policy Rule Redirect Options Response 
- Parameters defining the redirect action that is used as the exceed action. Cannot be specified if the exceed action is not redirect. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- RateLimit Pulumi.Threshold Google Native. Compute. V1. Inputs. Security Policy Rule Rate Limit Options Threshold Response 
- Threshold at which to begin ratelimiting.
- BanDuration intSec 
- Can only be specified if the action for the rule is "rate_based_ban". If specified, determines the time (in seconds) the traffic will continue to be banned by the rate limit after the rate falls below the threshold.
- BanThreshold SecurityPolicy Rule Rate Limit Options Threshold Response 
- Can only be specified if the action for the rule is "rate_based_ban". If specified, the key will be banned for the configured 'ban_duration_sec' when the number of requests that exceed the 'rate_limit_threshold' also exceed this 'ban_threshold'.
- ConformAction string
- Action to take for requests that are under the configured rate limit threshold. Valid option is "allow" only.
- EnforceOn stringKey 
- Determines the key to enforce the rate_limit_threshold on. Possible values are: - ALL: A single rate limit threshold is applied to all the requests matching this rule. This is the default value if "enforceOnKey" is not configured. - IP: The source IP address of the request is the key. Each IP has this limit enforced separately. - HTTP_HEADER: The value of the HTTP header whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the header value. If no such header is present in the request, the key type defaults to ALL. - XFF_IP: The first IP address (i.e. the originating client IP address) specified in the list of IPs under X-Forwarded-For HTTP header. If no such header is present or the value is not a valid IP, the key defaults to the source IP address of the request i.e. key type IP. - HTTP_COOKIE: The value of the HTTP cookie whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the cookie value. If no such cookie is present in the request, the key type defaults to ALL. - HTTP_PATH: The URL path of the HTTP request. The key value is truncated to the first 128 bytes. - SNI: Server name indication in the TLS session of the HTTPS request. The key value is truncated to the first 128 bytes. The key type defaults to ALL on a HTTP session. - REGION_CODE: The country/region from which the request originates.
- EnforceOn []SecurityKey Configs Policy Rule Rate Limit Options Enforce On Key Config Response 
- If specified, any combination of values of enforce_on_key_type/enforce_on_key_name is treated as the key on which ratelimit threshold/action is enforced. You can specify up to 3 enforce_on_key_configs. If enforce_on_key_configs is specified, enforce_on_key must not be specified.
- EnforceOn stringKey Name 
- Rate limit key name applicable only for the following key types: HTTP_HEADER -- Name of the HTTP header whose value is taken as the key value. HTTP_COOKIE -- Name of the HTTP cookie whose value is taken as the key value.
- ExceedAction string
- Action to take for requests that are above the configured rate limit threshold, to either deny with a specified HTTP response code, or redirect to a different endpoint. Valid options are deny(STATUS), where valid values forSTATUSare 403, 404, 429, and 502, andredirect, where the redirect parameters come fromexceedRedirectOptionsbelow. Theredirectaction is only supported in Global Security Policies of type CLOUD_ARMOR.
- ExceedRedirect SecurityOptions Policy Rule Redirect Options Response 
- Parameters defining the redirect action that is used as the exceed action. Cannot be specified if the exceed action is not redirect. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- RateLimit SecurityThreshold Policy Rule Rate Limit Options Threshold Response 
- Threshold at which to begin ratelimiting.
- banDuration IntegerSec 
- Can only be specified if the action for the rule is "rate_based_ban". If specified, determines the time (in seconds) the traffic will continue to be banned by the rate limit after the rate falls below the threshold.
- banThreshold SecurityPolicy Rule Rate Limit Options Threshold Response 
- Can only be specified if the action for the rule is "rate_based_ban". If specified, the key will be banned for the configured 'ban_duration_sec' when the number of requests that exceed the 'rate_limit_threshold' also exceed this 'ban_threshold'.
- conformAction String
- Action to take for requests that are under the configured rate limit threshold. Valid option is "allow" only.
- enforceOn StringKey 
- Determines the key to enforce the rate_limit_threshold on. Possible values are: - ALL: A single rate limit threshold is applied to all the requests matching this rule. This is the default value if "enforceOnKey" is not configured. - IP: The source IP address of the request is the key. Each IP has this limit enforced separately. - HTTP_HEADER: The value of the HTTP header whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the header value. If no such header is present in the request, the key type defaults to ALL. - XFF_IP: The first IP address (i.e. the originating client IP address) specified in the list of IPs under X-Forwarded-For HTTP header. If no such header is present or the value is not a valid IP, the key defaults to the source IP address of the request i.e. key type IP. - HTTP_COOKIE: The value of the HTTP cookie whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the cookie value. If no such cookie is present in the request, the key type defaults to ALL. - HTTP_PATH: The URL path of the HTTP request. The key value is truncated to the first 128 bytes. - SNI: Server name indication in the TLS session of the HTTPS request. The key value is truncated to the first 128 bytes. The key type defaults to ALL on a HTTP session. - REGION_CODE: The country/region from which the request originates.
- enforceOn List<SecurityKey Configs Policy Rule Rate Limit Options Enforce On Key Config Response> 
- If specified, any combination of values of enforce_on_key_type/enforce_on_key_name is treated as the key on which ratelimit threshold/action is enforced. You can specify up to 3 enforce_on_key_configs. If enforce_on_key_configs is specified, enforce_on_key must not be specified.
- enforceOn StringKey Name 
- Rate limit key name applicable only for the following key types: HTTP_HEADER -- Name of the HTTP header whose value is taken as the key value. HTTP_COOKIE -- Name of the HTTP cookie whose value is taken as the key value.
- exceedAction String
- Action to take for requests that are above the configured rate limit threshold, to either deny with a specified HTTP response code, or redirect to a different endpoint. Valid options are deny(STATUS), where valid values forSTATUSare 403, 404, 429, and 502, andredirect, where the redirect parameters come fromexceedRedirectOptionsbelow. Theredirectaction is only supported in Global Security Policies of type CLOUD_ARMOR.
- exceedRedirect SecurityOptions Policy Rule Redirect Options Response 
- Parameters defining the redirect action that is used as the exceed action. Cannot be specified if the exceed action is not redirect. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- rateLimit SecurityThreshold Policy Rule Rate Limit Options Threshold Response 
- Threshold at which to begin ratelimiting.
- banDuration numberSec 
- Can only be specified if the action for the rule is "rate_based_ban". If specified, determines the time (in seconds) the traffic will continue to be banned by the rate limit after the rate falls below the threshold.
- banThreshold SecurityPolicy Rule Rate Limit Options Threshold Response 
- Can only be specified if the action for the rule is "rate_based_ban". If specified, the key will be banned for the configured 'ban_duration_sec' when the number of requests that exceed the 'rate_limit_threshold' also exceed this 'ban_threshold'.
- conformAction string
- Action to take for requests that are under the configured rate limit threshold. Valid option is "allow" only.
- enforceOn stringKey 
- Determines the key to enforce the rate_limit_threshold on. Possible values are: - ALL: A single rate limit threshold is applied to all the requests matching this rule. This is the default value if "enforceOnKey" is not configured. - IP: The source IP address of the request is the key. Each IP has this limit enforced separately. - HTTP_HEADER: The value of the HTTP header whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the header value. If no such header is present in the request, the key type defaults to ALL. - XFF_IP: The first IP address (i.e. the originating client IP address) specified in the list of IPs under X-Forwarded-For HTTP header. If no such header is present or the value is not a valid IP, the key defaults to the source IP address of the request i.e. key type IP. - HTTP_COOKIE: The value of the HTTP cookie whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the cookie value. If no such cookie is present in the request, the key type defaults to ALL. - HTTP_PATH: The URL path of the HTTP request. The key value is truncated to the first 128 bytes. - SNI: Server name indication in the TLS session of the HTTPS request. The key value is truncated to the first 128 bytes. The key type defaults to ALL on a HTTP session. - REGION_CODE: The country/region from which the request originates.
- enforceOn SecurityKey Configs Policy Rule Rate Limit Options Enforce On Key Config Response[] 
- If specified, any combination of values of enforce_on_key_type/enforce_on_key_name is treated as the key on which ratelimit threshold/action is enforced. You can specify up to 3 enforce_on_key_configs. If enforce_on_key_configs is specified, enforce_on_key must not be specified.
- enforceOn stringKey Name 
- Rate limit key name applicable only for the following key types: HTTP_HEADER -- Name of the HTTP header whose value is taken as the key value. HTTP_COOKIE -- Name of the HTTP cookie whose value is taken as the key value.
- exceedAction string
- Action to take for requests that are above the configured rate limit threshold, to either deny with a specified HTTP response code, or redirect to a different endpoint. Valid options are deny(STATUS), where valid values forSTATUSare 403, 404, 429, and 502, andredirect, where the redirect parameters come fromexceedRedirectOptionsbelow. Theredirectaction is only supported in Global Security Policies of type CLOUD_ARMOR.
- exceedRedirect SecurityOptions Policy Rule Redirect Options Response 
- Parameters defining the redirect action that is used as the exceed action. Cannot be specified if the exceed action is not redirect. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- rateLimit SecurityThreshold Policy Rule Rate Limit Options Threshold Response 
- Threshold at which to begin ratelimiting.
- ban_duration_ intsec 
- Can only be specified if the action for the rule is "rate_based_ban". If specified, determines the time (in seconds) the traffic will continue to be banned by the rate limit after the rate falls below the threshold.
- ban_threshold SecurityPolicy Rule Rate Limit Options Threshold Response 
- Can only be specified if the action for the rule is "rate_based_ban". If specified, the key will be banned for the configured 'ban_duration_sec' when the number of requests that exceed the 'rate_limit_threshold' also exceed this 'ban_threshold'.
- conform_action str
- Action to take for requests that are under the configured rate limit threshold. Valid option is "allow" only.
- enforce_on_ strkey 
- Determines the key to enforce the rate_limit_threshold on. Possible values are: - ALL: A single rate limit threshold is applied to all the requests matching this rule. This is the default value if "enforceOnKey" is not configured. - IP: The source IP address of the request is the key. Each IP has this limit enforced separately. - HTTP_HEADER: The value of the HTTP header whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the header value. If no such header is present in the request, the key type defaults to ALL. - XFF_IP: The first IP address (i.e. the originating client IP address) specified in the list of IPs under X-Forwarded-For HTTP header. If no such header is present or the value is not a valid IP, the key defaults to the source IP address of the request i.e. key type IP. - HTTP_COOKIE: The value of the HTTP cookie whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the cookie value. If no such cookie is present in the request, the key type defaults to ALL. - HTTP_PATH: The URL path of the HTTP request. The key value is truncated to the first 128 bytes. - SNI: Server name indication in the TLS session of the HTTPS request. The key value is truncated to the first 128 bytes. The key type defaults to ALL on a HTTP session. - REGION_CODE: The country/region from which the request originates.
- enforce_on_ Sequence[Securitykey_ configs Policy Rule Rate Limit Options Enforce On Key Config Response] 
- If specified, any combination of values of enforce_on_key_type/enforce_on_key_name is treated as the key on which ratelimit threshold/action is enforced. You can specify up to 3 enforce_on_key_configs. If enforce_on_key_configs is specified, enforce_on_key must not be specified.
- enforce_on_ strkey_ name 
- Rate limit key name applicable only for the following key types: HTTP_HEADER -- Name of the HTTP header whose value is taken as the key value. HTTP_COOKIE -- Name of the HTTP cookie whose value is taken as the key value.
- exceed_action str
- Action to take for requests that are above the configured rate limit threshold, to either deny with a specified HTTP response code, or redirect to a different endpoint. Valid options are deny(STATUS), where valid values forSTATUSare 403, 404, 429, and 502, andredirect, where the redirect parameters come fromexceedRedirectOptionsbelow. Theredirectaction is only supported in Global Security Policies of type CLOUD_ARMOR.
- exceed_redirect_ Securityoptions Policy Rule Redirect Options Response 
- Parameters defining the redirect action that is used as the exceed action. Cannot be specified if the exceed action is not redirect. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- rate_limit_ Securitythreshold Policy Rule Rate Limit Options Threshold Response 
- Threshold at which to begin ratelimiting.
- banDuration NumberSec 
- Can only be specified if the action for the rule is "rate_based_ban". If specified, determines the time (in seconds) the traffic will continue to be banned by the rate limit after the rate falls below the threshold.
- banThreshold Property Map
- Can only be specified if the action for the rule is "rate_based_ban". If specified, the key will be banned for the configured 'ban_duration_sec' when the number of requests that exceed the 'rate_limit_threshold' also exceed this 'ban_threshold'.
- conformAction String
- Action to take for requests that are under the configured rate limit threshold. Valid option is "allow" only.
- enforceOn StringKey 
- Determines the key to enforce the rate_limit_threshold on. Possible values are: - ALL: A single rate limit threshold is applied to all the requests matching this rule. This is the default value if "enforceOnKey" is not configured. - IP: The source IP address of the request is the key. Each IP has this limit enforced separately. - HTTP_HEADER: The value of the HTTP header whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the header value. If no such header is present in the request, the key type defaults to ALL. - XFF_IP: The first IP address (i.e. the originating client IP address) specified in the list of IPs under X-Forwarded-For HTTP header. If no such header is present or the value is not a valid IP, the key defaults to the source IP address of the request i.e. key type IP. - HTTP_COOKIE: The value of the HTTP cookie whose name is configured under "enforceOnKeyName". The key value is truncated to the first 128 bytes of the cookie value. If no such cookie is present in the request, the key type defaults to ALL. - HTTP_PATH: The URL path of the HTTP request. The key value is truncated to the first 128 bytes. - SNI: Server name indication in the TLS session of the HTTPS request. The key value is truncated to the first 128 bytes. The key type defaults to ALL on a HTTP session. - REGION_CODE: The country/region from which the request originates.
- enforceOn List<Property Map>Key Configs 
- If specified, any combination of values of enforce_on_key_type/enforce_on_key_name is treated as the key on which ratelimit threshold/action is enforced. You can specify up to 3 enforce_on_key_configs. If enforce_on_key_configs is specified, enforce_on_key must not be specified.
- enforceOn StringKey Name 
- Rate limit key name applicable only for the following key types: HTTP_HEADER -- Name of the HTTP header whose value is taken as the key value. HTTP_COOKIE -- Name of the HTTP cookie whose value is taken as the key value.
- exceedAction String
- Action to take for requests that are above the configured rate limit threshold, to either deny with a specified HTTP response code, or redirect to a different endpoint. Valid options are deny(STATUS), where valid values forSTATUSare 403, 404, 429, and 502, andredirect, where the redirect parameters come fromexceedRedirectOptionsbelow. Theredirectaction is only supported in Global Security Policies of type CLOUD_ARMOR.
- exceedRedirect Property MapOptions 
- Parameters defining the redirect action that is used as the exceed action. Cannot be specified if the exceed action is not redirect. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- rateLimit Property MapThreshold 
- Threshold at which to begin ratelimiting.
SecurityPolicyRuleRateLimitOptionsThreshold, SecurityPolicyRuleRateLimitOptionsThresholdArgs              
- Count int
- Number of HTTP(S) requests for calculating the threshold.
- IntervalSec int
- Interval over which the threshold is computed.
- Count int
- Number of HTTP(S) requests for calculating the threshold.
- IntervalSec int
- Interval over which the threshold is computed.
- count Integer
- Number of HTTP(S) requests for calculating the threshold.
- intervalSec Integer
- Interval over which the threshold is computed.
- count number
- Number of HTTP(S) requests for calculating the threshold.
- intervalSec number
- Interval over which the threshold is computed.
- count int
- Number of HTTP(S) requests for calculating the threshold.
- interval_sec int
- Interval over which the threshold is computed.
- count Number
- Number of HTTP(S) requests for calculating the threshold.
- intervalSec Number
- Interval over which the threshold is computed.
SecurityPolicyRuleRateLimitOptionsThresholdResponse, SecurityPolicyRuleRateLimitOptionsThresholdResponseArgs                
- Count int
- Number of HTTP(S) requests for calculating the threshold.
- IntervalSec int
- Interval over which the threshold is computed.
- Count int
- Number of HTTP(S) requests for calculating the threshold.
- IntervalSec int
- Interval over which the threshold is computed.
- count Integer
- Number of HTTP(S) requests for calculating the threshold.
- intervalSec Integer
- Interval over which the threshold is computed.
- count number
- Number of HTTP(S) requests for calculating the threshold.
- intervalSec number
- Interval over which the threshold is computed.
- count int
- Number of HTTP(S) requests for calculating the threshold.
- interval_sec int
- Interval over which the threshold is computed.
- count Number
- Number of HTTP(S) requests for calculating the threshold.
- intervalSec Number
- Interval over which the threshold is computed.
SecurityPolicyRuleRedirectOptions, SecurityPolicyRuleRedirectOptionsArgs          
- Target string
- Target for the redirect action. This is required if the type is EXTERNAL_302 and cannot be specified for GOOGLE_RECAPTCHA.
- Type
Pulumi.Google Native. Compute. V1. Security Policy Rule Redirect Options Type 
- Type of the redirect action.
- Target string
- Target for the redirect action. This is required if the type is EXTERNAL_302 and cannot be specified for GOOGLE_RECAPTCHA.
- Type
SecurityPolicy Rule Redirect Options Type 
- Type of the redirect action.
- target String
- Target for the redirect action. This is required if the type is EXTERNAL_302 and cannot be specified for GOOGLE_RECAPTCHA.
- type
SecurityPolicy Rule Redirect Options Type 
- Type of the redirect action.
- target string
- Target for the redirect action. This is required if the type is EXTERNAL_302 and cannot be specified for GOOGLE_RECAPTCHA.
- type
SecurityPolicy Rule Redirect Options Type 
- Type of the redirect action.
- target str
- Target for the redirect action. This is required if the type is EXTERNAL_302 and cannot be specified for GOOGLE_RECAPTCHA.
- type
SecurityPolicy Rule Redirect Options Type 
- Type of the redirect action.
- target String
- Target for the redirect action. This is required if the type is EXTERNAL_302 and cannot be specified for GOOGLE_RECAPTCHA.
- type "EXTERNAL_302" | "GOOGLE_RECAPTCHA"
- Type of the redirect action.
SecurityPolicyRuleRedirectOptionsResponse, SecurityPolicyRuleRedirectOptionsResponseArgs            
SecurityPolicyRuleRedirectOptionsType, SecurityPolicyRuleRedirectOptionsTypeArgs            
- External302
- EXTERNAL_302
- GoogleRecaptcha 
- GOOGLE_RECAPTCHA
- SecurityPolicy Rule Redirect Options Type External302 
- EXTERNAL_302
- SecurityPolicy Rule Redirect Options Type Google Recaptcha 
- GOOGLE_RECAPTCHA
- External302
- EXTERNAL_302
- GoogleRecaptcha 
- GOOGLE_RECAPTCHA
- External302
- EXTERNAL_302
- GoogleRecaptcha 
- GOOGLE_RECAPTCHA
- EXTERNAL302
- EXTERNAL_302
- GOOGLE_RECAPTCHA
- GOOGLE_RECAPTCHA
- "EXTERNAL_302"
- EXTERNAL_302
- "GOOGLE_RECAPTCHA"
- GOOGLE_RECAPTCHA
SecurityPolicyRuleResponse, SecurityPolicyRuleResponseArgs        
- Action string
- The Action to perform when the rule is matched. The following are the valid actions: - allow: allow access to target. - deny(STATUS): deny access to target, returns the HTTP response code specified. Valid values for STATUSare 403, 404, and 502. - rate_based_ban: limit client traffic to the configured threshold and ban the client if the traffic exceeds the threshold. Configure parameters for this action in RateLimitOptions. Requires rate_limit_options to be set. - redirect: redirect to a different target. This can either be an internal reCAPTCHA redirect, or an external URL-based redirect via a 302 response. Parameters for this action can be configured via redirectOptions. This action is only supported in Global Security Policies of type CLOUD_ARMOR. - throttle: limit client traffic to the configured threshold. Configure parameters for this action in rateLimitOptions. Requires rate_limit_options to be set for this.
- Description string
- An optional description of this resource. Provide this property when you create the resource.
- HeaderAction Pulumi.Google Native. Compute. V1. Inputs. Security Policy Rule Http Header Action Response 
- Optional, additional actions that are performed on headers. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- Kind string
- [Output only] Type of the resource. Always compute#securityPolicyRule for security policy rules
- Match
Pulumi.Google Native. Compute. V1. Inputs. Security Policy Rule Matcher Response 
- A match condition that incoming traffic is evaluated against. If it evaluates to true, the corresponding 'action' is enforced.
- NetworkMatch Pulumi.Google Native. Compute. V1. Inputs. Security Policy Rule Network Matcher Response 
- A match condition that incoming packets are evaluated against for CLOUD_ARMOR_NETWORK security policies. If it matches, the corresponding 'action' is enforced. The match criteria for a rule consists of built-in match fields (like 'srcIpRanges') and potentially multiple user-defined match fields ('userDefinedFields'). Field values may be extracted directly from the packet or derived from it (e.g. 'srcRegionCodes'). Some fields may not be present in every packet (e.g. 'srcPorts'). A user-defined field is only present if the base header is found in the packet and the entire field is in bounds. Each match field may specify which values can match it, listing one or more ranges, prefixes, or exact values that are considered a match for the field. A field value must be present in order to match a specified match field. If no match values are specified for a match field, then any field value is considered to match it, and it's not required to be present. For strings specifying '*' is also equivalent to match all. For a packet to match a rule, all specified match fields must match the corresponding field values derived from the packet. Example: networkMatch: srcIpRanges: - "192.0.2.0/24" - "198.51.100.0/24" userDefinedFields: - name: "ipv4_fragment_offset" values: - "1-0x1fff" The above match condition matches packets with a source IP in 192.0.2.0/24 or 198.51.100.0/24 and a user-defined field named "ipv4_fragment_offset" with a value between 1 and 0x1fff inclusive.
- PreconfiguredWaf Pulumi.Config Google Native. Compute. V1. Inputs. Security Policy Rule Preconfigured Waf Config Response 
- Preconfigured WAF configuration to be applied for the rule. If the rule does not evaluate preconfigured WAF rules, i.e., if evaluatePreconfiguredWaf() is not used, this field will have no effect.
- Preview bool
- If set to true, the specified action is not enforced.
- Priority int
- An integer indicating the priority of a rule in the list. The priority must be a positive value between 0 and 2147483647. Rules are evaluated from highest to lowest priority where 0 is the highest priority and 2147483647 is the lowest priority.
- RateLimit Pulumi.Options Google Native. Compute. V1. Inputs. Security Policy Rule Rate Limit Options Response 
- Must be specified if the action is "rate_based_ban" or "throttle". Cannot be specified for any other actions.
- RedirectOptions Pulumi.Google Native. Compute. V1. Inputs. Security Policy Rule Redirect Options Response 
- Parameters defining the redirect action. Cannot be specified for any other actions. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- Action string
- The Action to perform when the rule is matched. The following are the valid actions: - allow: allow access to target. - deny(STATUS): deny access to target, returns the HTTP response code specified. Valid values for STATUSare 403, 404, and 502. - rate_based_ban: limit client traffic to the configured threshold and ban the client if the traffic exceeds the threshold. Configure parameters for this action in RateLimitOptions. Requires rate_limit_options to be set. - redirect: redirect to a different target. This can either be an internal reCAPTCHA redirect, or an external URL-based redirect via a 302 response. Parameters for this action can be configured via redirectOptions. This action is only supported in Global Security Policies of type CLOUD_ARMOR. - throttle: limit client traffic to the configured threshold. Configure parameters for this action in rateLimitOptions. Requires rate_limit_options to be set for this.
- Description string
- An optional description of this resource. Provide this property when you create the resource.
- HeaderAction SecurityPolicy Rule Http Header Action Response 
- Optional, additional actions that are performed on headers. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- Kind string
- [Output only] Type of the resource. Always compute#securityPolicyRule for security policy rules
- Match
SecurityPolicy Rule Matcher Response 
- A match condition that incoming traffic is evaluated against. If it evaluates to true, the corresponding 'action' is enforced.
- NetworkMatch SecurityPolicy Rule Network Matcher Response 
- A match condition that incoming packets are evaluated against for CLOUD_ARMOR_NETWORK security policies. If it matches, the corresponding 'action' is enforced. The match criteria for a rule consists of built-in match fields (like 'srcIpRanges') and potentially multiple user-defined match fields ('userDefinedFields'). Field values may be extracted directly from the packet or derived from it (e.g. 'srcRegionCodes'). Some fields may not be present in every packet (e.g. 'srcPorts'). A user-defined field is only present if the base header is found in the packet and the entire field is in bounds. Each match field may specify which values can match it, listing one or more ranges, prefixes, or exact values that are considered a match for the field. A field value must be present in order to match a specified match field. If no match values are specified for a match field, then any field value is considered to match it, and it's not required to be present. For strings specifying '*' is also equivalent to match all. For a packet to match a rule, all specified match fields must match the corresponding field values derived from the packet. Example: networkMatch: srcIpRanges: - "192.0.2.0/24" - "198.51.100.0/24" userDefinedFields: - name: "ipv4_fragment_offset" values: - "1-0x1fff" The above match condition matches packets with a source IP in 192.0.2.0/24 or 198.51.100.0/24 and a user-defined field named "ipv4_fragment_offset" with a value between 1 and 0x1fff inclusive.
- PreconfiguredWaf SecurityConfig Policy Rule Preconfigured Waf Config Response 
- Preconfigured WAF configuration to be applied for the rule. If the rule does not evaluate preconfigured WAF rules, i.e., if evaluatePreconfiguredWaf() is not used, this field will have no effect.
- Preview bool
- If set to true, the specified action is not enforced.
- Priority int
- An integer indicating the priority of a rule in the list. The priority must be a positive value between 0 and 2147483647. Rules are evaluated from highest to lowest priority where 0 is the highest priority and 2147483647 is the lowest priority.
- RateLimit SecurityOptions Policy Rule Rate Limit Options Response 
- Must be specified if the action is "rate_based_ban" or "throttle". Cannot be specified for any other actions.
- RedirectOptions SecurityPolicy Rule Redirect Options Response 
- Parameters defining the redirect action. Cannot be specified for any other actions. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- action String
- The Action to perform when the rule is matched. The following are the valid actions: - allow: allow access to target. - deny(STATUS): deny access to target, returns the HTTP response code specified. Valid values for STATUSare 403, 404, and 502. - rate_based_ban: limit client traffic to the configured threshold and ban the client if the traffic exceeds the threshold. Configure parameters for this action in RateLimitOptions. Requires rate_limit_options to be set. - redirect: redirect to a different target. This can either be an internal reCAPTCHA redirect, or an external URL-based redirect via a 302 response. Parameters for this action can be configured via redirectOptions. This action is only supported in Global Security Policies of type CLOUD_ARMOR. - throttle: limit client traffic to the configured threshold. Configure parameters for this action in rateLimitOptions. Requires rate_limit_options to be set for this.
- description String
- An optional description of this resource. Provide this property when you create the resource.
- headerAction SecurityPolicy Rule Http Header Action Response 
- Optional, additional actions that are performed on headers. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- kind String
- [Output only] Type of the resource. Always compute#securityPolicyRule for security policy rules
- match
SecurityPolicy Rule Matcher Response 
- A match condition that incoming traffic is evaluated against. If it evaluates to true, the corresponding 'action' is enforced.
- networkMatch SecurityPolicy Rule Network Matcher Response 
- A match condition that incoming packets are evaluated against for CLOUD_ARMOR_NETWORK security policies. If it matches, the corresponding 'action' is enforced. The match criteria for a rule consists of built-in match fields (like 'srcIpRanges') and potentially multiple user-defined match fields ('userDefinedFields'). Field values may be extracted directly from the packet or derived from it (e.g. 'srcRegionCodes'). Some fields may not be present in every packet (e.g. 'srcPorts'). A user-defined field is only present if the base header is found in the packet and the entire field is in bounds. Each match field may specify which values can match it, listing one or more ranges, prefixes, or exact values that are considered a match for the field. A field value must be present in order to match a specified match field. If no match values are specified for a match field, then any field value is considered to match it, and it's not required to be present. For strings specifying '*' is also equivalent to match all. For a packet to match a rule, all specified match fields must match the corresponding field values derived from the packet. Example: networkMatch: srcIpRanges: - "192.0.2.0/24" - "198.51.100.0/24" userDefinedFields: - name: "ipv4_fragment_offset" values: - "1-0x1fff" The above match condition matches packets with a source IP in 192.0.2.0/24 or 198.51.100.0/24 and a user-defined field named "ipv4_fragment_offset" with a value between 1 and 0x1fff inclusive.
- preconfiguredWaf SecurityConfig Policy Rule Preconfigured Waf Config Response 
- Preconfigured WAF configuration to be applied for the rule. If the rule does not evaluate preconfigured WAF rules, i.e., if evaluatePreconfiguredWaf() is not used, this field will have no effect.
- preview Boolean
- If set to true, the specified action is not enforced.
- priority Integer
- An integer indicating the priority of a rule in the list. The priority must be a positive value between 0 and 2147483647. Rules are evaluated from highest to lowest priority where 0 is the highest priority and 2147483647 is the lowest priority.
- rateLimit SecurityOptions Policy Rule Rate Limit Options Response 
- Must be specified if the action is "rate_based_ban" or "throttle". Cannot be specified for any other actions.
- redirectOptions SecurityPolicy Rule Redirect Options Response 
- Parameters defining the redirect action. Cannot be specified for any other actions. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- action string
- The Action to perform when the rule is matched. The following are the valid actions: - allow: allow access to target. - deny(STATUS): deny access to target, returns the HTTP response code specified. Valid values for STATUSare 403, 404, and 502. - rate_based_ban: limit client traffic to the configured threshold and ban the client if the traffic exceeds the threshold. Configure parameters for this action in RateLimitOptions. Requires rate_limit_options to be set. - redirect: redirect to a different target. This can either be an internal reCAPTCHA redirect, or an external URL-based redirect via a 302 response. Parameters for this action can be configured via redirectOptions. This action is only supported in Global Security Policies of type CLOUD_ARMOR. - throttle: limit client traffic to the configured threshold. Configure parameters for this action in rateLimitOptions. Requires rate_limit_options to be set for this.
- description string
- An optional description of this resource. Provide this property when you create the resource.
- headerAction SecurityPolicy Rule Http Header Action Response 
- Optional, additional actions that are performed on headers. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- kind string
- [Output only] Type of the resource. Always compute#securityPolicyRule for security policy rules
- match
SecurityPolicy Rule Matcher Response 
- A match condition that incoming traffic is evaluated against. If it evaluates to true, the corresponding 'action' is enforced.
- networkMatch SecurityPolicy Rule Network Matcher Response 
- A match condition that incoming packets are evaluated against for CLOUD_ARMOR_NETWORK security policies. If it matches, the corresponding 'action' is enforced. The match criteria for a rule consists of built-in match fields (like 'srcIpRanges') and potentially multiple user-defined match fields ('userDefinedFields'). Field values may be extracted directly from the packet or derived from it (e.g. 'srcRegionCodes'). Some fields may not be present in every packet (e.g. 'srcPorts'). A user-defined field is only present if the base header is found in the packet and the entire field is in bounds. Each match field may specify which values can match it, listing one or more ranges, prefixes, or exact values that are considered a match for the field. A field value must be present in order to match a specified match field. If no match values are specified for a match field, then any field value is considered to match it, and it's not required to be present. For strings specifying '*' is also equivalent to match all. For a packet to match a rule, all specified match fields must match the corresponding field values derived from the packet. Example: networkMatch: srcIpRanges: - "192.0.2.0/24" - "198.51.100.0/24" userDefinedFields: - name: "ipv4_fragment_offset" values: - "1-0x1fff" The above match condition matches packets with a source IP in 192.0.2.0/24 or 198.51.100.0/24 and a user-defined field named "ipv4_fragment_offset" with a value between 1 and 0x1fff inclusive.
- preconfiguredWaf SecurityConfig Policy Rule Preconfigured Waf Config Response 
- Preconfigured WAF configuration to be applied for the rule. If the rule does not evaluate preconfigured WAF rules, i.e., if evaluatePreconfiguredWaf() is not used, this field will have no effect.
- preview boolean
- If set to true, the specified action is not enforced.
- priority number
- An integer indicating the priority of a rule in the list. The priority must be a positive value between 0 and 2147483647. Rules are evaluated from highest to lowest priority where 0 is the highest priority and 2147483647 is the lowest priority.
- rateLimit SecurityOptions Policy Rule Rate Limit Options Response 
- Must be specified if the action is "rate_based_ban" or "throttle". Cannot be specified for any other actions.
- redirectOptions SecurityPolicy Rule Redirect Options Response 
- Parameters defining the redirect action. Cannot be specified for any other actions. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- action str
- The Action to perform when the rule is matched. The following are the valid actions: - allow: allow access to target. - deny(STATUS): deny access to target, returns the HTTP response code specified. Valid values for STATUSare 403, 404, and 502. - rate_based_ban: limit client traffic to the configured threshold and ban the client if the traffic exceeds the threshold. Configure parameters for this action in RateLimitOptions. Requires rate_limit_options to be set. - redirect: redirect to a different target. This can either be an internal reCAPTCHA redirect, or an external URL-based redirect via a 302 response. Parameters for this action can be configured via redirectOptions. This action is only supported in Global Security Policies of type CLOUD_ARMOR. - throttle: limit client traffic to the configured threshold. Configure parameters for this action in rateLimitOptions. Requires rate_limit_options to be set for this.
- description str
- An optional description of this resource. Provide this property when you create the resource.
- header_action SecurityPolicy Rule Http Header Action Response 
- Optional, additional actions that are performed on headers. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- kind str
- [Output only] Type of the resource. Always compute#securityPolicyRule for security policy rules
- match
SecurityPolicy Rule Matcher Response 
- A match condition that incoming traffic is evaluated against. If it evaluates to true, the corresponding 'action' is enforced.
- network_match SecurityPolicy Rule Network Matcher Response 
- A match condition that incoming packets are evaluated against for CLOUD_ARMOR_NETWORK security policies. If it matches, the corresponding 'action' is enforced. The match criteria for a rule consists of built-in match fields (like 'srcIpRanges') and potentially multiple user-defined match fields ('userDefinedFields'). Field values may be extracted directly from the packet or derived from it (e.g. 'srcRegionCodes'). Some fields may not be present in every packet (e.g. 'srcPorts'). A user-defined field is only present if the base header is found in the packet and the entire field is in bounds. Each match field may specify which values can match it, listing one or more ranges, prefixes, or exact values that are considered a match for the field. A field value must be present in order to match a specified match field. If no match values are specified for a match field, then any field value is considered to match it, and it's not required to be present. For strings specifying '*' is also equivalent to match all. For a packet to match a rule, all specified match fields must match the corresponding field values derived from the packet. Example: networkMatch: srcIpRanges: - "192.0.2.0/24" - "198.51.100.0/24" userDefinedFields: - name: "ipv4_fragment_offset" values: - "1-0x1fff" The above match condition matches packets with a source IP in 192.0.2.0/24 or 198.51.100.0/24 and a user-defined field named "ipv4_fragment_offset" with a value between 1 and 0x1fff inclusive.
- preconfigured_waf_ Securityconfig Policy Rule Preconfigured Waf Config Response 
- Preconfigured WAF configuration to be applied for the rule. If the rule does not evaluate preconfigured WAF rules, i.e., if evaluatePreconfiguredWaf() is not used, this field will have no effect.
- preview bool
- If set to true, the specified action is not enforced.
- priority int
- An integer indicating the priority of a rule in the list. The priority must be a positive value between 0 and 2147483647. Rules are evaluated from highest to lowest priority where 0 is the highest priority and 2147483647 is the lowest priority.
- rate_limit_ Securityoptions Policy Rule Rate Limit Options Response 
- Must be specified if the action is "rate_based_ban" or "throttle". Cannot be specified for any other actions.
- redirect_options SecurityPolicy Rule Redirect Options Response 
- Parameters defining the redirect action. Cannot be specified for any other actions. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- action String
- The Action to perform when the rule is matched. The following are the valid actions: - allow: allow access to target. - deny(STATUS): deny access to target, returns the HTTP response code specified. Valid values for STATUSare 403, 404, and 502. - rate_based_ban: limit client traffic to the configured threshold and ban the client if the traffic exceeds the threshold. Configure parameters for this action in RateLimitOptions. Requires rate_limit_options to be set. - redirect: redirect to a different target. This can either be an internal reCAPTCHA redirect, or an external URL-based redirect via a 302 response. Parameters for this action can be configured via redirectOptions. This action is only supported in Global Security Policies of type CLOUD_ARMOR. - throttle: limit client traffic to the configured threshold. Configure parameters for this action in rateLimitOptions. Requires rate_limit_options to be set for this.
- description String
- An optional description of this resource. Provide this property when you create the resource.
- headerAction Property Map
- Optional, additional actions that are performed on headers. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
- kind String
- [Output only] Type of the resource. Always compute#securityPolicyRule for security policy rules
- match Property Map
- A match condition that incoming traffic is evaluated against. If it evaluates to true, the corresponding 'action' is enforced.
- networkMatch Property Map
- A match condition that incoming packets are evaluated against for CLOUD_ARMOR_NETWORK security policies. If it matches, the corresponding 'action' is enforced. The match criteria for a rule consists of built-in match fields (like 'srcIpRanges') and potentially multiple user-defined match fields ('userDefinedFields'). Field values may be extracted directly from the packet or derived from it (e.g. 'srcRegionCodes'). Some fields may not be present in every packet (e.g. 'srcPorts'). A user-defined field is only present if the base header is found in the packet and the entire field is in bounds. Each match field may specify which values can match it, listing one or more ranges, prefixes, or exact values that are considered a match for the field. A field value must be present in order to match a specified match field. If no match values are specified for a match field, then any field value is considered to match it, and it's not required to be present. For strings specifying '*' is also equivalent to match all. For a packet to match a rule, all specified match fields must match the corresponding field values derived from the packet. Example: networkMatch: srcIpRanges: - "192.0.2.0/24" - "198.51.100.0/24" userDefinedFields: - name: "ipv4_fragment_offset" values: - "1-0x1fff" The above match condition matches packets with a source IP in 192.0.2.0/24 or 198.51.100.0/24 and a user-defined field named "ipv4_fragment_offset" with a value between 1 and 0x1fff inclusive.
- preconfiguredWaf Property MapConfig 
- Preconfigured WAF configuration to be applied for the rule. If the rule does not evaluate preconfigured WAF rules, i.e., if evaluatePreconfiguredWaf() is not used, this field will have no effect.
- preview Boolean
- If set to true, the specified action is not enforced.
- priority Number
- An integer indicating the priority of a rule in the list. The priority must be a positive value between 0 and 2147483647. Rules are evaluated from highest to lowest priority where 0 is the highest priority and 2147483647 is the lowest priority.
- rateLimit Property MapOptions 
- Must be specified if the action is "rate_based_ban" or "throttle". Cannot be specified for any other actions.
- redirectOptions Property Map
- Parameters defining the redirect action. Cannot be specified for any other actions. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
SecurityPolicyType, SecurityPolicyTypeArgs      
- CloudArmor 
- CLOUD_ARMOR
- CloudArmor Edge 
- CLOUD_ARMOR_EDGE
- CloudArmor Network 
- CLOUD_ARMOR_NETWORK
- SecurityPolicy Type Cloud Armor 
- CLOUD_ARMOR
- SecurityPolicy Type Cloud Armor Edge 
- CLOUD_ARMOR_EDGE
- SecurityPolicy Type Cloud Armor Network 
- CLOUD_ARMOR_NETWORK
- CloudArmor 
- CLOUD_ARMOR
- CloudArmor Edge 
- CLOUD_ARMOR_EDGE
- CloudArmor Network 
- CLOUD_ARMOR_NETWORK
- CloudArmor 
- CLOUD_ARMOR
- CloudArmor Edge 
- CLOUD_ARMOR_EDGE
- CloudArmor Network 
- CLOUD_ARMOR_NETWORK
- CLOUD_ARMOR
- CLOUD_ARMOR
- CLOUD_ARMOR_EDGE
- CLOUD_ARMOR_EDGE
- CLOUD_ARMOR_NETWORK
- CLOUD_ARMOR_NETWORK
- "CLOUD_ARMOR"
- CLOUD_ARMOR
- "CLOUD_ARMOR_EDGE"
- CLOUD_ARMOR_EDGE
- "CLOUD_ARMOR_NETWORK"
- CLOUD_ARMOR_NETWORK
SecurityPolicyUserDefinedField, SecurityPolicyUserDefinedFieldArgs          
- Base
Pulumi.Google Native. Compute. V1. Security Policy User Defined Field Base 
- The base relative to which 'offset' is measured. Possible values are: - IPV4: Points to the beginning of the IPv4 header. - IPV6: Points to the beginning of the IPv6 header. - TCP: Points to the beginning of the TCP header, skipping over any IPv4 options or IPv6 extension headers. Not present for non-first fragments. - UDP: Points to the beginning of the UDP header, skipping over any IPv4 options or IPv6 extension headers. Not present for non-first fragments. required
- Mask string
- If specified, apply this mask (bitwise AND) to the field to ignore bits before matching. Encoded as a hexadecimal number (starting with "0x"). The last byte of the field (in network byte order) corresponds to the least significant byte of the mask.
- Name string
- The name of this field. Must be unique within the policy.
- Offset int
- Offset of the first byte of the field (in network byte order) relative to 'base'.
- Size int
- Size of the field in bytes. Valid values: 1-4.
- Base
SecurityPolicy User Defined Field Base 
- The base relative to which 'offset' is measured. Possible values are: - IPV4: Points to the beginning of the IPv4 header. - IPV6: Points to the beginning of the IPv6 header. - TCP: Points to the beginning of the TCP header, skipping over any IPv4 options or IPv6 extension headers. Not present for non-first fragments. - UDP: Points to the beginning of the UDP header, skipping over any IPv4 options or IPv6 extension headers. Not present for non-first fragments. required
- Mask string
- If specified, apply this mask (bitwise AND) to the field to ignore bits before matching. Encoded as a hexadecimal number (starting with "0x"). The last byte of the field (in network byte order) corresponds to the least significant byte of the mask.
- Name string
- The name of this field. Must be unique within the policy.
- Offset int
- Offset of the first byte of the field (in network byte order) relative to 'base'.
- Size int
- Size of the field in bytes. Valid values: 1-4.
- base
SecurityPolicy User Defined Field Base 
- The base relative to which 'offset' is measured. Possible values are: - IPV4: Points to the beginning of the IPv4 header. - IPV6: Points to the beginning of the IPv6 header. - TCP: Points to the beginning of the TCP header, skipping over any IPv4 options or IPv6 extension headers. Not present for non-first fragments. - UDP: Points to the beginning of the UDP header, skipping over any IPv4 options or IPv6 extension headers. Not present for non-first fragments. required
- mask String
- If specified, apply this mask (bitwise AND) to the field to ignore bits before matching. Encoded as a hexadecimal number (starting with "0x"). The last byte of the field (in network byte order) corresponds to the least significant byte of the mask.
- name String
- The name of this field. Must be unique within the policy.
- offset Integer
- Offset of the first byte of the field (in network byte order) relative to 'base'.
- size Integer
- Size of the field in bytes. Valid values: 1-4.
- base
SecurityPolicy User Defined Field Base 
- The base relative to which 'offset' is measured. Possible values are: - IPV4: Points to the beginning of the IPv4 header. - IPV6: Points to the beginning of the IPv6 header. - TCP: Points to the beginning of the TCP header, skipping over any IPv4 options or IPv6 extension headers. Not present for non-first fragments. - UDP: Points to the beginning of the UDP header, skipping over any IPv4 options or IPv6 extension headers. Not present for non-first fragments. required
- mask string
- If specified, apply this mask (bitwise AND) to the field to ignore bits before matching. Encoded as a hexadecimal number (starting with "0x"). The last byte of the field (in network byte order) corresponds to the least significant byte of the mask.
- name string
- The name of this field. Must be unique within the policy.
- offset number
- Offset of the first byte of the field (in network byte order) relative to 'base'.
- size number
- Size of the field in bytes. Valid values: 1-4.
- base
SecurityPolicy User Defined Field Base 
- The base relative to which 'offset' is measured. Possible values are: - IPV4: Points to the beginning of the IPv4 header. - IPV6: Points to the beginning of the IPv6 header. - TCP: Points to the beginning of the TCP header, skipping over any IPv4 options or IPv6 extension headers. Not present for non-first fragments. - UDP: Points to the beginning of the UDP header, skipping over any IPv4 options or IPv6 extension headers. Not present for non-first fragments. required
- mask str
- If specified, apply this mask (bitwise AND) to the field to ignore bits before matching. Encoded as a hexadecimal number (starting with "0x"). The last byte of the field (in network byte order) corresponds to the least significant byte of the mask.
- name str
- The name of this field. Must be unique within the policy.
- offset int
- Offset of the first byte of the field (in network byte order) relative to 'base'.
- size int
- Size of the field in bytes. Valid values: 1-4.
- base "IPV4" | "IPV6" | "TCP" | "UDP"
- The base relative to which 'offset' is measured. Possible values are: - IPV4: Points to the beginning of the IPv4 header. - IPV6: Points to the beginning of the IPv6 header. - TCP: Points to the beginning of the TCP header, skipping over any IPv4 options or IPv6 extension headers. Not present for non-first fragments. - UDP: Points to the beginning of the UDP header, skipping over any IPv4 options or IPv6 extension headers. Not present for non-first fragments. required
- mask String
- If specified, apply this mask (bitwise AND) to the field to ignore bits before matching. Encoded as a hexadecimal number (starting with "0x"). The last byte of the field (in network byte order) corresponds to the least significant byte of the mask.
- name String
- The name of this field. Must be unique within the policy.
- offset Number
- Offset of the first byte of the field (in network byte order) relative to 'base'.
- size Number
- Size of the field in bytes. Valid values: 1-4.
SecurityPolicyUserDefinedFieldBase, SecurityPolicyUserDefinedFieldBaseArgs            
- Ipv4
- IPV4
- Ipv6
- IPV6
- Tcp
- TCP
- Udp
- UDP
- SecurityPolicy User Defined Field Base Ipv4 
- IPV4
- SecurityPolicy User Defined Field Base Ipv6 
- IPV6
- SecurityPolicy User Defined Field Base Tcp 
- TCP
- SecurityPolicy User Defined Field Base Udp 
- UDP
- Ipv4
- IPV4
- Ipv6
- IPV6
- Tcp
- TCP
- Udp
- UDP
- Ipv4
- IPV4
- Ipv6
- IPV6
- Tcp
- TCP
- Udp
- UDP
- IPV4
- IPV4
- IPV6
- IPV6
- TCP
- TCP
- UDP
- UDP
- "IPV4"
- IPV4
- "IPV6"
- IPV6
- "TCP"
- TCP
- "UDP"
- UDP
SecurityPolicyUserDefinedFieldResponse, SecurityPolicyUserDefinedFieldResponseArgs            
- Base string
- The base relative to which 'offset' is measured. Possible values are: - IPV4: Points to the beginning of the IPv4 header. - IPV6: Points to the beginning of the IPv6 header. - TCP: Points to the beginning of the TCP header, skipping over any IPv4 options or IPv6 extension headers. Not present for non-first fragments. - UDP: Points to the beginning of the UDP header, skipping over any IPv4 options or IPv6 extension headers. Not present for non-first fragments. required
- Mask string
- If specified, apply this mask (bitwise AND) to the field to ignore bits before matching. Encoded as a hexadecimal number (starting with "0x"). The last byte of the field (in network byte order) corresponds to the least significant byte of the mask.
- Name string
- The name of this field. Must be unique within the policy.
- Offset int
- Offset of the first byte of the field (in network byte order) relative to 'base'.
- Size int
- Size of the field in bytes. Valid values: 1-4.
- Base string
- The base relative to which 'offset' is measured. Possible values are: - IPV4: Points to the beginning of the IPv4 header. - IPV6: Points to the beginning of the IPv6 header. - TCP: Points to the beginning of the TCP header, skipping over any IPv4 options or IPv6 extension headers. Not present for non-first fragments. - UDP: Points to the beginning of the UDP header, skipping over any IPv4 options or IPv6 extension headers. Not present for non-first fragments. required
- Mask string
- If specified, apply this mask (bitwise AND) to the field to ignore bits before matching. Encoded as a hexadecimal number (starting with "0x"). The last byte of the field (in network byte order) corresponds to the least significant byte of the mask.
- Name string
- The name of this field. Must be unique within the policy.
- Offset int
- Offset of the first byte of the field (in network byte order) relative to 'base'.
- Size int
- Size of the field in bytes. Valid values: 1-4.
- base String
- The base relative to which 'offset' is measured. Possible values are: - IPV4: Points to the beginning of the IPv4 header. - IPV6: Points to the beginning of the IPv6 header. - TCP: Points to the beginning of the TCP header, skipping over any IPv4 options or IPv6 extension headers. Not present for non-first fragments. - UDP: Points to the beginning of the UDP header, skipping over any IPv4 options or IPv6 extension headers. Not present for non-first fragments. required
- mask String
- If specified, apply this mask (bitwise AND) to the field to ignore bits before matching. Encoded as a hexadecimal number (starting with "0x"). The last byte of the field (in network byte order) corresponds to the least significant byte of the mask.
- name String
- The name of this field. Must be unique within the policy.
- offset Integer
- Offset of the first byte of the field (in network byte order) relative to 'base'.
- size Integer
- Size of the field in bytes. Valid values: 1-4.
- base string
- The base relative to which 'offset' is measured. Possible values are: - IPV4: Points to the beginning of the IPv4 header. - IPV6: Points to the beginning of the IPv6 header. - TCP: Points to the beginning of the TCP header, skipping over any IPv4 options or IPv6 extension headers. Not present for non-first fragments. - UDP: Points to the beginning of the UDP header, skipping over any IPv4 options or IPv6 extension headers. Not present for non-first fragments. required
- mask string
- If specified, apply this mask (bitwise AND) to the field to ignore bits before matching. Encoded as a hexadecimal number (starting with "0x"). The last byte of the field (in network byte order) corresponds to the least significant byte of the mask.
- name string
- The name of this field. Must be unique within the policy.
- offset number
- Offset of the first byte of the field (in network byte order) relative to 'base'.
- size number
- Size of the field in bytes. Valid values: 1-4.
- base str
- The base relative to which 'offset' is measured. Possible values are: - IPV4: Points to the beginning of the IPv4 header. - IPV6: Points to the beginning of the IPv6 header. - TCP: Points to the beginning of the TCP header, skipping over any IPv4 options or IPv6 extension headers. Not present for non-first fragments. - UDP: Points to the beginning of the UDP header, skipping over any IPv4 options or IPv6 extension headers. Not present for non-first fragments. required
- mask str
- If specified, apply this mask (bitwise AND) to the field to ignore bits before matching. Encoded as a hexadecimal number (starting with "0x"). The last byte of the field (in network byte order) corresponds to the least significant byte of the mask.
- name str
- The name of this field. Must be unique within the policy.
- offset int
- Offset of the first byte of the field (in network byte order) relative to 'base'.
- size int
- Size of the field in bytes. Valid values: 1-4.
- base String
- The base relative to which 'offset' is measured. Possible values are: - IPV4: Points to the beginning of the IPv4 header. - IPV6: Points to the beginning of the IPv6 header. - TCP: Points to the beginning of the TCP header, skipping over any IPv4 options or IPv6 extension headers. Not present for non-first fragments. - UDP: Points to the beginning of the UDP header, skipping over any IPv4 options or IPv6 extension headers. Not present for non-first fragments. required
- mask String
- If specified, apply this mask (bitwise AND) to the field to ignore bits before matching. Encoded as a hexadecimal number (starting with "0x"). The last byte of the field (in network byte order) corresponds to the least significant byte of the mask.
- name String
- The name of this field. Must be unique within the policy.
- offset Number
- Offset of the first byte of the field (in network byte order) relative to 'base'.
- size Number
- Size of the field in bytes. Valid values: 1-4.
Package Details
- Repository
- Google Cloud Native pulumi/pulumi-google-native
- License
- Apache-2.0
Google Cloud Native is in preview. Google Cloud Classic is fully supported.