[英]I'm trying to configure a Soap Client to use Certificate from Smart card for authentication in Spring boot (java)
我正在尝试将 Soap 客户端配置为使用智能卡中的证书在 Spring boot (java) 中进行身份验证我可以通过代码访问证书:
private Certificate getCert() throws Exception {
KeyStore ks = KeyStore.getInstance("Windows-MY");
ks.load(null, null);
String alias = "Hubba";
return ks.getCertificate(alias);
}
但我不确定如何将其放入 Soap 客户端:
@Bean
public Jaxb2Marshaller marshaller() {
Jaxb2Marshaller marshaller = new Jaxb2Marshaller();
marshaller.setContextPath("com.hubba.bu");
return marshaller;
}
@Bean
public SoapClient soapClient(Jaxb2Marshaller marshaller) {
SoapClient client = new SoapClient();
client.setWebServiceTemplate(webServiceTemplate());
return client;
}
@Bean
public WebServiceTemplate webServiceTemplate() {
WebServiceTemplate webServiceTemplate = new WebServiceTemplate();
webServiceTemplate.setMarshaller(marshaller());
webServiceTemplate.setUnmarshaller(marshaller());
webServiceTemplate.setDefaultUri("https://test.com/api");
}
有人可以建议我吗?
这是带有生产者和消费者应用程序的 Spring Boot WS 项目的示例。 基本上,您必须在WebServiceTemplate
bean 的构建过程中使用WebServiceTemplateBuilder.additionalMessageSenders()
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.