Ir al contenido principal

Seguridad: Gatekeeper pattern


Gatekeeper pattern


Proteja las aplicaciones y los servicios mediante el uso de una instancia de host dedicada que actĂșa como intermediario entre los clientes y la aplicaciĂłn o servicio. Valida y desinfecta las solicitudes, y pasa las solicitudes y los datos entre ellos. Esto puede proporcionar una capa adicional de seguridad y limitar el ataque a los sistema.


Problema:


Usuario que consume Aplicacion y estĂĄ se conecta a base de datos, storage y apis, por facilidad se da acceso a la base de datos al usuario.


Un usuario malicioso intenta acceder a la aplicaciĂłn y se da cuenta que puede conectarse a la bd directamente, y con esto puede hacer lo que quiera.

SoluciĂłn


Resguardar todos los servicios atras de la aplicaciĂłn y unicamente la aplicaciĂłn puede acceder.
Implementar un capa gateway como puerta de entrada a la arquitectura, y de esta forma cerrar al mundo exterior todos los servicios, incluso a la aplicaciĂłn web.

Gateway va a controlar y filtrar ataques.

Cuando?
- Siempre.
- Aplicaciones que exponen informaciĂłn confidencial
- Aplicaciones distribuidas.

Consideraciones
- Validar todos los request.
- No mantener keys en el gateway.
- Alto performance y escalamiento automĂĄticamente
- Monitorear el gateway.

Referencias:



 

Comentarios

Entradas mĂĄs populares de este blog

Antipatrones Microservicios

1. MigraciĂłn de Manejo de Datos Antipatron. El antipatrĂłn de migraciĂłn basado en datos se produce principalmente cuando se migra de una aplicaciĂłn monolĂ­tica a una arquitectura de microservicios. La razĂłn por la que esto es un antipatrĂłn es que al principio parece una buena idea migrar la funcionalidad del servicio y los datos correspondientes al crear microservicios, pero como aprenderĂĄ en este capĂ­tulo, esto lo llevarĂĄ por un mal camino que puede resultar en alto riesgo, exceso de costo y esfuerzo de migraciĂłn adicional. Comprender los riesgos relacionados con la migraciĂłn de datos y la importancia de "datos sobre funcionalidad" es el primer paso para evitar este antipatrĂłn. La tĂ©cnica para evitar este antipraton consiste en realizar primero una migraciĂłn de la funcionalidad, es decir, primero refactorizar el cĂłdigo fuente, pasando por primero modularizar el contexto o dominio y continuar con la definiciĂłn y construcciĂłn de servicios, a medida que se conoce el cĂłdigo que se...

Microservice Architecture | Arquitectura de microservicios

QuĂ© es  Arquitectura de microservicios ?   El estilo arquitectĂłnico de microservicios es un enfoque para desarrollar una sola aplicaciĂłn como un conjunto de pequeños servicios, cada uno de los cuales se ejecuta en su propio proceso y se comunica con mecanismos ligeros, a menudo una API de recursos HTTP. El hecho de que los  servicios son implementables y escalables de manera independiente, cada servicio tambiĂ©n permite que se escriban diferentes servicios en diferentes lenguajes de programaciĂłn. TambiĂ©n pueden ser gestionados por diferentes equipos. Las aplicaciones creadas a partir de microservicios pretenden ser lo mĂĄs desacopladas y cohesivas posible: poseen su propia lĂłgica de dominio y actĂșan mĂĄs como ltros en el sentido clĂĄsico de que reciben una solicitud, aplican la lĂłgica segĂșn corresponda y producen una respuesta. Un servicio es una funcionalidad que se expone para su uso por otros procesos .  Que otros protocolos puedo us...

Referencia | Material de Apoyo

Arquitectura .NET Architecture Guides Architectural Patterns: Uncover essential patterns in the most indispensable Domain Driven Design Quickly Microservicios Practical Microservices: By Umesh Ram Sharma Building Microservices: Designing Fine-Grained Systems By Sam Newman SOA Design Patterns By Thomas Erl