【发布时间】:2020-06-19 18:58:28
【问题描述】:
我想使用 2 路 ssl 连接器创建一个 servlet。 我创建了 test2wayssl.jks 并启动了 SslSelectChannelConnector 当我使用客户端证书从邮递员发送请求时,邮递员的响应是
连接到 127.0.0.1:29226/2wayssl 时出错。
下面是我的代码。但它不起作用。
Server server = new Server(29226);
SslContextFactory sslContextFactory = new SslContextFactory();
sslContextFactory.setKeyStorePath("2-way-ssl-authentication/test2wayssl.jks");
sslContextFactory.setKeyStorePassword("123456");
sslContextFactory.setKeyManagerPassword("123456");
sslContextFactory.setTrustAll(true);
SslSelectChannelConnector sslConnector = new SslSelectChannelConnector(sslContextFactory);
sslConnector.setAllowRenegotiate(true);
sslConnector.setHost("localhost");
sslConnector.setServer(server);
server.addConnector(sslConnector);
ServletHandler handler = new ServletHandler();
handler.addServletWithMapping(HelloServlet.class, "/2wayssl");
server.setHandler(handler);
try {
server.start();
} catch (Exception e) {
e.printStackTrace(); // TODO impl
}
下面是我的servlet类
@SuppressWarnings("serial")
public static class HelloServlet extends HttpServlet
{
@Override
protected void doPost(HttpServletRequest request,
HttpServletResponse response) throws IOException
{
response.setStatus(HttpServletResponse.SC_OK);
response.setContentType("text/html");
response.setCharacterEncoding("utf-8");
response.getWriter().println("<h1>2 Way SSL Authentication</h1>");
}
}
感谢任何帮助。
【问题讨论】:
标签: ssl servlets jetty mutual-authentication