5. Aplicando políticas a las Mule Application


Cuando despliegas una aplicación en Cloudhub o On-Premise existe un concepto que se llama políticas. Las políticas van a representar un requerimiento no funcional y puntual como, por ejemplo, autenticarse con un usuario y contraseña, caché de respuesta, limitar peticiones en un lapso de tiempo, etc.

 

Gestión de Políticas en API Manager

Cuando configuras una política en el API Manager de MuleSoft, esta se descarga automáticamente en el API Gateway o en los Runtimes de Mule conectados, dentro de un directorio de políticas específico. Lo interesante aquí es que puedes cambiar dinámicamente estas políticas sin la necesidad de re-desplegar tu aplicación API o reiniciar los Runtimes, siempre que no cambie la definición de la API REST.

Para que una API pueda ser gestionada por políticas, debes habilitar el API Autodiscovery en la aplicación con el ID de la API correspondiente. Además, los clientes de la API necesitarán permisos específicos para acceder a los recursos protegidos por estas políticas.

Tipos de Políticas de API y sus Funciones

Existen varias políticas que puedes aplicar, cada una con un propósito específico:

  • Control de Cliente ID: Requiere que las aplicaciones cliente autorizadas usen un ID de cliente y un secreto para el acceso.
  • Control CORS: Asegura que solo las solicitudes HTTP con un origen permitido puedan acceder a la API.
  • Autenticación y Autorización: Puedes utilizar OAuth 2.0, autenticación básica, JWT, o controles de acceso basados en IP.
  • Tokenización: Protege campos sensibles sustituyendo los datos reales por tokens no sensibles.
  • Protección de amenazas de carga útil: Previene ataques con cuerpos de solicitud JSON/XML de gran tamaño.
  • Calidad de Servicio (QoS): Incluye limitación de tasa y control de picos para gestionar la carga en tu API.
  • Caching, logging y más: Mejora el rendimiento y el seguimiento de tu API a través de políticas de caché y registro de mensajes.
  • Etc.

Personalización de Políticas:

Aparte de las políticas estándar incluidas con MuleSoft, tienes la flexibilidad de crear políticas personalizadas. Esto te da la libertad de definir reglas de seguridad que se ajusten a los requerimientos específicos de tu negocio o aplicación.

Para ver la lista completa de políticas disponibles en MuleSoft, puedes consultar la documentación oficial en su página web.

 

Implementación Práctica

Digamos que estás construyendo una API que maneja información sensible. Podrías querer aplicar una política de Tokenización para proteger datos como números de tarjetas de crédito. También, para evitar ataques de denegación de servicio, podrías utilizar una política de Rate Limiting que rechace o encole las solicitudes que superen un cierto límite.

Con estas políticas, MuleSoft te ofrece una manera ágil y centralizada de agregar seguridad y funcionalidades a tus APIs sin tener que codificar estas características directamente en las aplicaciones. Esto no solo te ahorra tiempo en el desarrollo, sino que también hace que tu API sea más segura y fácil de mantener.

 

Conclusión

Como arquitecto MuleSoft, tu habilidad para aplicar y gestionar políticas de API efectivamente es crucial. Te permite asegurar la comunicación, proteger los datos y mantener la integridad de las aplicaciones que desarrollas. Recuerda, las políticas son tu conjunto de herramientas de seguridad y debes saber cuándo y cómo utilizar cada una para construir APIs robustas y seguras. Piensa en las políticas como los guardianes de tu API, manteniendo todo en orden y funcionando sin problemas.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *