Class ComputeSecurityPolicyRuleA.Builder

    • Method Detail

      • connection

        @Stability(Experimental)
        public ComputeSecurityPolicyRuleA.Builder connection​(com.hashicorp.cdktf.SSHProvisionerConnection connection)
        Parameters:
        connection - This parameter is required.
        Returns:
        this
      • connection

        @Stability(Experimental)
        public ComputeSecurityPolicyRuleA.Builder connection​(com.hashicorp.cdktf.WinrmProvisionerConnection connection)
        Parameters:
        connection - This parameter is required.
        Returns:
        this
      • count

        @Stability(Experimental)
        public ComputeSecurityPolicyRuleA.Builder count​(com.hashicorp.cdktf.TerraformCount count)
        Parameters:
        count - This parameter is required.
        Returns:
        this
      • dependsOn

        @Stability(Experimental)
        public ComputeSecurityPolicyRuleA.Builder dependsOn​(List<? extends com.hashicorp.cdktf.ITerraformDependable> dependsOn)
        Parameters:
        dependsOn - This parameter is required.
        Returns:
        this
      • forEach

        @Stability(Experimental)
        public ComputeSecurityPolicyRuleA.Builder forEach​(com.hashicorp.cdktf.ITerraformIterator forEach)
        Parameters:
        forEach - This parameter is required.
        Returns:
        this
      • lifecycle

        @Stability(Experimental)
        public ComputeSecurityPolicyRuleA.Builder lifecycle​(com.hashicorp.cdktf.TerraformResourceLifecycle lifecycle)
        Parameters:
        lifecycle - This parameter is required.
        Returns:
        this
      • provider

        @Stability(Experimental)
        public ComputeSecurityPolicyRuleA.Builder provider​(com.hashicorp.cdktf.TerraformProvider provider)
        Parameters:
        provider - This parameter is required.
        Returns:
        this
      • action

        @Stability(Stable)
        public ComputeSecurityPolicyRuleA.Builder action​(String action)
        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 STATUS are 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 rateLimitOptions 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 rateLimitOptions to be set for this. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_security_policy_rule#action ComputeSecurityPolicyRuleA#action}

        Parameters:
        action - The Action to perform when the rule is matched. The following are the valid actions:. This parameter is required.
        Returns:
        this
      • priority

        @Stability(Stable)
        public ComputeSecurityPolicyRuleA.Builder priority​(Number priority)
        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. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_security_policy_rule#priority ComputeSecurityPolicyRuleA#priority}

        Parameters:
        priority - An integer indicating the priority of a rule in the list. This parameter is required.
        Returns:
        this
      • securityPolicy

        @Stability(Stable)
        public ComputeSecurityPolicyRuleA.Builder securityPolicy​(String securityPolicy)
        The name of the security policy this rule belongs to.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_security_policy_rule#security_policy ComputeSecurityPolicyRuleA#security_policy}

        Parameters:
        securityPolicy - The name of the security policy this rule belongs to. This parameter is required.
        Returns:
        this
      • description

        @Stability(Stable)
        public ComputeSecurityPolicyRuleA.Builder description​(String description)
        An optional description of this resource. Provide this property when you create the resource.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_security_policy_rule#description ComputeSecurityPolicyRuleA#description}

        Parameters:
        description - An optional description of this resource. Provide this property when you create the resource. This parameter is required.
        Returns:
        this
      • id

        @Stability(Stable)
        public ComputeSecurityPolicyRuleA.Builder id​(String id)
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_security_policy_rule#id ComputeSecurityPolicyRuleA#id}.

        Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2. If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable.

        Parameters:
        id - Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_security_policy_rule#id ComputeSecurityPolicyRuleA#id}. This parameter is required.
        Returns:
        this
      • match

        @Stability(Stable)
        public ComputeSecurityPolicyRuleA.Builder match​(ComputeSecurityPolicyRuleMatchA match)
        match block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_security_policy_rule#match ComputeSecurityPolicyRuleA#match}

        Parameters:
        match - match block. This parameter is required.
        Returns:
        this
      • preconfiguredWafConfig

        @Stability(Stable)
        public ComputeSecurityPolicyRuleA.Builder preconfiguredWafConfig​(ComputeSecurityPolicyRulePreconfiguredWafConfig preconfiguredWafConfig)
        preconfigured_waf_config block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_security_policy_rule#preconfigured_waf_config ComputeSecurityPolicyRuleA#preconfigured_waf_config}

        Parameters:
        preconfiguredWafConfig - preconfigured_waf_config block. This parameter is required.
        Returns:
        this
      • preview

        @Stability(Stable)
        public ComputeSecurityPolicyRuleA.Builder preview​(Boolean preview)
        If set to true, the specified action is not enforced.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_security_policy_rule#preview ComputeSecurityPolicyRuleA#preview}

        Parameters:
        preview - If set to true, the specified action is not enforced. This parameter is required.
        Returns:
        this
      • preview

        @Stability(Stable)
        public ComputeSecurityPolicyRuleA.Builder preview​(com.hashicorp.cdktf.IResolvable preview)
        If set to true, the specified action is not enforced.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_security_policy_rule#preview ComputeSecurityPolicyRuleA#preview}

        Parameters:
        preview - If set to true, the specified action is not enforced. This parameter is required.
        Returns:
        this
      • project

        @Stability(Stable)
        public ComputeSecurityPolicyRuleA.Builder project​(String project)
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_security_policy_rule#project ComputeSecurityPolicyRuleA#project}.

        Parameters:
        project - Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_security_policy_rule#project ComputeSecurityPolicyRuleA#project}. This parameter is required.
        Returns:
        this
      • rateLimitOptions

        @Stability(Stable)
        public ComputeSecurityPolicyRuleA.Builder rateLimitOptions​(ComputeSecurityPolicyRuleRateLimitOptionsA rateLimitOptions)
        rate_limit_options block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_security_policy_rule#rate_limit_options ComputeSecurityPolicyRuleA#rate_limit_options}

        Parameters:
        rateLimitOptions - rate_limit_options block. This parameter is required.
        Returns:
        this
      • timeouts

        @Stability(Stable)
        public ComputeSecurityPolicyRuleA.Builder timeouts​(ComputeSecurityPolicyRuleTimeouts timeouts)
        timeouts block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_security_policy_rule#timeouts ComputeSecurityPolicyRuleA#timeouts}

        Parameters:
        timeouts - timeouts block. This parameter is required.
        Returns:
        this