我创建了一个Java servlet。我需要使用双向SSL连接来托管它。为我提供了两个.cer文件来实现此目的。我创建了一个Java密钥库,与Apache tomcat一起使用来部署我的servlet。我的https连接的server.xml读取
<Connector SSLEnabled="true" acceptCount="100" clientAuth="false"
disableUploadTimeout="true" enableLookups="false" maxThreads="25"
port="30580" keystoreFile="SSLConnect.jks" keystorePass="$Actual
password" protocol="org.apache.coyote.http11.Http11NioProtocol"
scheme="https" secure="true" sslProtocol="TLS" />
和
我还通过添加
在servlet中启用了https。<security-constraint>
<web-resource-collection>
<web-resource-name>securedapp</web-resource-name>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>
到web.xml文件。
尽管如此,任何人都可以使用我将服务部署到的URL连接到该服务。由于通过https启用了SSL,您是否不需要证书即可连接到URL?我在这里做错了吗?
答案 0 :(得分:0)
您需要设置clientAuth="false"
,而不是{{1}}。