Class SecurityPolicyRuleRateLimitOptions.Builder (1.24.0)

public static final class SecurityPolicyRuleRateLimitOptions.Builder extends GeneratedMessageV3.Builder<SecurityPolicyRuleRateLimitOptions.Builder> implements SecurityPolicyRuleRateLimitOptionsOrBuilder

Protobuf type google.cloud.compute.v1.SecurityPolicyRuleRateLimitOptions

Static Methods

getDescriptor()

public static final Descriptors.Descriptor getDescriptor()
Returns
TypeDescription
Descriptor

Methods

addRepeatedField(Descriptors.FieldDescriptor field, Object value)

public SecurityPolicyRuleRateLimitOptions.Builder addRepeatedField(Descriptors.FieldDescriptor field, Object value)
Parameters
NameDescription
fieldFieldDescriptor
valueObject
Returns
TypeDescription
SecurityPolicyRuleRateLimitOptions.Builder
Overrides

build()

public SecurityPolicyRuleRateLimitOptions build()
Returns
TypeDescription
SecurityPolicyRuleRateLimitOptions

buildPartial()

public SecurityPolicyRuleRateLimitOptions buildPartial()
Returns
TypeDescription
SecurityPolicyRuleRateLimitOptions

clear()

public SecurityPolicyRuleRateLimitOptions.Builder clear()
Returns
TypeDescription
SecurityPolicyRuleRateLimitOptions.Builder
Overrides

clearBanDurationSec()

public SecurityPolicyRuleRateLimitOptions.Builder clearBanDurationSec()

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
TypeDescription
SecurityPolicyRuleRateLimitOptions.Builder

This builder for chaining.

clearBanThreshold()

public SecurityPolicyRuleRateLimitOptions.Builder clearBanThreshold()

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
TypeDescription
SecurityPolicyRuleRateLimitOptions.Builder

clearConformAction()

public SecurityPolicyRuleRateLimitOptions.Builder clearConformAction()

Action to take for requests that are under the configured rate limit threshold. Valid option is "allow" only.

optional string conform_action = 517612367;

Returns
TypeDescription
SecurityPolicyRuleRateLimitOptions.Builder

This builder for chaining.

clearEnforceOnKey()

public SecurityPolicyRuleRateLimitOptions.Builder clearEnforceOnKey()

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. Check the EnforceOnKey enum for the list of possible values.

optional string enforce_on_key = 416648956;

Returns
TypeDescription
SecurityPolicyRuleRateLimitOptions.Builder

This builder for chaining.

clearEnforceOnKeyName()

public SecurityPolicyRuleRateLimitOptions.Builder clearEnforceOnKeyName()

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
TypeDescription
SecurityPolicyRuleRateLimitOptions.Builder

This builder for chaining.

clearExceedAction()

public SecurityPolicyRuleRateLimitOptions.Builder clearExceedAction()

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.

optional string exceed_action = 167159073;

Returns
TypeDescription
SecurityPolicyRuleRateLimitOptions.Builder

This builder for chaining.

clearExceedRedirectOptions()

public SecurityPolicyRuleRateLimitOptions.Builder clearExceedRedirectOptions()

Parameters defining the redirect action that is used as the exceed action. Cannot be specified if the exceed action is not redirect.

optional .google.cloud.compute.v1.SecurityPolicyRuleRedirectOptions exceed_redirect_options = 473646694;

Returns
TypeDescription
SecurityPolicyRuleRateLimitOptions.Builder

clearField(Descriptors.FieldDescriptor field)

public SecurityPolicyRuleRateLimitOptions.Builder clearField(Descriptors.FieldDescriptor field)
Parameter
NameDescription
fieldFieldDescriptor
Returns
TypeDescription
SecurityPolicyRuleRateLimitOptions.Builder
Overrides

clearOneof(Descriptors.OneofDescriptor oneof)

public SecurityPolicyRuleRateLimitOptions.Builder clearOneof(Descriptors.OneofDescriptor oneof)
Parameter
NameDescription
oneofOneofDescriptor
Returns
TypeDescription
SecurityPolicyRuleRateLimitOptions.Builder
Overrides

clearRateLimitThreshold()

public SecurityPolicyRuleRateLimitOptions.Builder clearRateLimitThreshold()

Threshold at which to begin ratelimiting.

optional .google.cloud.compute.v1.SecurityPolicyRuleRateLimitOptionsThreshold rate_limit_threshold = 315875208;

Returns
TypeDescription
SecurityPolicyRuleRateLimitOptions.Builder

clone()

public SecurityPolicyRuleRateLimitOptions.Builder clone()
Returns
TypeDescription
SecurityPolicyRuleRateLimitOptions.Builder
Overrides

getBanDurationSec()

public 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
TypeDescription
int

The banDurationSec.

getBanThreshold()

public SecurityPolicyRuleRateLimitOptionsThreshold 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
TypeDescription
SecurityPolicyRuleRateLimitOptionsThreshold

The banThreshold.

getBanThresholdBuilder()

public SecurityPolicyRuleRateLimitOptionsThreshold.Builder getBanThresholdBuilder()

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
TypeDescription
SecurityPolicyRuleRateLimitOptionsThreshold.Builder

getBanThresholdOrBuilder()

public SecurityPolicyRuleRateLimitOptionsThresholdOrBuilder 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;

Returns
TypeDescription
SecurityPolicyRuleRateLimitOptionsThresholdOrBuilder

getConformAction()

public 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
TypeDescription
String

The conformAction.

getConformActionBytes()

public 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
TypeDescription
ByteString

The bytes for conformAction.

getDefaultInstanceForType()

public SecurityPolicyRuleRateLimitOptions getDefaultInstanceForType()
Returns
TypeDescription
SecurityPolicyRuleRateLimitOptions

getDescriptorForType()

public Descriptors.Descriptor getDescriptorForType()
Returns
TypeDescription
Descriptor
Overrides

getEnforceOnKey()

public 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 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. Check the EnforceOnKey enum for the list of possible values.

optional string enforce_on_key = 416648956;

Returns
TypeDescription
String

The enforceOnKey.

getEnforceOnKeyBytes()

public 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 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. Check the EnforceOnKey enum for the list of possible values.

optional string enforce_on_key = 416648956;

Returns
TypeDescription
ByteString

The bytes for enforceOnKey.

getEnforceOnKeyName()

public 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
TypeDescription
String

The enforceOnKeyName.

getEnforceOnKeyNameBytes()

public 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
TypeDescription
ByteString

The bytes for enforceOnKeyName.

getExceedAction()

public 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.

optional string exceed_action = 167159073;

Returns
TypeDescription
String

The exceedAction.

getExceedActionBytes()

public 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.

optional string exceed_action = 167159073;

Returns
TypeDescription
ByteString

The bytes for exceedAction.

getExceedRedirectOptions()

public SecurityPolicyRuleRedirectOptions getExceedRedirectOptions()

Parameters defining the redirect action that is used as the exceed action. Cannot be specified if the exceed action is not redirect.

optional .google.cloud.compute.v1.SecurityPolicyRuleRedirectOptions exceed_redirect_options = 473646694;

Returns
TypeDescription
SecurityPolicyRuleRedirectOptions

The exceedRedirectOptions.

getExceedRedirectOptionsBuilder()

public SecurityPolicyRuleRedirectOptions.Builder getExceedRedirectOptionsBuilder()

Parameters defining the redirect action that is used as the exceed action. Cannot be specified if the exceed action is not redirect.

optional .google.cloud.compute.v1.SecurityPolicyRuleRedirectOptions exceed_redirect_options = 473646694;

Returns
TypeDescription
SecurityPolicyRuleRedirectOptions.Builder

getExceedRedirectOptionsOrBuilder()

public SecurityPolicyRuleRedirectOptionsOrBuilder getExceedRedirectOptionsOrBuilder()

Parameters defining the redirect action that is used as the exceed action. Cannot be specified if the exceed action is not redirect.

optional .google.cloud.compute.v1.SecurityPolicyRuleRedirectOptions exceed_redirect_options = 473646694;

Returns
TypeDescription
SecurityPolicyRuleRedirectOptionsOrBuilder

getRateLimitThreshold()

public SecurityPolicyRuleRateLimitOptionsThreshold getRateLimitThreshold()

Threshold at which to begin ratelimiting.

optional .google.cloud.compute.v1.SecurityPolicyRuleRateLimitOptionsThreshold rate_limit_threshold = 315875208;

Returns
TypeDescription
SecurityPolicyRuleRateLimitOptionsThreshold

The rateLimitThreshold.

getRateLimitThresholdBuilder()

public SecurityPolicyRuleRateLimitOptionsThreshold.Builder getRateLimitThresholdBuilder()

Threshold at which to begin ratelimiting.

optional .google.cloud.compute.v1.SecurityPolicyRuleRateLimitOptionsThreshold rate_limit_threshold = 315875208;

Returns
TypeDescription
SecurityPolicyRuleRateLimitOptionsThreshold.Builder

getRateLimitThresholdOrBuilder()

public SecurityPolicyRuleRateLimitOptionsThresholdOrBuilder getRateLimitThresholdOrBuilder()

Threshold at which to begin ratelimiting.

optional .google.cloud.compute.v1.SecurityPolicyRuleRateLimitOptionsThreshold rate_limit_threshold = 315875208;

Returns
TypeDescription
SecurityPolicyRuleRateLimitOptionsThresholdOrBuilder

hasBanDurationSec()

public 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
TypeDescription
boolean

Whether the banDurationSec field is set.

hasBanThreshold()

public 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
TypeDescription
boolean

Whether the banThreshold field is set.

hasConformAction()

public 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
TypeDescription
boolean

Whether the conformAction field is set.

hasEnforceOnKey()

public 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 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. Check the EnforceOnKey enum for the list of possible values.

optional string enforce_on_key = 416648956;

Returns
TypeDescription
boolean

Whether the enforceOnKey field is set.

hasEnforceOnKeyName()

public 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
TypeDescription
boolean

Whether the enforceOnKeyName field is set.

hasExceedAction()

public 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.

optional string exceed_action = 167159073;

Returns
TypeDescription
boolean

Whether the exceedAction field is set.

hasExceedRedirectOptions()

public boolean hasExceedRedirectOptions()

Parameters defining the redirect action that is used as the exceed action. Cannot be specified if the exceed action is not redirect.

optional .google.cloud.compute.v1.SecurityPolicyRuleRedirectOptions exceed_redirect_options = 473646694;

Returns
TypeDescription
boolean

Whether the exceedRedirectOptions field is set.

hasRateLimitThreshold()

public boolean hasRateLimitThreshold()

Threshold at which to begin ratelimiting.

optional .google.cloud.compute.v1.SecurityPolicyRuleRateLimitOptionsThreshold rate_limit_threshold = 315875208;

Returns
TypeDescription
boolean

Whether the rateLimitThreshold field is set.

internalGetFieldAccessorTable()

protected GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
Returns
TypeDescription
FieldAccessorTable
Overrides

isInitialized()

public final boolean isInitialized()
Returns
TypeDescription
boolean
Overrides

mergeBanThreshold(SecurityPolicyRuleRateLimitOptionsThreshold value)

public SecurityPolicyRuleRateLimitOptions.Builder mergeBanThreshold(SecurityPolicyRuleRateLimitOptionsThreshold value)

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;

Parameter
NameDescription
valueSecurityPolicyRuleRateLimitOptionsThreshold
Returns
TypeDescription
SecurityPolicyRuleRateLimitOptions.Builder

mergeExceedRedirectOptions(SecurityPolicyRuleRedirectOptions value)

public SecurityPolicyRuleRateLimitOptions.Builder mergeExceedRedirectOptions(SecurityPolicyRuleRedirectOptions value)

Parameters defining the redirect action that is used as the exceed action. Cannot be specified if the exceed action is not redirect.

optional .google.cloud.compute.v1.SecurityPolicyRuleRedirectOptions exceed_redirect_options = 473646694;

Parameter
NameDescription
valueSecurityPolicyRuleRedirectOptions
Returns
TypeDescription
SecurityPolicyRuleRateLimitOptions.Builder

mergeFrom(SecurityPolicyRuleRateLimitOptions other)

public SecurityPolicyRuleRateLimitOptions.Builder mergeFrom(SecurityPolicyRuleRateLimitOptions other)
Parameter
NameDescription
otherSecurityPolicyRuleRateLimitOptions
Returns
TypeDescription
SecurityPolicyRuleRateLimitOptions.Builder

mergeFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)

public SecurityPolicyRuleRateLimitOptions.Builder mergeFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
NameDescription
inputCodedInputStream
extensionRegistryExtensionRegistryLite
Returns
TypeDescription
SecurityPolicyRuleRateLimitOptions.Builder
Overrides
Exceptions
TypeDescription
IOException

mergeFrom(Message other)

public SecurityPolicyRuleRateLimitOptions.Builder mergeFrom(Message other)
Parameter
NameDescription
otherMessage
Returns
TypeDescription
SecurityPolicyRuleRateLimitOptions.Builder
Overrides

mergeRateLimitThreshold(SecurityPolicyRuleRateLimitOptionsThreshold value)

public SecurityPolicyRuleRateLimitOptions.Builder mergeRateLimitThreshold(SecurityPolicyRuleRateLimitOptionsThreshold value)

Threshold at which to begin ratelimiting.

optional .google.cloud.compute.v1.SecurityPolicyRuleRateLimitOptionsThreshold rate_limit_threshold = 315875208;

Parameter
NameDescription
valueSecurityPolicyRuleRateLimitOptionsThreshold
Returns
TypeDescription
SecurityPolicyRuleRateLimitOptions.Builder

mergeUnknownFields(UnknownFieldSet unknownFields)

public final SecurityPolicyRuleRateLimitOptions.Builder mergeUnknownFields(UnknownFieldSet unknownFields)
Parameter
NameDescription
unknownFieldsUnknownFieldSet
Returns
TypeDescription
SecurityPolicyRuleRateLimitOptions.Builder
Overrides

setBanDurationSec(int value)

public SecurityPolicyRuleRateLimitOptions.Builder setBanDurationSec(int value)

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;

Parameter
NameDescription
valueint

The banDurationSec to set.

Returns
TypeDescription
SecurityPolicyRuleRateLimitOptions.Builder

This builder for chaining.

setBanThreshold(SecurityPolicyRuleRateLimitOptionsThreshold value)

public SecurityPolicyRuleRateLimitOptions.Builder setBanThreshold(SecurityPolicyRuleRateLimitOptionsThreshold value)

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;

Parameter
NameDescription
valueSecurityPolicyRuleRateLimitOptionsThreshold
Returns
TypeDescription
SecurityPolicyRuleRateLimitOptions.Builder

setBanThreshold(SecurityPolicyRuleRateLimitOptionsThreshold.Builder builderForValue)

public SecurityPolicyRuleRateLimitOptions.Builder setBanThreshold(SecurityPolicyRuleRateLimitOptionsThreshold.Builder builderForValue)

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;

Parameter
NameDescription
builderForValueSecurityPolicyRuleRateLimitOptionsThreshold.Builder
Returns
TypeDescription
SecurityPolicyRuleRateLimitOptions.Builder

setConformAction(String value)

public SecurityPolicyRuleRateLimitOptions.Builder setConformAction(String value)

Action to take for requests that are under the configured rate limit threshold. Valid option is "allow" only.

optional string conform_action = 517612367;

Parameter
NameDescription
valueString

The conformAction to set.

Returns
TypeDescription
SecurityPolicyRuleRateLimitOptions.Builder

This builder for chaining.

setConformActionBytes(ByteString value)

public SecurityPolicyRuleRateLimitOptions.Builder setConformActionBytes(ByteString value)

Action to take for requests that are under the configured rate limit threshold. Valid option is "allow" only.

optional string conform_action = 517612367;

Parameter
NameDescription
valueByteString

The bytes for conformAction to set.

Returns
TypeDescription
SecurityPolicyRuleRateLimitOptions.Builder

This builder for chaining.

setEnforceOnKey(String value)

public SecurityPolicyRuleRateLimitOptions.Builder setEnforceOnKey(String value)

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. Check the EnforceOnKey enum for the list of possible values.

optional string enforce_on_key = 416648956;

Parameter
NameDescription
valueString

The enforceOnKey to set.

Returns
TypeDescription
SecurityPolicyRuleRateLimitOptions.Builder

This builder for chaining.

setEnforceOnKeyBytes(ByteString value)

public SecurityPolicyRuleRateLimitOptions.Builder setEnforceOnKeyBytes(ByteString value)

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. Check the EnforceOnKey enum for the list of possible values.

optional string enforce_on_key = 416648956;

Parameter
NameDescription
valueByteString

The bytes for enforceOnKey to set.

Returns
TypeDescription
SecurityPolicyRuleRateLimitOptions.Builder

This builder for chaining.

setEnforceOnKeyName(String value)

public SecurityPolicyRuleRateLimitOptions.Builder setEnforceOnKeyName(String value)

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;

Parameter
NameDescription
valueString

The enforceOnKeyName to set.

Returns
TypeDescription
SecurityPolicyRuleRateLimitOptions.Builder

This builder for chaining.

setEnforceOnKeyNameBytes(ByteString value)

public SecurityPolicyRuleRateLimitOptions.Builder setEnforceOnKeyNameBytes(ByteString value)

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;

Parameter
NameDescription
valueByteString

The bytes for enforceOnKeyName to set.

Returns
TypeDescription
SecurityPolicyRuleRateLimitOptions.Builder

This builder for chaining.

setExceedAction(String value)

public SecurityPolicyRuleRateLimitOptions.Builder setExceedAction(String value)

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.

optional string exceed_action = 167159073;

Parameter
NameDescription
valueString

The exceedAction to set.

Returns
TypeDescription
SecurityPolicyRuleRateLimitOptions.Builder

This builder for chaining.

setExceedActionBytes(ByteString value)

public SecurityPolicyRuleRateLimitOptions.Builder setExceedActionBytes(ByteString value)

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.

optional string exceed_action = 167159073;

Parameter
NameDescription
valueByteString

The bytes for exceedAction to set.

Returns
TypeDescription
SecurityPolicyRuleRateLimitOptions.Builder

This builder for chaining.

setExceedRedirectOptions(SecurityPolicyRuleRedirectOptions value)

public SecurityPolicyRuleRateLimitOptions.Builder setExceedRedirectOptions(SecurityPolicyRuleRedirectOptions value)

Parameters defining the redirect action that is used as the exceed action. Cannot be specified if the exceed action is not redirect.

optional .google.cloud.compute.v1.SecurityPolicyRuleRedirectOptions exceed_redirect_options = 473646694;

Parameter
NameDescription
valueSecurityPolicyRuleRedirectOptions
Returns
TypeDescription
SecurityPolicyRuleRateLimitOptions.Builder

setExceedRedirectOptions(SecurityPolicyRuleRedirectOptions.Builder builderForValue)

public SecurityPolicyRuleRateLimitOptions.Builder setExceedRedirectOptions(SecurityPolicyRuleRedirectOptions.Builder builderForValue)

Parameters defining the redirect action that is used as the exceed action. Cannot be specified if the exceed action is not redirect.

optional .google.cloud.compute.v1.SecurityPolicyRuleRedirectOptions exceed_redirect_options = 473646694;

Parameter
NameDescription
builderForValueSecurityPolicyRuleRedirectOptions.Builder
Returns
TypeDescription
SecurityPolicyRuleRateLimitOptions.Builder

setField(Descriptors.FieldDescriptor field, Object value)

public SecurityPolicyRuleRateLimitOptions.Builder setField(Descriptors.FieldDescriptor field, Object value)
Parameters
NameDescription
fieldFieldDescriptor
valueObject
Returns
TypeDescription
SecurityPolicyRuleRateLimitOptions.Builder
Overrides

setRateLimitThreshold(SecurityPolicyRuleRateLimitOptionsThreshold value)

public SecurityPolicyRuleRateLimitOptions.Builder setRateLimitThreshold(SecurityPolicyRuleRateLimitOptionsThreshold value)

Threshold at which to begin ratelimiting.

optional .google.cloud.compute.v1.SecurityPolicyRuleRateLimitOptionsThreshold rate_limit_threshold = 315875208;

Parameter
NameDescription
valueSecurityPolicyRuleRateLimitOptionsThreshold
Returns
TypeDescription
SecurityPolicyRuleRateLimitOptions.Builder

setRateLimitThreshold(SecurityPolicyRuleRateLimitOptionsThreshold.Builder builderForValue)

public SecurityPolicyRuleRateLimitOptions.Builder setRateLimitThreshold(SecurityPolicyRuleRateLimitOptionsThreshold.Builder builderForValue)

Threshold at which to begin ratelimiting.

optional .google.cloud.compute.v1.SecurityPolicyRuleRateLimitOptionsThreshold rate_limit_threshold = 315875208;

Parameter
NameDescription
builderForValueSecurityPolicyRuleRateLimitOptionsThreshold.Builder
Returns
TypeDescription
SecurityPolicyRuleRateLimitOptions.Builder

setRepeatedField(Descriptors.FieldDescriptor field, int index, Object value)

public SecurityPolicyRuleRateLimitOptions.Builder setRepeatedField(Descriptors.FieldDescriptor field, int index, Object value)
Parameters
NameDescription
fieldFieldDescriptor
indexint
valueObject
Returns
TypeDescription
SecurityPolicyRuleRateLimitOptions.Builder
Overrides

setUnknownFields(UnknownFieldSet unknownFields)

public final SecurityPolicyRuleRateLimitOptions.Builder setUnknownFields(UnknownFieldSet unknownFields)
Parameter
NameDescription
unknownFieldsUnknownFieldSet
Returns
TypeDescription
SecurityPolicyRuleRateLimitOptions.Builder
Overrides