Los proxies de reenvío proporcionan un punto único a través del cual varias máquinas envían solicitudes a un servidor externo. Pueden aplicar políticas de seguridad, registrar y analizar solicitudes, y realizar otras acciones para que las solicitudes cumplan con las reglas de tu empresa. Con Edge, en general, un proxy de reenvío intermedios de los proxies de tu API y un TargetEndpoint externo (un servidor de destino de backend).
Para usar un proxy de reenvío HTTP entre Edge y TargetEndpoint, debes configurar la configuración del proxy saliente en Message Processor (MP). Estas propiedades configuran los MP para enrutar las solicitudes de destino del perímetro al proxy de reenvío HTTP.
Si deseas configurar un MP para el reenvío mediante proxy, haz lo siguiente:
- En el archivo MP, edita el siguiente archivo:
/opt/apigee/customer/application/message-processor.properties
Si el archivo
message-processor.properties
no existe, créalo. - Edita el archivo para establecer las propiedades relacionadas con el proxy que se describen en la siguiente tabla.
- Asegúrate de que el archivo de propiedades sea propiedad de “apigee” usuario:
chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
- Guarda los cambios en el archivo de propiedades.
- Reinicia el MP, como se muestra en el siguiente ejemplo:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
En la siguiente tabla, se describen las propiedades de message-processor.properties
que usas para configurar un MP con el objetivo de reenviar un proxy a un servidor de backend:
Propiedad | Descripción |
---|---|
conf_http_HTTPClient.use.proxy |
Permite reenviar el uso de proxy. El valor predeterminado es Si estableces este valor en |
conf_http_HTTPClient.use.tunneling |
De forma predeterminada, Edge usa la tunelización para todo el tráfico. Para inhabilitar la tunelización de manera predeterminada, configura esta propiedad como "false". |
use.proxy.host.header.with.target.uri |
Establece el host y el puerto de destino como un encabezado <HTTPTargetConnection> <Properties> <Property name="use.proxy.host. header.with.target.uri">true </Property> </Properties> <URL>https://mocktarget.apigee.net/ my-target</URL> </HTTPTargetConnection> |
conf/http.properties+HTTPClient.proxy.type |
Especifica el tipo de proxy HTTP, como HTTP o HTTPS. De forma predeterminada, usa "HTTP". |
conf/http.properties+HTTPClient.proxy.host |
Especifica el nombre de host o la dirección IP donde se ejecuta el proxy HTTP. |
conf/http.properties+HTTPClient.proxy.port |
Especifica el puerto en el que se ejecuta el proxy HTTP. Si se omite, de forma predeterminada, se usará el puerto 80 para HTTP y el puerto 443 en el caso de HTTPS. |
conf/http.properties+HTTPClient.proxy.user conf/http.properties+HTTPClient.proxy.password |
Si el proxy HTTP requiere autenticación básica, usa estas propiedades para proporcionar detalles de la autorización. |
Por ejemplo:
conf_http_HTTPClient.use.proxy=true conf_http_HTTPClient.use.tunneling=false conf/http.properties+HTTPClient.proxy.type=HTTP conf/http.properties+HTTPClient.proxy.host=my.host.com conf/http.properties+HTTPClient.proxy.port=3128 conf/http.properties+HTTPClient.proxy.user=USERNAME conf/http.properties+HTTPClient.proxy.password=PASSWORD
Si se configura el proxy de reenvío para el MP, entonces todo el tráfico que va desde la API a destinos de backend pasa por el proxy de reenvío HTTP especificado. Si el tráfico de un destino específico de un proxy de API debe ir directamente al destino de backend, se debe pasar el proxy de reenvío y, luego, configurar la siguiente propiedad en el TargetEndpoint para anular el proxy HTTP de reenvío:
<Property name="use.proxy">false</Property>
Para obtener más información sobre cómo configurar las propiedades de TargetEndpoint, incluido cómo configurar la conexión con el extremo de destino, consulta Referencia de las propiedades de los extremos.
Para inhabilitar el proxy de reenvío para todos los destinos de forma predeterminada, configura la siguiente propiedad en tu
Archivo message-processor.properties
:
conf_http_HTTPClient.use.proxy=false
Luego, establece use.proxy
en "true". para cualquier TargetEndpoint que quieras pasar
en un proxy de reenvío HTTP:
<Property name="use.proxy">true</Property>
De forma predeterminada, Edge usa la tunelización para el tráfico al proxy. Para inhabilitar la tunelización de manera predeterminada,
configura la siguiente propiedad en el archivo message-processor.properties
:
conf_http_HTTPClient.use.tunneling=false
Si quieres inhabilitar la tunelización para un destino específico, configura la
La propiedad use.proxy.tunneling
en el TargetEndpoint. Si el destino usa TLS/SSL,
se ignorará esta propiedad y el mensaje siempre se enviará a través de un túnel:
<Property name="use.proxy.tunneling">false</Property>
Para que Edge actúe como proxy de reenvío, reciba solicitudes de los servicios de backend enrutarlos a Internet fuera de la empresa; primero, configura un proxy de API en Edge. El servicio de backend puede hacer una solicitud al proxy de API, que se puede conectar de Google Cloud.