Función
Esta API se utiliza para agregar una regla de reenvío.
Restricciones
Si la acción de 17policy se establece en Redirect to another listener, 17rule no se puede crear.
URI
POST /v3/{project_id}/elb/l7policies/{l7policy_id}/rules
Tabla 1 Parámetros de path Parámetro | Obligatorio | Tipo | Descripción |
|---|
l7policy_id | Sí | String | Especifica el ID de política de reenvío. |
project_id | Sí | String | Especifica el ID del proyecto. |
Parámetros de solicitud
Tabla 3 Parámetros de body de solicitud Parámetro | Obligatorio | Tipo | Descripción |
|---|
rule | Sí | CreateRuleOption object | Especifica la regla de reenvío. |
Tabla 4 CreateRuleOption Parámetro | Obligatorio | Tipo | Descripción |
|---|
admin_state_up | No | Boolean | Especifica el estado administrativo de la regla de reenvío. El valor predeterminado es true. Este parámetro no es compatible. Por favor, no lo use. |
compare_type | Sí | String | Especifica cómo se comparan las solicitudes con la regla de reenvío. Valores: - EQUAL_TO: coincidencia exacta.
- REGEX: coincidencia de expresiones regulares
- STARTS_WITH: coincidencia de prefijos
Nota: - Si type se establece en HOST_NAME, el valor solo puede ser EQUAL_TO y los asteriscos (*) pueden usarse como caracteres comodín.
- Si type se establece en PATH, el valor puede ser REGEX, STARTS_WITH o EQUAL_TO.
- Si type se establece en METHOD o SOURCE_IP, el valor solo puede ser EQUAL_TO.
- Si type se establece en HEADER o QUERY_STRING, el valor solo puede ser EQUAL_TO, los asteriscos (*) y los signos de interrogación (?) pueden usarse como caracteres comodín.
|
key | No | String | Especifica la clave del contenido de coincidencia. Por ejemplo, si el encabezado de solicitud se usa para reenviar, key es el encabezado de solicitud. Este parámetro no es compatible. Por favor, no lo use. Mínimo: 0 Máximo: 255 |
value | Sí | String | Especifica el valor del contenido de coincidencia. Por ejemplo, si se utiliza un nombre de dominio para hacer coincidir, value es el nombre de dominio. Este parámetro sólo es válido cuando conditions se dejan en blanco. - Si type se establece en HOST_NAME, el valor puede contener letras, dígitos, guiones (-) puntos y asteriscos () and must start with a letter or digit. Si desea utilizar un nombre de dominio comodín, introduzca un asterisco () como la etiqueta más a la izquierda del nombre de dominio.
- Si type se establece en PATH y compare_type en STARTS_WITH or EQUAL_TO, el valor solo puede contener letras, dígitos y caracteres especiales _~';@^-%#&$.*+?,=!:|/()[]{}
- Si type se establece en METHOD, SOURCE_IP, HEADER, o QUERY_STRING, este parámetro no tendrá efecto, y conditions se utilizará para especificar la clave y el valor.
Mínimo: 1 Máximo: 128 |
project_id | No | String | Especifica el ID del proyecto. Mínimo: 32 Máximo: 32 |
type | Yes | String | Especifica el contenido de coincidencia. El valor puede ser uno de los siguientes: - HOST_NAME: Se usará un nombre de dominio para hacer coincidir.
- PATH: Se usará una URL para hacer coincidir.
- METHOD: Se usará un método de petición HTTP para la coincidencia.
- HEADER: El encabezado de solicitud se usará para la coincidencia.
- QUERY_STRING: Se usará una cadena de consulta para la coincidencia.
- SOURCE_IP: La dirección IP de origen se usará para la coincidencia. Nota: Si type se establece en HOST_NAME, PATH, METHOD, o SOURCE_IP, solo se puede crear una regla de reenvío para cada tipo.
|
invert | No | Boolean | Especifica si se admite la coincidencia inversa. El valor puede ser true o false (por defecto). Este parámetro no es compatible. Por favor, no lo use. |
conditions | No | Array of CreateRuleCondition objects | Especifica las condiciones coincidentes de la regla de reenvío. Este parámetro sólo está disponible cuando enhance_l7policy_enable está establecido en true. Si se especifican conditions, los parámetros key y value no tendrán efecto, y el valor de conditions contendrá todas las condiciones configuradas para la regla de reenvío. Las claves de la lista deben ser las mismas, mientras que cada valor debe ser único. Este parámetro no está disponible en la región eu-nl. Por favor, no lo use. |
Tabla 5 CreateRuleCondition Parámetro | Obligatorio | Tipo | Descripción |
|---|
key | No | String | Especifica la clave del elemento de coincidencia. - Si type se establece en HOST_NAME, PATH, METHOD, o SOURCE_IP, este parámetro se deja en blanco.
- Si type se establece en HEADER, key indica el nombre del parámetro de encabezado HTTP. El valor puede contener de 1 a 40 caracteres, incluyendo letras, dígitos, guiones (-) y guiones bajos (_).
- Si type se establece en QUERY_STRING, key indica el nombre del parámetro de consulta. El valor distingue entre mayúsculas y minúsculas y puede contener de 1 a 128 caracteres. Espacios, corchetes ([ ]), corchetes rizados ({ }), corchetes angulares (< >), barras diagonales invertidas (), comillas dobles (" signo "), libra (#), ampersands (& ), las barras verticales (|), los signos de porcentaje (%) y los (~) de tildes no son compatibles.
Todas las claves de la lista de condiciones de la misma regla deben ser las mismas. Mínimo: 1 Máximo: 128 |
value | Sí | String | Especifica el valor del elemento de coincidencia. - Si type se establece en HOST_NAME, key se deja en blanco y value indica el nombre de dominio, que puede contener de 1 a 128 caracteres, incluyendo letras, dígitos, guiones (-) puntos y asteriscos (), and must start with a letter, digit, or asterisk (). Si desea utilizar un nombre de dominio comodín, introduzca un asterisco (*) como la etiqueta más a la izquierda del nombre de dominio.
- Si type se establece en PATH, key se deja en blanco y el value indica la ruta de la solicitud, que puede contener de 1 a 128 caracteres. Si compare_type se establece en STARTS_WITH o EQUAL_TO para la regla de reenvío, el valor debe comenzar con una barra diagonal (/) y puede contener sólo letras, dígitos y caracteres especiales _~';@^-%#& $.*+?,=!:|/) []{}
- Si type se establece en HEADER, key indica el nombre del parámetro de encabezado HTTP y value indica el valor del parámetro de encabezado HTTP. El valor puede contener de 1 a 128 caracteres. Se permiten asteriscos (*) y signos de interrogación (?) pero no se permiten espacios ni comillas dobles. Un asterisco puede coincidir con cero o más caracteres, y un signo de interrogación puede coincidir con 1 carácter.
- Si type se establece en QUERY_STRING, key indica el nombre del parámetro de consulta y value indica el valor del parámetro de consulta. El valor distingue entre mayúsculas y minúsculas y puede contener de 1 a 128 caracteres. Espacios, corchetes ([ ]), corchetes rizados ({ }), corchetes angulares (< >), barras diagonales invertidas (), comillas dobles (" signo "), libra (#), ampersands (& ), las barras verticales (|), los signos de porcentaje (%) y los (~) de tildes no son compatibles. Se permiten asteriscos (*) y signos de interrogación (?). Un asterisco puede coincidir con cero o más caracteres, y un signo de interrogación puede coincidir con 1 carácter.
- Si type se establece en METHOD, key se deja en blanco, y value indica el método HTTP. El valor puede ser GET, PUT, POST, DELETE, PATCH, HEAD, u OPTIONS.
- Si type se establece en SOURCE_IP, key se deja en blanco, y value indica la dirección IP de origen de la solicitud. El valor es un bloque CIDR IPv4 o IPv6, por ejemplo, 192.168.0.2/32 o 2049::49/64.
Todas las claves de la lista de condiciones de la misma regla deben ser las mismas. Mínimo: 1 Máximo: 128 |
Parámetros de respuesta
Código de estado: 201
Tabla 6 Parámetros de body de respuesta Parámetro | Tipo | Descripción |
|---|
request_id | String | Especifica el ID de la solicitud. El valor se genera automáticamente. |
rule | L7Rule object | Especifica la regla de reenvío. |
Tabla 7 L7Rule Parámetro | Tipo | Descripción |
|---|
admin_state_up | Boolean | Especifica el estado administrativo de la regla de reenvío. El valor predeterminado es true. Este parámetro no es compatible. Por favor, no lo use. |
compare_type | String | Especifica cómo se hacen coincidir las solicitudes con el nombre de dominio o la dirección URL. - Si type se establece en HOST_NAME, este parámetro solo se puede establecer en EQUAL_TO.
- Si type se establece en PATH, el valor puede ser REGEX, STARTS_WITH o EQUAL_TO.
|
key | String | Especifica la clave del contenido de coincidencia. Este parámetro no tendrá efecto si type se establece en HOST_NAME o PATH. Mínimo: 1 Máximo: 255 |
project_id | String | Especifica el ID del proyecto. |
type | String | Especifica el tipo de regla de reenvío. El valor puede ser uno de los siguientes: - HOST_NAME: Se usará un nombre de dominio para hacer coincidir.
- PATH: Se usará una URL para hacer coincidir.
- METHOD: Se usará un método de petición HTTP para la coincidencia.
- HEADER: El encabezado de solicitud se usará para la coincidencia.
- QUERY_STRING: Se usará una cadena de consulta para la coincidencia.
- SOURCE_IP: La dirección IP de origen se usará para la coincidencia.
Nota: Si type se establece en HOST_NAME, PATH, METHOD, y SOURCE_IP, sólo se puede crear una regla de reenvío para cada tipo. Si type se establece en HEADER y QUERY_STRING, se pueden crear varias reglas de reenvío para cada tipo. |
value | String | Especifica el valor del elemento de coincidencia. Por ejemplo, si se utiliza un nombre de dominio para hacer coincidir, value es el nombre de dominio. Este parámetro solo tendrá efecto cuando conditions se dejan en blanco. - Si type se establece en HOST_NAME, el valor puede contener letras, dígitos, guiones (-) y puntos (.) y debe comenzar con una letra o un dígito. Si desea utilizar un nombre de dominio comodín, introduzca un asterisco (*) como la etiqueta más a la izquierda del nombre de dominio.
- Si type se establece en PATH y compare_type en STARTS_WITH o EQUAL_TO, el valor debe comenzar con una barra diagonal (/) y puede contener solo letras, dígitos y caracteres especiales _~';@^-%#& $.*+?,=!:|/) []{}
- Si type se establece en METHOD, SOURCE_IP, HEADER, o QUERY_STRING, este parámetro no tendrá efecto, y condition_pair se utilizará para especificar la clave y el valor.
Mínimo: 1 Máximo: 128 |
provisioning_status | String | Especifica el estado de aprovisionamiento de la regla de reenvío. El valor solo puede ser ACTIVE (predeterminado), PENDING_CREATE o ERROR. Este parámetro no es compatible. Por favor, no lo use. |
invert | Boolean | Especifica si se admite la coincidencia inversa. El valor se fija en false. Este parámetro se puede actualizar pero no tendrá efecto. |
id | String | Especifica el ID de política de reenvío. |
conditions | Array of RuleCondition objects | Especifica las condiciones coincidentes de la regla de reenvío. Este parámetro tendrá efecto cuando se establezca el valor de enhance_l7policy_enable en .true. Si se especifican conditions, key y value no tendrán efecto, y el valor de este parámetro contendrá todas las condiciones configuradas para la regla de reenvío. Las claves de la lista deben ser las mismas, mientras que cada valor debe ser único. Este parámetro no está disponible en la región eu-nl. Por favor, no lo use. |
created_at | String | Especifica la hora a la que se añadió la regla de reenvío. El formato es yyyy-MM-dd'T'HH:mm:ss'Z' (hora UTC). Este es un campo nuevo en esta versión, y no se devolverá para los recursos asociados con balanceadores de carga dedicados existentes y para los recursos asociados con balanceadores de carga compartidos existentes y nuevos. |
updated_at | String | Especifica la hora a la que se actualizó la regla de reenvío. El formato es yyyy-MM-dd'T'HH:mm:ss'Z' (hora UTC). Este es un campo nuevo en esta versión, y no se devolverá para los recursos asociados con balanceadores de carga dedicados existentes y para los recursos asociados con balanceadores de carga compartidos existentes y nuevos. |
Tabla 8 RuleCondition Parámetro | Tipo | Descripción |
|---|
key | String | Especifica la clave del elemento de coincidencia. - Si type se establece en HOST_NAME, PATH, METHOD, o SOURCE_IP, este parámetro se deja en blanco.
- Si type se establece en HEADER, key indica el nombre del parámetro de encabezado HTTP. El valor puede contener de 1 a 40 caracteres, incluyendo letras, dígitos, guiones (-) y guiones bajos (_).
- Si type se establece en QUERY_STRING, key indica el nombre del parámetro de consulta. El valor distingue entre mayúsculas y minúsculas y puede contener de 1 a 128 caracteres. Espacios, corchetes ([ ]), corchetes rizados ({ }), corchetes angulares (< >), barras diagonales invertidas (), comillas dobles (" signo "), libra (#), ampersands (& ), las barras verticales (|), los signos de porcentaje (%) y los (~) de tildes no son compatibles.
Todas las claves de la lista de condiciones de la misma regla deben ser las mismas. Mínimo: 1 Máximo: 128 |
value | String | Especifica el valor del elemento de coincidencia. - Si type se establece en HOST_NAME, key se deja en blanco y value indica el nombre de dominio, que puede contener de 1 a 128 caracteres, incluyendo letras, dígitos, guiones (-) puntos y asteriscos (), and must start with a letter, digit, or asterisk (). Si desea utilizar un nombre de dominio comodín, introduzca un asterisco (*) como la etiqueta más a la izquierda del nombre de dominio.
- Si type se establece en PATH, key se deja en blanco y el value indica la ruta de la solicitud, que puede contener de 1 a 128 caracteres. Si compare_type se establece en STARTS_WITH o EQUAL_TO para la regla de reenvío, el valor debe comenzar con una barra diagonal (/) y puede contener sólo letras, dígitos y caracteres especiales _~';@^-%#& $.*+?,=!:|/) []{}
- Si type se establece en HEADER, key indica el nombre del parámetro de encabezado HTTP y value indica el valor del parámetro de encabezado HTTP. El valor puede contener de 1 a 128 caracteres. Se permiten asteriscos (*) y signos de interrogación (?) pero no se permiten espacios ni comillas dobles. Un asterisco puede coincidir con cero o más caracteres, y un signo de interrogación puede coincidir con 1 carácter.
- Si type se establece en QUERY_STRING, key indica el nombre del parámetro de consulta y value indica el valor del parámetro de consulta. El valor distingue entre mayúsculas y minúsculas y puede contener de 1 a 128 caracteres. Espacios, corchetes ([ ]), corchetes rizados ({ }), corchetes angulares (< >), barras diagonales invertidas (), comillas dobles (" signo "), libra (#), ampersands (& ), las barras verticales (|), los signos de porcentaje (%) y los (~) de tildes no son compatibles. Se permiten asteriscos (*) y signos de interrogación (?). Un asterisco puede coincidir con cero o más caracteres, y un signo de interrogación puede coincidir con 1 carácter.
- Si type se establece en METHOD, key se deja en blanco, y value indica el método HTTP. El valor puede ser GET, PUT, POST, DELETE, PATCH, HEAD, u OPTIONS.
- Si type se establece en SOURCE_IP, key se deja en blanco, y value indica la dirección IP de origen de la solicitud. El valor es un bloque CIDR IPv4 o IPv6, por ejemplo, 192.168.0.2/32 o 2049::49/64.
Todas las claves de la lista de condiciones de la misma regla deben ser las mismas. Mínimo: 1 Máximo: 128 |
Solicitudes de ejemplo
POST https://{ELB_Endpoint}/v3/{99a3fff0d03c428eac3678da6a7d0f24}/elb/l7policies/cf4360fd-8631-41ff-a6f5-b72c35da74be/rules
{
"rule" : {
"compare_type" : "EQUAL_TO",
"type" : "PATH",
"value" : "/bbb.html"
}
} Ejemplo de respuestas
Código de estado: 201
Respuesta normal a las solicitudes POST.
{
"rule" : {
"compare_type" : "EQUAL_TO",
"provisioning_status" : "ACTIVE",
"project_id" : "99a3fff0d03c428eac3678da6a7d0f24",
"invert" : false,
"admin_state_up" : true,
"value" : "/bbb.html",
"key" : null,
"type" : "PATH",
"id" : "84f4fcae-9c15-4e19-a99f-72c0b08fd3d7"
},
"request_id" : "3639f1b7-f04b-496e-9218-ec5a9e493f69"
} Códigos de estado
Código de estado | Descripción |
|---|
201 | Respuesta normal a las solicitudes POST. |