İleri proxy'ler, birden fazla makinenin harici bir sunucuya istek gönderebileceği tek bir nokta sağlar. Güvenlik politikalarını uygulayabilir, istekleri günlüğe kaydedip analiz edebilir ve isteklerin işletme kurallarınıza uyması için başka işlemler gerçekleştirebilirler. Edge'de, ileri proxy genellikle API proxy'leriniz ile harici bir TargetEndpoint (arka uç hedef sunucusu) arasında aracılık yapar.
Edge ile TargetEndpoint arasında bir HTTP ileri proxy'si kullanmak için Mesaj İşlemciler'de (MP'ler) giden proxy ayarlarını yapılandırmanız gerekir. Bu özellikler, MP'leri Edge'den gelen hedef istekleri HTTP yönlendirme proxy'sine yönlendirecek şekilde yapılandırır.
İleri proxy için bir MP yapılandırmak üzere:
- MP'de aşağıdaki dosyayı düzenleyin:
/opt/apigee/customer/application/message-processor.properties
message-processor.propertiesdosyası yoksa oluşturun. - Aşağıdaki tabloda açıklanan proxy ile ilgili özellikleri ayarlamak için dosyayı düzenleyin.
- Özellikler dosyasının "apigee" kullanıcısına ait olduğundan emin olun:
chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
- Özellikler dosyasındaki değişiklikleri kaydedin.
- Aşağıdaki örnekte gösterildiği gibi MP'yi yeniden başlatın:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
Aşağıdaki tabloda, bir MP'yi arka uç sunucusuna ileriye doğru proxy oluşturacak şekilde yapılandırmak için kullandığınız message-processor.properties dosyasındaki özellikler açıklanmaktadır:
| Mülk | Açıklama |
|---|---|
conf_http_HTTPClient.use.proxy |
İleri yönlü proxy kullanımına izin verir. Varsayılan değer Bu değeri |
conf_http_HTTPClient.use.tunneling |
Edge, varsayılan olarak tüm trafik için tünel oluşturma özelliğini kullanır. Tünel oluşturmayı varsayılan olarak devre dışı bırakmak için bu özelliği "false" olarak ayarlayın. |
use.proxy.host.header.with.target.uri |
Hedef ana makineyi ve bağlantı noktasını
<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 |
HTTP proxy'sinin türünü HTTP veya HTTPS olarak belirtir. Varsayılan olarak "HTTP" kullanılır. |
conf/http.properties+HTTPClient.proxy.host |
HTTP proxy'sinin çalıştığı ana makine adını veya IP adresini belirtir. |
conf/http.properties+HTTPClient.proxy.port |
HTTP proxy'sinin çalıştığı bağlantı noktasını belirtir. Bu özellik belirtilmezse varsayılan olarak HTTP için 80 numaralı bağlantı noktası, HTTPS için ise 443 numaralı bağlantı noktası kullanılır. |
conf/http.properties+HTTPClient.proxy.user conf/http.properties+HTTPClient.proxy.password |
HTTP proxy'si temel kimlik doğrulama gerektiriyorsa yetkilendirme ayrıntılarını sağlamak için bu özellikleri kullanın. |
Örneğin:
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
MP için ileri yönlü proxy yapılandırılmışsa API proxy'lerinden arka uç hedeflerine giden tüm trafik, belirtilen HTTP ileri yönlü proxy'den geçer. Bir API proxy'sinin belirli bir hedefinin trafiği, ileri proxy'yi atlayarak doğrudan arka uç hedefine gitmeliyse HTTP ileri proxy'yi geçersiz kılmak için TargetEndpoint'te aşağıdaki özelliği ayarlayın:
<Property name="use.proxy">false</Property>
Hedef uç noktaya bağlantının nasıl yapılandırılacağı da dahil olmak üzere TargetEndpoint özelliklerini ayarlama hakkında daha fazla bilgi için Uç nokta özellikleri referansı başlıklı makaleyi inceleyin.
Tüm hedefler için ileriye doğru proxy'yi varsayılan olarak devre dışı bırakmak istiyorsanız message-processor.properties dosyanızda aşağıdaki özelliği ayarlayın:
conf_http_HTTPClient.use.proxy=false
Ardından, bir HTTP yönlendirme proxy'sinden geçmesini istediğiniz tüm TargetEndpoint'ler için use.proxy değerini "true" olarak ayarlayın:
<Property name="use.proxy">true</Property>
Edge, varsayılan olarak proxy'ye giden trafik için tünel oluşturma yöntemini kullanır. Tünel oluşturmayı varsayılan olarak devre dışı bırakmak için message-processor.properties dosyasında aşağıdaki özelliği ayarlayın:
conf_http_HTTPClient.use.tunneling=false
Belirli bir hedef için tünel oluşturmayı devre dışı bırakmak istiyorsanız TargetEndpoint'te use.proxy.tunneling özelliğini ayarlayın. Hedef TLS/SSL kullanıyorsa bu özellik yoksayılır ve mesaj her zaman bir tünel üzerinden gönderilir:
<Property name="use.proxy.tunneling">false</Property>
Edge'in ileri proxy olarak çalışması (arka uç hizmetlerinden istekleri alıp işletmenin dışındaki internete yönlendirmesi) için önce Edge'de bir API proxy'si oluşturun. Arka uç hizmeti daha sonra API proxy'sine istek gönderebilir ve API proxy'si de harici hizmetlere bağlanabilir.