Establecimiento o modificación de directivas de Azure API Management
SE APLICA A: todos los niveles de API Management
En este artículo se muestra cómo configurar directivas en la instancia de API Management mediante la edición de definiciones de directiva en Azure Portal. Cada definición de directiva es un documento XML que describe una secuencia de instrucciones entrantes y salientes que se ejecutan secuencialmente en una solicitud y respuesta de API.
El editor de directivas del portal proporciona formularios guiados para que los editores de API agreguen y editen directivas en las definiciones de directiva. También puede editar el XML directamente en el editor de código de directiva.
Más información sobre las directivas:
- Información general de directivas
- Referencia de directivas para una lista completa de instrucciones de directivas y su configuración
- Repositorio de fragmentos de código de directiva
Requisitos previos
Si aún no tiene una instancia de API Management y una API de back-end, consulte:
Vaya a la instancia de API Management.
En Azure Portal, busque y seleccione Servicios de API Management.
En la página de servicios API Management, seleccione la instancia de API Management.
Configuración de la directiva en el portal
En el ejemplo siguiente se muestra cómo configurar una directiva con dos opciones en el editor de directivas del portal:
- Un editor guiado basado en formularios para simplificar la configuración de muchas directivas.
- Un editor de código donde puede agregar o editar XML directamente.
En este ejemplo, la directiva filtra las solicitudes de determinadas direcciones IP entrantes. Se limita a una API seleccionada.
Nota
Puede configurar directivas en otros ámbitos; por ejemplo, para todas las API, para un producto o para una sola operación de API. Consulte Configuración del ámbito, más adelante en este artículo, para obtener otros ejemplos.
Para configurar una directiva:
En el panel de navegación izquierdo de la instancia de API Management, seleccione API.
Seleccione una API que haya importado anteriormente.
Seleccione la pestaña Diseño.
Para aplicar la directiva a todas las operaciones, seleccione Todas las operaciones.
En la sección Procesamiento de entrada, seleccione + Agregar directiva.
En Agregar directiva de entrada, seleccione la directiva que quiere agregar. Por ejemplo, seleccione Filtrar direcciones IP.
Sugerencia
- Las directivas que se muestran se limitan a la sección de directivas que está configurando; en este caso, el procesamiento de entrada.
- Si no ve la directiva que quiere usar, seleccione el icono Otras directivas. Se abrirá el editor de código XML y se mostrará una lista completa de directivas para esa sección y ámbito.
Seleccione Ip permitidas>+ Agregar filtro de IP y agregue las primeras y últimas direcciones IP de un intervalo de direcciones entrantes que pueden realizar solicitudes de API. Agregue otros intervalos de direcciones IP, si es necesario.
Seleccione Guardar para propagar los cambios a la puerta de enlace de API Management inmediatamente.
La directiva de ip-filter aparece ahora en la sección Procesamiento de entrada.
Configuración de directivas en distintos ámbitos
API Management ofrece la flexibilidad que necesita para configurar definiciones de directiva en varios ámbitos, en cada una de las secciones de directiva.
Importante
No todas las directivas se pueden aplicar en cada ámbito o sección de directivas. Si la directiva que quiere agregar no está habilitada, asegúrese de que se encuentra en una sección y en el ámbito correcto de esa directiva. Para revisar las secciones y los ámbitos de una directiva, compruebe la sección Uso en los temas de referencia de directivas.
Nota
La sección Directiva de back-end solo puede contener un elemento de directiva. De forma predeterminada, API Management configura la directiva forward-request
en la sección Back-end en el ámbito global y el elemento base
en otros ámbitos.
Ámbito global
El ámbito global se configura para Todas las API de la instancia de API Management.
En el panel de navegación izquierdo de la instancia de API Management, seleccione API>Todas las API.
Seleccione la pestaña Diseño.
En una sección de la directiva, seleccione + Agregar directiva para usar un editor de directivas basado en formularios o seleccione el icono </> (editor de código) para agregar y editar XML directamente.
Seleccione Guardar para propagar los cambios a la puerta de enlace de API Management inmediatamente.
Ámbito del producto
El ámbito del producto está configurado para el producto seleccionado.
En el menú de la izquierda, seleccione Productos y, a continuación, seleccione un producto al que quiera aplicar directivas.
En la ventana del producto, seleccione Directivas.
En una sección de la directiva, seleccione + Agregar directiva para usar un editor de directivas basado en formularios o seleccione el icono </> (editor de código) para agregar y editar XML directamente.
Seleccione Guardar para propagar los cambios a la puerta de enlace de API Management inmediatamente.
Ámbito de la API
El ámbito de la API está configurado para todas las operaciones de la API seleccionada.
En el panel de navegación izquierdo de la instancia de API Management, seleccione API y, a continuación, seleccione la API a la que quiera aplicar directivas.
Seleccione la pestaña Diseño.
Seleccione Todas las operaciones.
En una sección de la directiva, seleccione + Agregar directiva para usar un editor de directivas basado en formularios o seleccione el icono </> (editor de código) para agregar y editar XML directamente.
Seleccione Guardar para propagar los cambios a la puerta de enlace de API Management inmediatamente.
Ámbito de la operación
El ámbito de la operación está configurado para la operación de API seleccionada.
En el panel de navegación izquierdo de la instancia de API Management, seleccione API.
Seleccione la pestaña Diseño.
Seleccione la operación en la que quiere aplicar directivas.
En una sección de la directiva, seleccione + Agregar directiva para usar un editor de directivas basado en formularios o seleccione el icono </> (editor de código) para agregar y editar XML directamente.
Seleccione Guardar para propagar los cambios a la puerta de enlace de API Management inmediatamente.
Reutilización de configuraciones de directivas
Puede crear fragmentos de directiva reutilizables en la instancia de API Management. Los fragmentos de directiva son elementos XML que contienen las configuraciones de una o varias directivas. Ayudan a configurar directivas de forma coherente y a mantener las definiciones de directiva sin necesidad de repetir o volver a escribir código XML.
Use la directiva include-fragment
para insertar un fragmento de directiva en una definición de directiva.
Uso del elemento base
para establecer el orden de evaluación de directivas
Si configura definiciones de directiva en más de un ámbito, se pueden aplicar varias directivas a una solicitud o respuesta de API. Dependiendo del orden en que se apliquen las directivas de los distintos ámbitos, la transformación de la solicitud o respuesta podría ser diferente.
En API Management, determine el orden de evaluación de directivas colocando el elemento base
en cada sección de la definición de directiva en cada ámbito. El elemento base
hereda las directivas configuradas en esa sección en el siguiente ámbito más amplio (primario). El elemento base
se incluye de forma predeterminada en cada sección de directiva.
Nota
Para ver las directivas vigentes en el ámbito actual, seleccione Calculate effective policy.
Para modificar el orden de evaluación de directivas mediante el editor de directivas:
Comience con la definición en el ámbito más estrecho que configuró, y que API Management aplicará primero.
Por ejemplo, al usar definiciones de directiva configuradas en el ámbito global y el ámbito de la API, comience con la configuración en el ámbito de la API.
Coloque el elemento
base
dentro de una sección para determinar dónde se heredarán todas las directivas de la sección correspondiente en el ámbito primario.Por ejemplo, en una sección
inbound
configurada en el ámbito de la API, coloque un elementobase
para controlar dónde heredar las directivas configuradas en la seccióninbound
en el ámbito global. En el ejemplo siguiente, las directivas heredadas del ámbito global se aplican antes de la directivaip-filter
.<policies> <inbound> <base /> <ip-filter action="allow"> <address>10.100.7.1</address> </ip-filter> </inbound> [...] </policies>
Nota
- Puede colocar el elemento
base
antes o después de cualquier elemento de directiva en una sección. - Si quiere evitar la herencia de directivas del ámbito primario, quite el elemento
base
. En la mayoría de los casos, esto no se recomienda.
- Puede colocar el elemento
Siga configurando el elemento
base
en las definiciones de directiva en los ámbitos que sean sucesivamente más amplios.Una directiva de ámbito global no tiene un ámbito principal y el uso del elemento
base
no tiene ningún efecto.
Obtenga ayuda para crear directivas mediante Microsoft Copilot en Azure (versión preliminar)
Microsoft Copilot en Azure (versión preliminar) proporciona funcionalidades de creación de directivas para Azure API Management. Use Copilot en Azure en el contexto del editor de directivas de API Management para crear directivas que se ajusten a los requisitos específicos sin necesidad de conocer la sintaxis ni de que le expliquen directivas ya configuradas.
Puede pedir a Copilot en Azure que genere definiciones de directivas y, luego, copiar los resultados en el editor de directivas y hacer los ajustes necesarios. Haga preguntas para obtener información sobre diferentes opciones, modifique la directiva proporcionada o aclare la directiva que ya tiene. Más información
Contenido relacionado
Para más información sobre el trabajo con directivas, vea:
- Tutorial: Transformación y protección de una API
- Establecimiento o edición de directivas
- Referencia de directivas para una lista completa de instrucciones de directivas y su configuración
- Repositorio de fragmentos de código de directiva
- Creación de directivas mediante Microsoft Copilot en Azure