我马上就要完成Tomcat的配置了。
我遇到的麻烦是关于我的客户端应用程序和我的浏览器。
我希望当用户使用浏览器访问Tomcat时,它只能通过https访问,这样我就可以使用证书进行身份验证。
在我的客户端应用程序中,当我与axis2通信时,我只想使用http,所以我不会使服务器过载。我使用apache rampart和使用证书的密码回调,所以不使用https是没有问题的。
现在,这是问题的开始。以下是我成功实现的方法:
在tomcat上允许SSL,客户端认证对浏览器来说就像是一个护身符。
但是,服务器仍然可以通过
http://localhost:8080
这是我关于这件事的server.xml:
<Connector port="8080" protocolo="HTTP/1.1" redirectPort="8443" />
<Connector port="8443" maxThreads="150" scheme="https" secure="true" SSLEnabled="true" keystoreFile="conf/service.jks" keystorePass="password" clientAuth="true" keyAlias="service" sslProtocol="TLS"/>
它不应该重定向到8443端口吗?
我的客户端应用程序可以通过8080端口毫无问题地进行通信。
那么我到底做错了什么呢?
发布于 2012-06-22 01:02:05
您是否在应用程序的web.xml中定义了安全约束?如果没有,请尝试添加如下内容:
<security-constraint>
<web-resource-collection>
<web-resource-name>SSL Forwarding</web-resource-name>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>
https://stackoverflow.com/questions/11126145
复制相似问题