为了在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文件??
不,没有必要。这意味着你的web应用程序只能通过HTTPS访问(而不能通过HTTP访问)。
如果省略<transport-guarantee>CONFIDENTIAL</transport-guarantee>
标记(或整个<security-constraint>
),则应用程序将通过HTTP和HTTPS可用。如果您的web.xml
包含<transport-guarantee>CONFIDENTIAL</transport-guarantee>
,如果您尝试使用HTTP, Tomcat会自动将请求重定向到SSL端口。
请注意,默认Tomcat配置不启用SSL连接器,您必须手动启用它。
如果你仔细查看,博客会进一步解释:
应用程序中的任何资源都只能通过HTTPS访问,无论是servlet还是JSP。术语
CONFIDENTIAL
告诉服务器让应用程序在SSL
上工作。如果您想关闭此应用程序的SSL
模式,则只需关闭不要删除片段。把CONFIDENTIAL
改成NONE