public static class AccessRuleCriteria.Builder extends Object
Constructor and Description |
---|
Builder() |
Modifier and Type | Method and Description |
---|---|
AccessRuleCriteria |
build() |
AccessRuleCriteria.Builder |
condition(AccessRuleCriteria.Condition condition)
The criteria the access rule and JavaScript Challenge uses to determine if action should be taken on a request.
|
AccessRuleCriteria.Builder |
copy(AccessRuleCriteria model) |
AccessRuleCriteria.Builder |
isCaseSensitive(Boolean isCaseSensitive)
When enabled, the condition will be matched with case-sensitive rules.
|
AccessRuleCriteria.Builder |
value(String value)
The criteria value.
|
public AccessRuleCriteria.Builder condition(AccessRuleCriteria.Condition condition)
The criteria the access rule and JavaScript Challenge uses to determine if action should be taken on a request.
value
field. URL must start with a /
.value
field. URL must start with a /
.value
field. URL must start with a /
.value
field.value
field.value
field. The value must be a valid regular expression recognized by the PCRE library in Nginx (https://www.pcre.org).value
field.value
field.value
field.value
in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \
Example:* "1.1.1.1\
1.1.1.2\
1.2.2.1/30"
- **IP_IS_NOT:** Matches if the request does not originate from any of the IP addresses contained in the defined address list. The value
in this case is string with one or multiple IPs or CIDR notations separated by new line symbol \
Example:* "1.1.1.1\
1.1.1.2\
1.2.2.1/30"
- **IP_IN_LIST:** Matches if the request originates from one of the IP addresses contained in the referenced address list. The value
in this case is OCID of the address list.
- **IP_NOT_IN_LIST:** Matches if the request does not originate from any IP address contained in the referenced address list. The value
field in this case is OCID of the address list.
- **HTTP_HEADER_CONTAINS:** The HTTP_HEADER_CONTAINS criteria is defined using a compound value separated by a colon: a header field name and a header field value. host:test.example.com
is an example of a criteria value where host
is the header field name and test.example.com
is the header field value. A request matches when the header field name is a case insensitive match and the header field value is a case insensitive, substring match.
*Example:* With a criteria value of host:test.example.com
, where host
is the name of the field and test.example.com
is the value of the host field, a request with the header values, Host: www.test.example.com
will match, where as a request with header values of host: www.example.com
or host: test.sub.example.com
will not match.
- **HTTP_METHOD_IS:** Matches if the request method is identical to one of the values listed in field. The value
in this case is string with one or multiple HTTP methods separated by new line symbol \
The list of available methods: GET
, HEAD
, POST
, PUT
, DELETE
, CONNECT
, OPTIONS
, TRACE
, PATCH
Example:* "GET\ POST"
- **HTTP_METHOD_IS_NOT:** Matches if the request is not identical to any of the contents of the value
field. The value
in this case is string with one or multiple HTTP methods separated by new line symbol \
The list of available methods: GET
, HEAD
, POST
, PUT
, DELETE
, CONNECT
, OPTIONS
, TRACE
, PATCH
Example:* "GET\ POST"
- **COUNTRY_IS:** Matches if the request originates from one of countries in the value
field. The value
in this case is string with one or multiple countries separated by new line symbol \
Country codes are in ISO 3166-1 alpha-2 format. For a list of codes, see [ISO's website](https://www.iso.org/obp/ui/#search/code/).
*Example:* "AL\
DZ\
AM"
- **COUNTRY_IS_NOT:** Matches if the request does not originate from any of countries in the value
field. The value
in this case is string with one or multiple countries separated by new line symbol \
Country codes are in ISO 3166-1 alpha-2 format. For a list of codes, see [ISO's website](https://www.iso.org/obp/ui/#search/code/).
*Example:* "AL\
DZ\
AM"
- **USER_AGENT_IS:** Matches if the requesting user agent is identical to the contents of the value
field.
*Example:* Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:35.0) Gecko/20100101 Firefox/35.0
- **USER_AGENT_IS_NOT:** Matches if the requesting user agent is not identical to the contents of the value
field.
*Example:* Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:35.0) Gecko/20100101 Firefox/35.0
condition
- the value to setpublic AccessRuleCriteria.Builder value(String value)
The criteria value.
value
- the value to setpublic AccessRuleCriteria.Builder isCaseSensitive(Boolean isCaseSensitive)
When enabled, the condition will be matched with case-sensitive rules.
isCaseSensitive
- the value to setpublic AccessRuleCriteria build()
public AccessRuleCriteria.Builder copy(AccessRuleCriteria model)
Copyright © 2016–2022. All rights reserved.