1

Apache HTTP İstemcisi'nde her rota için ayrı bir SSL Bağlam Fabrikası kurmanın herhangi bir yolu var mı. Dokümantasyondan, sadece rota başına değil, SSLContextFactory şemasını yapılandırabildiğimizi görebiliyorum.Apache HTTP Bileşenleri kullanılarak rota başına SSLSocket Factory nasıl yapılandırılır

Registry<ConnectionSocketFactory> r = RegistryBuilder.<ConnectionSocketFactory>create() 
      .register("http", plainsf) 
      .register("https", sslsf) 
      .build(); 

    HttpClientConnectionManager cm = new PoolingHttpClientConnectionManager(r); 
    HttpClients.custom() 
      .setConnectionManager(cm) 
      .build(); 

Bütün hedef bitiş noktaları HTTPS ve görev istemci sertifikası kimlik doğrulaması ile korunmaktadır. Bu son noktaların her biri için belirli bir istemci sertifikası & son nokta sunucusuna sunmak zorundayım. Şu anda, SSLContext Fabrika örneği ile yapılandırılacak her bir hedef son nokta yolu & için ayrı bir HTTPClient örneği oluşturmanın tek yolunu görüyorum.

Bu tasarımın iyileştirilmesi için herhangi bir işaretçi arıyorum.

Teşekkürler.

+0

Neden? Ne problemi çözmeye çalışıyorsun? – EJP

cevap

2

Bu soruyu Apache HTTP İstemcisi Forumlarında yayınladım & bunun nasıl ele alınacağı konusunda bir çözüm buldu.

biri, sonuna 'http.socket-fabrika-kayıt' bağlam özellik kullanmak ancak bu özellik belgesiz olarak kabul edilir unutmayın olabilir.

http://hc.apache.org/httpcomponents-client-4.5.x/httpclient/xref/org/apache/http/impl/conn/DefaultHttpClientConnectionOperator.html#66

da bir özel bağlamında kullanılması SSL yuvalarını oluşturarak niteliklerini, kılan bir özel ConnectionSocketFactory inşa edebilirsiniz unutmayın. Bu, sorunu çözmek için önerilen yol olacaktır.

İlgili konular