Interface SecurityPolicyRuleRateLimitOptionsOrBuilder

All Superinterfaces:
com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder
All Known Implementing Classes:
SecurityPolicyRuleRateLimitOptions, SecurityPolicyRuleRateLimitOptions.Builder

@Generated public interface SecurityPolicyRuleRateLimitOptionsOrBuilder extends com.google.protobuf.MessageOrBuilder
  • Method Details

    • hasBanDurationSec

      boolean hasBanDurationSec()
       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.
       
      optional int32 ban_duration_sec = 42896726;
      Returns:
      Whether the banDurationSec field is set.
    • getBanDurationSec

      int 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.
       
      optional int32 ban_duration_sec = 42896726;
      Returns:
      The banDurationSec.
    • hasBanThreshold

      boolean hasBanThreshold()
       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'.
       
      optional .google.cloud.compute.v1.SecurityPolicyRuleRateLimitOptionsThreshold ban_threshold = 501208123;
      Returns:
      Whether the banThreshold field is set.
    • getBanThreshold

       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'.
       
      optional .google.cloud.compute.v1.SecurityPolicyRuleRateLimitOptionsThreshold ban_threshold = 501208123;
      Returns:
      The banThreshold.
    • getBanThresholdOrBuilder

       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'.
       
      optional .google.cloud.compute.v1.SecurityPolicyRuleRateLimitOptionsThreshold ban_threshold = 501208123;
    • hasConformAction

      boolean hasConformAction()
       Action to take for requests that are under the configured rate limit
       threshold. Valid option is "allow" only.
       
      optional string conform_action = 517612367;
      Returns:
      Whether the conformAction field is set.
    • getConformAction

      String getConformAction()
       Action to take for requests that are under the configured rate limit
       threshold. Valid option is "allow" only.
       
      optional string conform_action = 517612367;
      Returns:
      The conformAction.
    • getConformActionBytes

      com.google.protobuf.ByteString getConformActionBytes()
       Action to take for requests that are under the configured rate limit
       threshold. Valid option is "allow" only.
       
      optional string conform_action = 517612367;
      Returns:
      The bytes for conformAction.
    • hasEnforceOnKey

      boolean hasEnforceOnKey()
       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 toALL.
       - 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 toALL.
       - 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.
       - TLS_JA3_FINGERPRINT: JA3 TLS/SSL fingerprint if the
       client connects using HTTPS, HTTP/2 or HTTP/3. If not available, the
       key type defaults to ALL.
       - USER_IP: The IP address of the originating client,
       which is resolved based on "userIpRequestHeaders" configured with the
       security policy. If there is no "userIpRequestHeaders" configuration or
       an IP address cannot be resolved from it, the key type defaults toIP.
      
       - TLS_JA4_FINGERPRINT: JA4 TLS/SSL fingerprint if the
       client connects using HTTPS, HTTP/2 or HTTP/3. If not available, the
       key type defaults to ALL.
       For "fairshare" action, this value is limited to ALL i.e. a single rate
       limit threshold is enforced for all the requests matching the rule.
       Check the EnforceOnKey enum for the list of possible values.
       
      optional string enforce_on_key = 416648956;
      Returns:
      Whether the enforceOnKey field is set.
    • getEnforceOnKey

      String getEnforceOnKey()
       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 toALL.
       - 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 toALL.
       - 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.
       - TLS_JA3_FINGERPRINT: JA3 TLS/SSL fingerprint if the
       client connects using HTTPS, HTTP/2 or HTTP/3. If not available, the
       key type defaults to ALL.
       - USER_IP: The IP address of the originating client,
       which is resolved based on "userIpRequestHeaders" configured with the
       security policy. If there is no "userIpRequestHeaders" configuration or
       an IP address cannot be resolved from it, the key type defaults toIP.
      
       - TLS_JA4_FINGERPRINT: JA4 TLS/SSL fingerprint if the
       client connects using HTTPS, HTTP/2 or HTTP/3. If not available, the
       key type defaults to ALL.
       For "fairshare" action, this value is limited to ALL i.e. a single rate
       limit threshold is enforced for all the requests matching the rule.
       Check the EnforceOnKey enum for the list of possible values.
       
      optional string enforce_on_key = 416648956;
      Returns:
      The enforceOnKey.
    • getEnforceOnKeyBytes

      com.google.protobuf.ByteString getEnforceOnKeyBytes()
       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 toALL.
       - 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 toALL.
       - 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.
       - TLS_JA3_FINGERPRINT: JA3 TLS/SSL fingerprint if the
       client connects using HTTPS, HTTP/2 or HTTP/3. If not available, the
       key type defaults to ALL.
       - USER_IP: The IP address of the originating client,
       which is resolved based on "userIpRequestHeaders" configured with the
       security policy. If there is no "userIpRequestHeaders" configuration or
       an IP address cannot be resolved from it, the key type defaults toIP.
      
       - TLS_JA4_FINGERPRINT: JA4 TLS/SSL fingerprint if the
       client connects using HTTPS, HTTP/2 or HTTP/3. If not available, the
       key type defaults to ALL.
       For "fairshare" action, this value is limited to ALL i.e. a single rate
       limit threshold is enforced for all the requests matching the rule.
       Check the EnforceOnKey enum for the list of possible values.
       
      optional string enforce_on_key = 416648956;
      Returns:
      The bytes for enforceOnKey.
    • getEnforceOnKeyConfigsList

       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.
       
      repeated .google.cloud.compute.v1.SecurityPolicyRuleRateLimitOptionsEnforceOnKeyConfig enforce_on_key_configs = 33906478;
    • getEnforceOnKeyConfigs

      SecurityPolicyRuleRateLimitOptionsEnforceOnKeyConfig getEnforceOnKeyConfigs(int index)
       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.
       
      repeated .google.cloud.compute.v1.SecurityPolicyRuleRateLimitOptionsEnforceOnKeyConfig enforce_on_key_configs = 33906478;
    • getEnforceOnKeyConfigsCount

      int getEnforceOnKeyConfigsCount()
       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.
       
      repeated .google.cloud.compute.v1.SecurityPolicyRuleRateLimitOptionsEnforceOnKeyConfig enforce_on_key_configs = 33906478;
    • getEnforceOnKeyConfigsOrBuilderList

      List<? extends SecurityPolicyRuleRateLimitOptionsEnforceOnKeyConfigOrBuilder> getEnforceOnKeyConfigsOrBuilderList()
       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.
       
      repeated .google.cloud.compute.v1.SecurityPolicyRuleRateLimitOptionsEnforceOnKeyConfig enforce_on_key_configs = 33906478;
    • getEnforceOnKeyConfigsOrBuilder

      SecurityPolicyRuleRateLimitOptionsEnforceOnKeyConfigOrBuilder getEnforceOnKeyConfigsOrBuilder(int index)
       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.
       
      repeated .google.cloud.compute.v1.SecurityPolicyRuleRateLimitOptionsEnforceOnKeyConfig enforce_on_key_configs = 33906478;
    • hasEnforceOnKeyName

      boolean hasEnforceOnKeyName()
       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.
       
      optional string enforce_on_key_name = 132555246;
      Returns:
      Whether the enforceOnKeyName field is set.
    • getEnforceOnKeyName

      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.
       
      optional string enforce_on_key_name = 132555246;
      Returns:
      The enforceOnKeyName.
    • getEnforceOnKeyNameBytes

      com.google.protobuf.ByteString getEnforceOnKeyNameBytes()
       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.
       
      optional string enforce_on_key_name = 132555246;
      Returns:
      The bytes for enforceOnKeyName.
    • hasExceedAction

      boolean hasExceedAction()
       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 for
       `STATUS` are 403, 404, 429, and 502, and
       `redirect`, where the redirect parameters come from
       `exceedRedirectOptions` below.
       The `redirect` action is only supported in Global Security Policies of
       type CLOUD_ARMOR.
       
      optional string exceed_action = 167159073;
      Returns:
      Whether the exceedAction field is set.
    • getExceedAction

      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(STATUS)`, where valid values for
       `STATUS` are 403, 404, 429, and 502, and
       `redirect`, where the redirect parameters come from
       `exceedRedirectOptions` below.
       The `redirect` action is only supported in Global Security Policies of
       type CLOUD_ARMOR.
       
      optional string exceed_action = 167159073;
      Returns:
      The exceedAction.
    • getExceedActionBytes

      com.google.protobuf.ByteString getExceedActionBytes()
       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 for
       `STATUS` are 403, 404, 429, and 502, and
       `redirect`, where the redirect parameters come from
       `exceedRedirectOptions` below.
       The `redirect` action is only supported in Global Security Policies of
       type CLOUD_ARMOR.
       
      optional string exceed_action = 167159073;
      Returns:
      The bytes for exceedAction.
    • hasExceedRedirectOptions

      boolean hasExceedRedirectOptions()
       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.
       
      optional .google.cloud.compute.v1.SecurityPolicyRuleRedirectOptions exceed_redirect_options = 473646694;
      Returns:
      Whether the exceedRedirectOptions field is set.
    • getExceedRedirectOptions

      SecurityPolicyRuleRedirectOptions getExceedRedirectOptions()
       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.
       
      optional .google.cloud.compute.v1.SecurityPolicyRuleRedirectOptions exceed_redirect_options = 473646694;
      Returns:
      The exceedRedirectOptions.
    • getExceedRedirectOptionsOrBuilder

      SecurityPolicyRuleRedirectOptionsOrBuilder getExceedRedirectOptionsOrBuilder()
       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.
       
      optional .google.cloud.compute.v1.SecurityPolicyRuleRedirectOptions exceed_redirect_options = 473646694;
    • hasRateLimitThreshold

      boolean hasRateLimitThreshold()
       Threshold at which to begin ratelimiting.
       
      optional .google.cloud.compute.v1.SecurityPolicyRuleRateLimitOptionsThreshold rate_limit_threshold = 315875208;
      Returns:
      Whether the rateLimitThreshold field is set.
    • getRateLimitThreshold

       Threshold at which to begin ratelimiting.
       
      optional .google.cloud.compute.v1.SecurityPolicyRuleRateLimitOptionsThreshold rate_limit_threshold = 315875208;
      Returns:
      The rateLimitThreshold.
    • getRateLimitThresholdOrBuilder

       Threshold at which to begin ratelimiting.
       
      optional .google.cloud.compute.v1.SecurityPolicyRuleRateLimitOptionsThreshold rate_limit_threshold = 315875208;