Interface ComputeSecurityPolicyRuleRateLimitOptions

  • All Superinterfaces:
    software.amazon.jsii.JsiiSerializable
    All Known Implementing Classes:
    ComputeSecurityPolicyRuleRateLimitOptions.Jsii$Proxy

    @Generated(value="jsii-pacmak/1.102.0 (build e354887)",
               date="2024-08-31T03:59:18.960Z")
    @Stability(Stable)
    public interface ComputeSecurityPolicyRuleRateLimitOptions
    extends software.amazon.jsii.JsiiSerializable
    • Method Detail

      • getConformAction

        @Stability(Stable)
        @NotNull
        String getConformAction()
        Action to take for requests that are under the configured rate limit threshold. Valid option is "allow" only.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_security_policy#conform_action ComputeSecurityPolicy#conform_action}

      • getExceedAction

        @Stability(Stable)
        @NotNull
        String getExceedAction()
        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()" where valid values for status are 403, 404, 429, and 502, and "redirect" where the redirect parameters come from exceedRedirectOptions below. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_security_policy#exceed_action ComputeSecurityPolicy#exceed_action}

      • getRateLimitThreshold

        @Stability(Stable)
        @NotNull
        ComputeSecurityPolicyRuleRateLimitOptionsRateLimitThreshold getRateLimitThreshold()
        rate_limit_threshold block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_security_policy#rate_limit_threshold ComputeSecurityPolicy#rate_limit_threshold}

      • getBanDurationSec

        @Stability(Stable)
        @Nullable
        default Number getBanDurationSec()
        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. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_security_policy#ban_duration_sec ComputeSecurityPolicy#ban_duration_sec}

      • getBanThreshold

        @Stability(Stable)
        @Nullable
        default ComputeSecurityPolicyRuleRateLimitOptionsBanThreshold getBanThreshold()
        ban_threshold block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_security_policy#ban_threshold ComputeSecurityPolicy#ban_threshold}

      • getEnforceOnKey

        @Stability(Stable)
        @Nullable
        default String getEnforceOnKey()
        Determines the key to enforce the rateLimitThreshold on.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_security_policy#enforce_on_key ComputeSecurityPolicy#enforce_on_key}

      • getEnforceOnKeyName

        @Stability(Stable)
        @Nullable
        default String getEnforceOnKeyName()
        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. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_security_policy#enforce_on_key_name ComputeSecurityPolicy#enforce_on_key_name}

      • getExceedRedirectOptions

        @Stability(Stable)
        @Nullable
        default ComputeSecurityPolicyRuleRateLimitOptionsExceedRedirectOptions getExceedRedirectOptions()
        exceed_redirect_options block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/compute_security_policy#exceed_redirect_options ComputeSecurityPolicy#exceed_redirect_options}