在tomcat双向ssl中禁用localhost的客户端身份验证

时间:2013-11-20 16:43:36

标签: tomcat ssl

我的服务器使用此连接器运行tomcat 7:

<Connector port="443"
       connectionTimeout="20000"
       URIEncoding="UTF-8"
       compression="on" compressionMinSize="2048" noCompressionUserAgents="gozilla, traviata"
       compressableMimeType="text/html,text/xml,text/plain,application/xml,text/js,text/css"
       protocol="org.apache.coyote.http11.Http11NioProtocol"
       maxThreads="150"
       redirectPort="80"
       SSLEnabled="true"
       sslProtocol="TLS"
       scheme="https"
       secure="true"
       truststoreType="JKS"
        keystoreFile="keystore.jks" keystorePass="changeit"
        truststoreFile="trust.jks" truststorePass="changeit"
       keyAlias="myAlias"
       clientAuth="true"
    />

我在服务器上有一个小程序,必须与我的应用程序通信,但我不希望每次向我的应用程序发出请求时都包含证书。

如何告诉tomcat免除所有localhost请求提供证书?

1 个答案:

答案 0 :(得分:1)

只需配置即可。

您需要更改clientAuth,然后添加一个过滤器,该过滤器拒绝所有非来自localhost并且未提供证书的请求。

将客户端证书添加到本地应用程序可能更容易。