我正在尝试配置我的Spring应用程序以使用我从CA购买的SSL证书。我遵循了Tomcat 6.0 configuration的说明,将密钥导入到Tomcat密钥库中,并在server.xml中取消了对SSL连接器的注释。当我启动Tomcat时,我在Tomcat日志中看到连接器开始于端口8443,但是当我转到https://example.com:8443或http: //example.com:8443或https: //example.com (没有空格-我没有发布链接的名声)时,它超时了。我还需要做什么配置才能为我的Spring应用程序启用SSL。我是否必须更改应用程序配置?
我也想只有一些网址通过SSL (登录,编辑个人资料等)。我如何在Spring配置中允许这一点呢?如果我必须让所有的URL都可以通过SSL访问,这是可以的,但并不可取。我还没有找到任何特定于Spring的教程。
发布于 2011-05-18 03:03:46
您需要做的是编辑您的server.xml文件以启用ssl。这是Tomcat的指南,请查看:
http://tomcat.apache.org/tomcat-6.0-doc/ssl-howto.html
为了以编程方式知道请求是否通过端口80或443到达,您需要检查request.isSecure()返回的值。
要完全保护URL,我建议使用过滤器。
我不记得Spring是如何处理这一切的,但我认为获取request对象不会有任何问题。
希望这能有所帮助。
发布于 2011-05-18 09:04:32
根据@mschonaker引用的文档配置Tomcat后,最简单的事情就是在https中定义操作,编辑配置文件表单等,指定j_security_check :协议,例如在Facelet、https中然后,当用户点击登录按钮时,表单通过HTTPS发布,因此它们是安全的。
这会让你在接下来的会话中使用HTTPS :要返回HTTP但仍然停留在同一个会话中,只需提供一个指向完全指定的HTTPS的链接,例如在Facelet、http://#{request.serverName}:8443#{request.contextPath}/some链接中。
如果您希望在读取时保护其他页面,请在web.xml中为它们定义适当的安全约束、用户数据约束和传输保证机密元素。
发布于 2016-09-22 00:06:12
关于第二点
我也想只有一些网址通过SSL (登录,编辑个人资料等)。???
您可以通过在web.xml中修改配置来确定它
<security-constraint>
<web-resource-collection>
<web-resource-name>securedapp</web-resource-name>
<!-- <url-pattern>/*</url-pattern> --> <!--all pages-->
<url-pattern>/yourapp/login</url-pattern>
<url-pattern>/yourapp/edit</url-pattern>
</web-resource-collection>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>
希望能对你有所帮助
https://stackoverflow.com/questions/6033533
复制相似问题