一尘不染

Spring Boot SSL客户端

spring-boot

我是Spring Boot的新手。到目前为止,我很喜欢。我已经开发了一个演示SSL rest
Web服务器,它可以正确处理相互X.509证书身份验证。我使用带有自签名客户端和服务器证书的IE浏览器,测试了演示其余的Web服务器是否正常工作-
服务器和浏览器都已成功交换和验证彼此的证书。

我在查找SSL客户端示例时遇到麻烦,该示例显示了如何包括客户端证书和发出https。有人有一个简单的Rest
Client示例,显示了如何使用我的ssl服务器吗?

最好的问候,史蒂夫·曼斯菲尔德


阅读 299

收藏
2020-05-30

共1个答案

一尘不染

我无法让Andy提交上述客户工作。我不断收到错误消息,说“ localhost!= clientname”。无论如何,我让它正常工作。

 import java.io.IOException;

 import org.apache.commons.httpclient.HttpClient;
 import org.apache.commons.httpclient.HttpException;
 import org.apache.commons.httpclient.URI;
 import org.apache.commons.httpclient.methods.GetMethod;

 public class SSLClient {

      static
        {
          System.setProperty("javax.net.ssl.trustStore","c:/apachekeys/client1.jks");
          System.setProperty("javax.net.ssl.trustStorePassword", "password");
          System.setProperty("javax.net.ssl.keyStore", "c:/apachekeys/client1.jks");
          System.setProperty("javax.net.ssl.keyStorePassword", "password");
       }

     public static void main(String[] args) throws HttpException, IOException {

         HttpClient client = new HttpClient();
         GetMethod method = new GetMethod();
         method.setURI(new URI("https://localhost:8443/restserver", false));
         client.executeMethod(method);

         System.out.println(method.getResponseBodyAsString());

     }

 }
2020-05-30