28

为了在 Tomcat 下进行 SSL 配置测试,这都是强制性的吗?

下面这行取自一个网站

为了在我们的测试中执行此操作,请使用已在 Tomcat 中成功部署的任何应用程序,并首先通过 http 和 https 访问它,看看它是否工作正常。如果是,则打开该应用程序的 web.xml 并在 web-app 结束之前添加此 XML 片段,即</web-app>

<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 文件中进行?

4

2 回答 2

45

不,这是没有必要的。这意味着您的 Web 应用程序只能通过 HTTPS 使用(不能通过 HTTP 使用)。

如果您省略<transport-guarantee>CONFIDENTIAL</transport-guarantee>标记(或整个<security-constraint>),您的应用程序将可通过 HTTP 和 HTTPS 使用。如果您尝试使用 HTTP,Tomcat 会自动将请求重定向到 SSL 端口web.xml<transport-guarantee>CONFIDENTIAL</transport-guarantee>

请注意,默认的 Tomcat 配置不启用 SSL 连接器,您必须手动启用它。检查SSL 配置 HOW-TO以获取详细信息。

于 2011-10-17T12:24:14.983 回答
5

如果您仔细查看,该博客会进一步解释:

应用程序中的任何资源都只能通过HTTPS访问,无论是 Servlet 还是 JSP。该术语CONFIDENTIAL是告诉服务器使应用程序工作的术语SSL。如果您想关闭SSL此应用程序的模式,则只需打开不要删除片段。只需将值作为NONE而不是CONFIDENTIAL.

于 2015-04-08T21:14:39.307 回答