Was ist der richtige Weg zu schicken, um ein client-Zertifikat mit jeder Anforderung, die von der resttemplate im Frühjahr?
will ich konsumieren eines REST-service mit meinem spring-Anwendung. Für den Zugang zu diesem service habe ich ein client-Zertifikat (selbst-signiert und in .jks-format) für die Autorisierung.
Was ist der richtige Weg, um die Authentifizierung gegenüber der rest-service?
Dies ist mein Wunsch:
public List<Info> getInfo() throws RestClientException, URISyntaxException {
HttpEntity<?> httpEntity = new HttpEntity<>(null, new HttpHeaders());
ResponseEntity<Info[]> resp = restOperations.exchange(
new URI(BASE_URL + "/Info"), HttpMethod.GET,
httpEntity, Info[].class);
return Arrays.asList(resp.getBody());
}
InformationsquelleAutor Nas3nmann | 2017-08-16
Du musst angemeldet sein, um einen Kommentar abzugeben.
Hier ist ein Beispiel, wie mithilfe RestTemplate und Apache HttpClient
Sollten Sie definieren Ihre eigenen
RestTemplate
mit konfigurierten SSL-Kontext:Nun alle remote-Aufrufe durchgeführt, indem Sie diese Vorlage unterzeichnet mit
cert.jks
.Hinweis: würden Sie brauchen, um
cert.jks
in der classpath -setRequestFactory
auf eineRestTemplate
Objekt direkt, statt den Umweg über dieRestTemplateBuilder
InformationsquelleAutor Ruslan Poshuk
Oder Sie können einfach importieren Sie das Zertifikat auf Ihrem JDKs cacerts, und alle HTTP-clients die Verwendung des jdk (rest-Vorlage in Ihrem Fall), wird das Zertifikat zu machen, den REST nennen.
P. S: vergessen Sie nicht, starten Sie Ihren server nach einem erfolgreichen import. Standard-Passwort für die keystore -
changeit
InformationsquelleAutor Abhijeet