2012-07-04 17 views
28

¿Cómo funcionan las puertas de enlace API? ¿Cuáles son los componentes típicos de una puerta de enlace API? ¿Existen estándares comunes sobre cómo manejan la seguridad, el registro de llamadas y el gobierno?¿Cómo funcionan las pasarelas API?

Respuesta

54

Esta es una pregunta muy amplia, ya que hay muchos tipos diferentes de pasarelas (y soluciones de gestión). En el sentido más amplio, una puerta de enlace es un filtro en algún lugar de su pila web (alojado por usted o un tercero) que filtra el tráfico de API de alguna manera. Parte del filtrado podría ocurrir:

  • Dentro de un CDN si está utilizando uno antes de que llegue a sus servidores.
  • Dentro de un proxy alojado por un tercero al que redirige el tráfico.
  • Dentro de máquinas dedicadas en su propia nube o infraestructura local que ejecutan software proxy (de terceros, de código abierto o en casa).
  • Dentro de una parte específica de la pila de aplicaciones antes de que se tome el tráfico para el procesamiento primario.

Típicamente, los tipos de funciones de la puerta de enlace puede proporcionar puede incluir: control de acceso (tráfico filtrado para el tráfico sólo autenticada/autorizado recibe a través), limitante de la velocidad (la restricción de la cantidad de tráfico puede ser enviado por cada cliente de la API) , captura y registro de análisis/métricas (seguimiento de lo que sucede en la API), filtrado de seguridad (control del contenido en mensajes entrantes para ataques, redireccionamiento/enrutamiento de tráfico (envío de tráfico a diferentes puntos finales en su propia infraestructura dependiendo del remitente o la solicitud))

La puerta de enlace normalmente funciona como un conjunto de módulos y filtros que tratan el tráfico a medida que fluye a alta velocidad y normalmente puede habilitar esos módulos/filtro s necesita y controla sus parámetros. Obviamente, hay varias formas diferentes de hacer la implementación + varios proveedores y sistemas de código abierto para elegir.

Trataré de escribir esto de forma neutral ya que trabajo para 3scale, que ofrece soluciones comerciales y de código abierto, pero lo animo a que mire las diversas opciones y saque sus propias conclusiones. Las principales opciones que tiene son:

  • On-premise pasarelas patentadas, de proveedores como Apigee y Layer7 - es decir, normalmente un aparato de fuerza con la que instala localmente en su centro de datos.
  • Puertas alojadas en la nube, de proveedores como Mashery, Apigee y WSO2 API Cloud que tienen efectivamente tráfico de API redirigido a través de sus servidores para funcionar.
  • Arquitecturas de complementos/agentes, como 3scale (para las que trabajo) que proporcionan módulos de software que se pueden implementar in situ dentro de una puerta de enlace proxy de código abierto como Varnish y también conectados a un CDN.
  • Soluciones de código abierto como APIAXLE y WSO2 que se pueden implementar localmente o en la nube.

Los diferentes enfoques funcionan de manera diferente y depende de lo que usted está buscando. En 3scale, obviamente, tenemos un sesgo para nuestro enfoque, ya que te permite ubicar los agentes de filtrado prácticamente en cualquier lugar de tu stack, ¡pero sin duda cada vendedor tendrá su punto de vista!

+0

¡Así '3Scale' no tiene su propia puerta de enlace proxy !! – Joshi

+0

3scale does - está basado en NGINX. – steve

+0

¿Los gateways API son utilizados por los consumidores de API? - Por ejemplo, llamamos varias aplicaciones de terceros y tener una capa de puerta de enlace nos ayudaría a obtener los beneficios detallados anteriormente. Cualquier ejemplo del mundo real también sería útil –

Cuestiones relacionadas