operation-switch
Utilice la construcción operation-switch cuando desee ejecutar ensamblajes de política alternativos condicionados a la operación que se llama.
Soporte de pasarela
| Pasarela | Versión de política |
|---|---|
| DataPower® Gateway (v5 compatible) | 1.0.0 |
| DataPower API Gateway | 2.0.0 |
En este tema se describe cómo configurar la política en la fuente de datos de « OpenAPI »; para obtener más información sobre cómo configurar la política en la interfaz de usuario de Assembly, consulte «operation-switch ».
Acerca de
Una operación se puede describir con un par verb/path o con un operationId. Los operationIds son series, o nombres, que se definen en el documento OpenAPI .
- operation-switch:
version: version
title: title
description: description
case:
- operations:
- verb: operation_verb_1_1
path: operation_path_1_1
- verb: operation_verb_1_2
path: operation_path_1_2
.
.
.
further verb/path combinations
.
.
.
execute:
policy_assembly_1 ...
- operations:
- verb: operation_verb_2_1
path: operation_path_2_1
- verb: operation_verb_2_2
path: operation_path_2_2
.
.
.
further verb/path combinations
.
.
.
execute:
policy_assembly_2 ...
.
.
.
- operations:
- operationID_3_1
- operationID_3_2
- operationID_3_3
.
.
.
further operationIDs
.
.
.
execute:
policy_assembly_3 ...
.
.
.
further operations sections
.
.
.
Para cada sección operations:, si la operación que se llama coincide con cualquiera de las combinaciones
verb/path o de las series operationId listadas en esa sección operations:, se ejecuta el
ensamblaje de política definido en la sección execute:. Por lo tanto, cada sección operations: define la ejecución de un
ensamblaje de política condicional sobre la operación que se llama.
Puede tener tantas secciones operations: como desee y cada sección operations: puede tener una o varias combinaciones
verb/path o series operationId.
La sección execute: puede definir cualquier ensamblaje de política, incluidas políticas operation-switch adicionales.
Propiedades
| Propiedad | Obligatorio | Descripción | Tipo de datos | Contenida en |
|---|---|---|---|---|
| version | Sí | El número de versión de la política | serie | N/D |
| title | Nee | Título de la política. | serie | N/D |
| description | Nee | Una descripción de la política. | serie | N/D |
| case | Sí | Una matriz que contiene distintos casos, cada entrada contiene un campo operations y execute. | Matriz (objeto) | N/D |
| operations | Sí | Las operaciones a las que se aplica un caso. | objeto | case |
| verb | Nee | Un verbo de operación. Valores válidos:
|
serie | operations |
| path | Nee | Una vía de acceso relativa a un punto final individual. Por ejemplo, /account_status. |
serie | operations |
| operationID | Nee | La operación se define en OpenAPI. La operación de política hace referencia a la operación OpenAPI . | serie | operations |
| execute | Sí | El ensamblaje de política que desea ejecutar si la operación que se llama coincide con cualquiera de las combinaciones verbo/vía de acceso. Para obtener más información, consulte execute. | serie | case |
Ejemplo
verb/path:# carry out different redaction actions depending on the operation
- operation-switch:
version: 1.0.0
title: clear_region_and_set_body
case:
- operations:
- verb: GET
path: /account_details
execute:
- redact:
title: remove secret field
actions:
- action: remove
from: all
path: /document/user/secret
- operations:
- verb: GET
path: /account_status
execute:
- redact:
title: redact address
actions:
- action: redact
from: response
path: //*[@name='secondaryAddress']/*[@name='streetAddress']operationIDs:# match on operationIDs
- operation-switch:
title: customer_actions
case:
- operations:
- getCustomerByName
- deleteCustomer
- addACustomer
execute:
.
.
.