Compartir a través de


¿Qué es un conjunto de reglas en Azure Front Door?

Un conjunto de reglas es un motor de reglas personalizado que agrupa una combinación de reglas en un único conjunto. Puede asociar un conjunto de reglas con varias rutas. El conjunto de reglas le permite personalizar el modo en que las solicitudes se procesan y controlan en el borde de Azure Front Door.

Escenarios soportados comúnmente

  • Implementación de encabezados de seguridad para prevenir vulnerabilidades del navegador, como HTTP Strict-Transport-Security (HSTS), X-XSS-Protection, Content-Security-Policy, X-Frame-Options, y Access-Control-Allow-Origin para escenarios de uso compartido de recursos entre orígenes (CORS). Los atributos basados en seguridad también se pueden definir con cookies.

  • Enrute las solicitudes a la versión móvil o de escritorio de la aplicación en función del tipo de dispositivo cliente.

  • Uso de capacidades de redireccionamiento para devolver los redireccionamientos 301, 302, 307 y 308 al cliente para dirigirlos a nuevos nombres de host, rutas de acceso, cadenas de consulta o protocolos.

  • Modifique de forma dinámica la configuración de almacenamiento en caché de la ruta en función de las solicitudes entrantes.

  • Reescriba la ruta del URL de la solicitud y envíe la solicitud al origen adecuado dentro del grupo de orígenes que ha configurado.

  • Agregue, modifique o elimine el encabezado de solicitud o respuesta para ocultar la información confidencial o capturar información importante a través de los encabezados.

  • Admite variables de servidor para cambiar dinámicamente el encabezado de solicitud, los encabezados de respuesta o las cadenas de consulta y rutas de reescritura de direcciones URL. Por ejemplo, cuando se carga una página nueva o cuando se publica un formulario. La variable de servidor se admite actualmente solo en las acciones del conjunto de reglas.

  • Rellene o modifique un encabezado de respuesta basado en un valor de encabezado de solicitud (por ejemplo, agregando el mismo FQDN en Access-Control-Allow-Origin como encabezado de origen de solicitud).

  • Cambie el nombre de un encabezado de respuesta generado por un proveedor de nube a uno específico de la marca agregando un nuevo encabezado de respuesta y eliminando el original.

  • Redireccione a un host de destino mediante un valor capturado desde un par clave-valor de cadena de consulta entrante en formato de {http_req_arg_key1}.

  • Aproveche la captura del segmento de la ruta de la URL en la redirección y reescritura de URL, por ejemplo, extraiga el tenantID desde la ruta de la URL entrante /abc/<tenantID>/<otherID>/index.html e inserte en otra parte de la ruta de la URL utilizando "{url_path:seg1}" en el destino.

Arquitectura

Los conjuntos de reglas controlan las solicitudes en el borde de Front Door. Cuando una solicitud llega al punto de conexión de Front Door, se procesa primero el firewall de aplicaciones web (WAF), seguido de los valores configurados en la ruta. Estos valores incluyen el conjunto de reglas asociado a la ruta. Los conjuntos de reglas se procesan en el orden en que aparecen en la configuración de enrutamiento. Las reglas de un conjunto de reglas también se procesan en el orden en que aparecen. Para que todas las acciones de cada regla se ejecuten, deben cumplirse todas las condiciones de coincidencia dentro de una regla. Si una solicitud no coincide con alguna de las condiciones de la configuración del conjunto de reglas, solo se aplicará la configuración de ruta predeterminada.

Si se selecciona Detener la evaluación de las reglas restantes, no se ejecutarán los conjuntos de reglas restantes asociados a la ruta.

Ejemplo

En el diagrama siguiente, las políticas de WAF (firewall de aplicaciones web) se procesan en primer lugar. Después, la configuración del conjunto de reglas anexa un encabezado de respuesta. El encabezado cambia la duración máxima del control de caché si la condición de coincidencia es true.

Diagrama en el que se muestra cómo un conjunto de reglas puede cambiar el encabezado de respuesta de una solicitud que pasa mediante un punto de conexión de Front Door.

Terminología

Con un conjunto de reglas de Front Door, puede crear cualquier combinación de configuraciones, cada una de las cuales se compone de un conjunto de reglas. Después se describen ciertos términos útiles que se utilizarán al configurar el conjunto de reglas.

  • Conjunto de reglas: conjunto de reglas que se asocia a una o varias rutas.

  • Regla del conjunto de reglas: regla compuesta de un máximo de 10 condiciones de coincidencia y 5 acciones. Las reglas son locales para un conjunto de reglas y no se pueden exportar para usarlas en otros conjuntos de reglas. Puede crear la misma regla en diferentes conjuntos de reglas.

  • Condición de coincidencia: se pueden configurar varias condiciones de coincidencia para analizar una solicitud entrante. Una regla puede contener hasta 10 condiciones de coincidencia. Las condiciones de coincidencia se evalúan con un operador AND. Se admiten las expresiones regulares en las condiciones. Se puede encontrar una lista completa de condiciones de coincidencia en Condiciones de coincidencia de un conjunto de reglas.

  • Acción: una acción determina cómo Front Door controla las solicitudes entrantes en función de las condiciones de coincidencia. Puede modificar los comportamientos de almacenamiento en caché, modificar encabezados de solicitud o de respuesta, y configurar la reescritura y el redireccionamiento de direcciones URL. Se admiten las variables de servidor con Action. Una regla puede contener hasta cinco acciones. En Acciones de un conjunto de reglas se puede encontrar una lista completa de acciones.

Compatibilidad con plantillas de ARM

Los conjuntos de reglas se pueden configurar mediante plantillas de Azure Resource Manager. Para obtener un ejemplo, consulte Puerta Principal Estándar/Premium con conjunto de normas. Puede personalizar el comportamiento si usa los fragmentos de código JSON o Bicep incluidos en los ejemplos de la documentación de condiciones de coincidencia y acciones.

Limitaciones

Para obtener información sobre los límites de cuota, consulte Límites, cuotas y restricciones de Front Door.

Pasos siguientes

Importante

Azure Front Door (clásico) se retirará el 31 de marzo de 2027. Para evitar cualquier interrupción del servicio, es importante migrar los perfiles de Azure Front Door (clásico) al nivel Estándar o Premium de Azure Front Door antes de marzo de 2027. Para obtener más información, consulte Retirada de Azure Front Door (clásico).

La configuración de un sistema de reglas le permite personalizar cómo se gestionan las solicitudes HTTP en la periferia de Front Door, proporcionando un comportamiento controlado para su aplicación web. El motor de reglas de Azure Front Door (clásico) consta de varias características clave, entre las que se incluyen:

  • Aplica HTTP para garantizar que todos los usuarios finales interactúen con el contenido a través de una conexión segura.
  • Implemente encabezados de seguridad para evitar vulnerabilidades basadas en explorador como HTTP Strict-Transport-Security (HSTS), X-XSS-Protection, Content-Security-Policy y X-Frame-Options, además de encabezados Access-Control-Allow-Origin para escenarios de uso compartido de recursos entre orígenes (CORS). Los atributos basados en seguridad también se pueden definir con cookies.
  • Enrute las solicitudes a las versiones de escritorio o para dispositivos móviles de la aplicación en función de los patrones del contenido de los encabezados de solicitud, las cookies o las cadenas de consulta.
  • Use las funcionalidades de redireccionamiento para devolver los redireccionamientos 301, 302, 307 y 308 al cliente para dirigirse a nuevos nombres de host, rutas de acceso y protocolos.
  • Modifique de forma dinámica la configuración de almacenamiento en caché de la ruta en función de las solicitudes entrantes.
  • Reescriba la ruta de la URL de la solicitud y reenvíe la solicitud al backend adecuado en su grupo de backend configurado.

Arquitectura

El motor de reglas administra las solicitudes en el perímetro. Cuando una solicitud entre en el punto de conexión de Azure Front Door (clásico), primero se procesa el WAF y, después, la configuración del motor de reglas asociada al dominio de su front-end. Si se procesa una configuración del motor de reglas, significa que se ha encontrado una condición de coincidencia. Para que se procesen todas las acciones de cada regla, deben cumplirse todas las condiciones de coincidencia dentro de una regla. Si una solicitud no coincide con alguna de las condiciones de la configuración del motor de reglas, se procesa la configuración de enrutamiento predeterminada.

Por ejemplo, en el diagrama siguiente, un motor de reglas se configura para anexar un encabezado de respuesta. El encabezado cambia la duración máxima del control de caché si el archivo de solicitud tiene una extensión de .jpg.

Diagrama que muestra cómo el motor de reglas cambia la duración máxima de la caché en el encabezado de respuesta si el archivo solicitado tiene una extensión de .jpg.

En este segundo ejemplo, verá que el motor de reglas se ha configurado para redirigir a los usuarios a una versión móvil del sitio web si el dispositivo solicitante es de tipo Móvil.

Diagrama en el que se muestra cómo el motor de reglas redirige a los usuarios a la versión móvil de un sitio web si el dispositivo solicitante es de tipo móvil.

En ambos ejemplos, si no se cumple ninguna de las condiciones de coincidencia, se procesa la regla de enrutamiento especificada.

Terminología

En Azure Front Door (clásico), puede crear muchas combinaciones de configuraciones del motor de reglas, cada una de las cuales se compone de un conjunto de reglas. A continuación se describen ciertos términos útiles que se encontrará al configurar el motor de reglas.

  • Configuración del motor de reglas: conjunto de reglas que se aplican a una única ruta. Cada configuración se limita a 25 reglas. Puede crear hasta 10 configuraciones.
  • Regla del motor de reglas: una regla compuesta de un máximo de 10 condiciones de coincidencia y 5 acciones.
  • Condición de coincidencia: se pueden usar varias condiciones de coincidencia para analizar las solicitudes entrantes. Una regla puede contener hasta 10 condiciones de coincidencia. Las condiciones de coincidencia se evalúan con un operador AND. Para obtener una lista completa de las condiciones de coincidencia, vea Condiciones de coincidencia de las reglas.
  • Acción: Las acciones indican lo que ocurre en las solicitudes entrantes: en la actualidad hay disponibles acciones de encabezado de solicitud o respuesta, reenvío, redireccionamientos y reescrituras. Una regla puede contener hasta cinco acciones; pero solo puede contener una invalidación de la configuración de ruta. Para obtener una lista completa de las acciones, vea Acciones de las reglas.

Pasos siguientes