配置SSL以在Tomcat 5.5服务器上使用Java Web应用程序

时间:2010-06-21 14:01:07

标签: java web-applications tomcat ssl

这是一个noob问题,但我需要在Java Web应用程序中使用SSL(使用Stripes实现其MVC实现,Spring和Hibernate的标准Java Web应用程序)需要什么?

我正在Tomcat 5.5上部署war文件。我只希望SSL用于某些URL - 任何传输用户密码的URL - 因此帐户注册,更改密码和登录。

我是否只需要获得SSL证书并将其安装在Tomcat中?如何确保https仅用于某些URL?

4 个答案:

答案 0 :(得分:8)

  

我是否只需要获得SSL证书并将其安装在Tomcat中?

确实需要这样做,您需要配置安全连接器。

  

如何确保https仅用于某些网址?

recommendation用于加密表单提交(即使用相关表单中的绝对https://网址action),但表单提交页面本身防止人在中间发作。

因此,在您需要的任何地方使用“安全”绝对链接,并使用web.xml中的安全限制为特定内容强制执行SSL:

<security-constraint>
    <web-resource-collection>
        <web-resource-name>Secure Area</web-resource-name>
        <url-pattern>/secure/*</url-pattern>
        <http-method>GET</http-method>
        <http-method>POST</http-method>
    </web-resource-collection>
    <user-data-constraint>
        <transport-guarantee>CONFIDENTIAL</transport-guarantee>
    </user-data-constraint>
</security-constraint> 

答案 1 :(得分:2)

您可以将Filter重定向到https://以获取所需的网址。

答案 2 :(得分:2)

  

我是否只需要获得SSL证书并将其安装在Tomcat中?

The Tomcat manual有一个非常容易理解的如何设置ts的指南。

  

如何确保https仅用于某些网址?

这条逻辑需要在您的应用程序中。 Bozho的解决方案肯定会有效,如果您使用特定的Web框架,可能还有其他解决方案。

答案 3 :(得分:1)

是的,您需要SSL证书。它可以是自签名的,也可以由官方认可的认证机构颁发。

这是一篇关于Tomcat中SSL的一般设置以及如何修改部署描述符以启用SSL的好教程:http://www.jroller.com/gmazza/entry/setting_up_ssl_and_basic