Los backends no siempre producen respuestas ideales. Las aplicaciones heredadas pueden devolver números de identidad, números de tarjeta, direcciones de email, nombres de host internos, enlaces antiguos o información técnica innecesaria. Dado que estos valores aparecen dentro del cuerpo de respuesta en lugar de en los headers, no pueden corregirse con una regla de header estándar.
Corregir el problema en el código de la aplicación es a menudo lento. El servicio puede pertenecer a un equipo diferente, el calendario de releases puede estar a meses de distancia, o el código fuente puede ser difícil de cambiar debido a tecnología envejecida. Sin embargo, el equipo de seguridad y cumplimiento necesita que la fuga se cierre de inmediato.
Intervenir en el cuerpo de respuesta sin cuidado puede crear nuevos riesgos. Un regex mal escrito puede corromper una página completa, la inyección HTML puede aterrizar en el lugar equivocado, y procesar respuestas muy grandes puede afectar el rendimiento. Las reglas de modificación del cuerpo deben aplicarse por lo tanto con parámetros controlados y un alcance bien definido.
El enfoque correcto es gestionar las operaciones de mask, replace y HTML tag sobre el cuerpo de respuesta como reglas de tráfico centralizadas. Una regla debe saber a qué path, content-type o condición aplica; el comportamiento de coincidencia y los límites de tamaño del cuerpo deben estar definidos explícitamente.
TR7 Modificación del Cuerpo de Respuesta enmascara, sustituye o inyecta HTML en el contenido de respuesta sin cambiar el código del backend — resolviendo fugas de datos y necesidades de corrección heredada en la capa ADC/WAAP.
TR7 gestiona la modificación del cuerpo de respuesta a través de tres modos principales: enmascaramiento, sustitución e inyección de etiquetas HTML.
El modo mask reemplaza una porción de una cadena o valor coincidente con regex con un carácter de máscara. La configuración de offset y coincidencia mínima reduce el riesgo de falsos positivos.
El modo replace intercambia una cadena específica o coincidencia regex por un nuevo valor. Se usa para corregir enlaces heredados, ocultar nombres de host internos o normalizar pequeños problemas de respuesta.
El modo htmlTag puede insertar scripts, banners, meta tags o fragmentos HTML similares en una respuesta — sin tocar la plantilla de la aplicación.
Las reglas de modificación del cuerpo pueden delimitarse a un vService, path, content-type o condición de tráfico específicos. El límite de cuerpo predeterminado se mantiene bajo y puede elevarse deliberadamente cuando sea necesario.
La Modificación del Cuerpo de Respuesta realiza cambios controlados en los cuerpos de respuesta para propósitos de seguridad, cumplimiento y modernización heredada.
TR7 convierte los cambios de contenido en reglas centralizadas a través de la acción modifyResponse, que opera sobre el cuerpo de respuesta. La regla se ejecuta durante la fase de respuesta y procesa el cuerpo que llega del backend antes de reenviarlo al cliente. Esta estructura permite correcciones rápidas sin depender del código de la aplicación, las plantillas o el proceso de release del backend — y es especialmente valiosa para cerrar brechas de seguridad críticas en aplicaciones heredadas.
El modo mask reemplaza un valor capturado con un carácter de máscara elegido. El carácter de máscara se define como un único carácter y por defecto es `*`. Una configuración de offset permite que un número especificado de caracteres al inicio o al final permanezcan visibles. Esto protege los datos sensibles en campos como números de tarjeta, números de identidad, IDs de pacientes o direcciones de email preservando la visibilidad parcial.
El modo replace intercambia una cadena específica o coincidencia regex por un nuevo valor. Los nombres de host internos, dominios antiguos, enlaces incorrectos, endpoints deprecated o detalles técnicos en una respuesta pueden corregirse. La operación normaliza la salida del backend en el punto de salida final. El cliente recibe contenido correcto y seguro sin ningún cambio en el código de la aplicación.
El modo htmlTag inserta etiquetas específicas o contenido en una respuesta HTML. Es útil para avisos de mantenimiento, banners de seguridad, texto de cumplimiento o pequeñas correcciones del lado del cliente. El enfoque añade contenido a nivel de respuesta sin modificar la plantilla de la aplicación. Las reglas pueden delimitarse a un path específico o condición de host para una aplicación controlada.
Un matcher de cadenas está disponible para la coincidencia literal simple. Puede seleccionarse un matcher regex para patrones más complejos. El regex ayuda a capturar valores variables como números de identidad, formatos de tarjeta, direcciones de email o patrones personalizados de la organización. Los operadores pueden elegir la coincidencia literal rápida o la coincidencia flexible basada en patrones según sus necesidades.
La sensibilidad a mayúsculas puede ser crítica en algún contenido de respuesta. TR7 puede controlar el comportamiento del matcher con una configuración de sensibilidad a mayúsculas. Opciones como caracteres omitidos permiten preservar caracteres específicos durante el enmascaramiento. Esto produce una salida de enmascaramiento más legible para números de teléfono, IBANs, números de tarjeta o valores con formato personalizado.
El enmascaramiento completo no siempre es deseable. Para propósitos de auditoría o experiencia de usuario, los últimos cuatro dígitos, los primeros caracteres o una sección de formato específica pueden dejarse visibles. El offset de máscara convierte este comportamiento en un parámetro de regla. Se aplica un estándar de enmascaramiento parcial sin ningún código de aplicación.
Algunos patrones pueden producir coincidencias accidentales únicas. Una configuración de conteo mínimo de coincidencias significa que una regla solo se aplica cuando se encuentra un número especificado de coincidencias. Esto ayuda a evitar que un enmascaramiento demasiado agresivo corrompa una página. Los patrones de datos sensibles se aplican de manera más segura y predecible.
Procesar el cuerpo de respuesta es más costoso que las reglas de header. TR7 opera con un tamaño de cuerpo limitado por defecto; este valor puede elevarse cuando sea necesario. El impacto en rendimiento y memoria debe considerarse para respuestas muy grandes. Los operadores deben ejecutar reglas de modificación del cuerpo solo en los servicios y content-types donde sean necesarias.
La modificación del cuerpo puede aplicarse a respuestas de API JSON, páginas HTML o salida en texto plano. El enmascaramiento de campos sensibles en JSON, la inyección de banners en HTML y la ocultación de información interna en texto plano están todos soportados. Las reglas pueden restringirse por condiciones de content-type y path. Esta flexibilidad permite gestionar diferentes tipos de aplicaciones con la misma acción.
La modificación del cuerpo de respuesta es uno de los mecanismos de cumplimiento en el lado de la respuesta de una estrategia de enmascaramiento de datos sensibles. Cuando el enmascaramiento de IP en logs, el cifrado de cookies y el enmascaramiento del cuerpo de respuesta se usan juntos, se logra un control más amplio de fuga de datos. Incluso si el backend devuelve más datos de los previstos, TR7 puede intervenir en el punto de salida final. Esto proporciona a los equipos de cumplimiento una sólida capa de seguridad adicional.
Una regla de modificación del cuerpo no tiene que ejecutarse en cada respuesta. Puede dispararse por host, path, código de estado, content-type, usuario, IP de origen u otras condiciones FX. Esto asegura que la modificación se aplique solo en endpoints sensibles o para grupos de usuarios específicos. Se reduce tanto el coste de rendimiento innecesario como el riesgo de sustitución no deseada.
La modificación del cuerpo de respuesta debe diseñarse junto con el tipo de matcher, el tamaño del cuerpo, el alcance de content-type, la compresión, el comportamiento de streaming y la visibilidad de auditoría.
Un matcher de cadenas es adecuado para coincidencias rápidas y deterministas. Un matcher regex es más flexible pero puede coincidir demasiado ampliamente si está mal escrito. Se recomienda la prueba en una condición de alcance estrecho para reglas críticas.
El límite de cuerpo predeterminado se mantiene pequeño y puede elevarse cuando sea necesario. Procesar respuestas grandes crea overhead de memoria y latencia. Si el límite necesita elevarse a cientos de MB, el alcance del endpoint debe restringirse cuidadosamente.
Las reglas deben restringirse solo a respuestas JSON, HTML o de texto. La modificación del cuerpo no debe aplicarse a archivos binarios, archivos comprimidos o respuestas multimedia. Un filtro de content-type es importante para la operación segura.
Si una respuesta está comprimida, el contenido debe estar en un estado procesable antes de que pueda ejecutarse la modificación del cuerpo. La secuencia de compresión y modificación debe planificarse correctamente. De lo contrario, el matcher no verá el texto esperado.
La modificación del cuerpo en respuestas de streaming requiere un manejo más cuidadoso. Los límites de coincidencia y el comportamiento del buffer importan para el contenido chunked. El alcance de la regla debe mantenerse estrecho para streams grandes o continuos.
Qué regla se ejecutó contra qué respuesta puede registrarse. En lugar de registrar el valor sensible en sí, deben conservarse metadatos como nombre de regla, endpoint y conteo de coincidencias. Esto produce un registro de auditoría más seguro para la revisión de cumplimiento y seguridad.
Una aplicación financiera puede devolver números de tarjeta en su respuesta. TR7 enmascara todo excepto los últimos cuatro dígitos, reduciendo el riesgo de exposición de datos sensibles.
Una aplicación de salud heredada puede devolver IDs de pacientes o información de identidad en su respuesta. TR7 oculta estos campos con enmascaramiento basado en regex antes de que lleguen al usuario.
Una respuesta HTML puede contener referencias a dominios antiguos o nombres de host internos. El modo replace sustituye estos enlaces por el nuevo dominio público, facilitando el proceso de migración.
Cuando la plantilla de la aplicación no puede cambiarse, TR7 puede usar el modo htmlTag para añadir un banner o fragmento informativo a la página. Esto proporciona una solución práctica para avisos temporales de mantenimiento y cumplimiento.
Un backend puede devolver direcciones IP internas, nombres de host o información de versión técnica en su respuesta. TR7 elimina esta información antes de que llegue al cliente usando una regla de replace o mask.
Enmascaramiento de datos sensibles, reescritura de enlaces heredados e inyección de banners mediante los modos mask, replace y htmlTag. Déjenos guiarle por una configuración en vivo sobre sus propios servicios.