1

Gibt es eine Möglichkeit, eine separate SSL Context Factory für jede Route im Apache HTTP Client einzurichten. Aus der Dokumentation kann ich nur sehen, wir können SSLContextFactory pro Schema nicht pro Route konfigurieren.So konfigurieren Sie SSLSocket Factory pro Route mit Apache HTTP-Komponenten

Alle meine Zielendpunkte sind mit HTTPS geschützt und erfordern die Clientzertifikatauthentifizierung. Für jeden dieser Endpunkte muss ich ein spezifisches Client-Zertifikat auswählen & es dem Endpoint Server präsentieren. Derzeit sehe ich die einzige Möglichkeit ist, eine separate HTTPClient-Instanz für jede Ziel-Endpunkt-Route & konfigurieren mit SSLContext Factory-Instanz erstellen.

Ich bin hier auf der Suche nach irgendwelchen Hinweise zur Verbesserung dieses Designs.

Danke.

+0

Warum? Welches Problem versuchen Sie zu lösen? – EJP

Antwort

2

Ich habe diese Frage in Apache HTTP-Client-Foren & gestellt die Lösung, wie Sie damit umgehen.

Man kann ‚http.socket-Fabrik-Registrierung‘ Context-Attribut zu diesem Ende verwenden, aber bitte beachten Sie diese Funktion ohne Papiere in Betracht gezogen.

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

Bitte beachten Sie auch, dass man eine benutzerdefinierte ConnectionSocketFactory bauen können, die SSL-Sockets Verwendung von benutzerdefinierten Kontextattributen macht beim Erstellen. Das wäre der empfohlene Weg, um das Problem zu lösen.