我可以在Tomcat catalina.properties中设置https.protocols吗?
我们在Java1.7.x中使用Tomcat7.0.41。出于PCI合规性原因,我想禁用TLS 1.0。所以我的问题是,我可以在catalina.properties中设置以下值吗? https.protocols=TLSv1.1、TLSv1.2 我主要关心的是我的web应用程序,它通过https向外部供应商发出出站服务调用。在本例中,我的webapp是一个java客户端。我可以在Tomcat catalina.properties中设置https.protocols吗?,tomcat,ssl,pci-compliance,Tomcat,Ssl,Pci Compliance,我们在Java1.7.x中使用Tomcat7.0.41。出于PCI合规性原因,我想禁用TLS 1.0。所以我的问题是,我可以在catalina.properties中设置以下值吗? https.protocols=TLSv1.1、TLSv1.2 我主要关心的是我的web应用程序,它通过https向外部供应商发出出站服务调用。在本例中,我的webapp是一个java客户端。 此外,我的webapp还为浏览器提供页面,我计划在我的服务器中控制TLS。xml如果你说的是一个发出呼叫的服务,那么这与To
此外,我的webapp还为浏览器提供页面,我计划在我的服务器中控制TLS。xml如果你说的是一个发出呼叫的服务,那么这与Tomcat没有任何关系。在Tomcat中,您只需在
上配置sslEnabledProtocols
,即可限制/启用任意协议
对于为传出连接配置可用协议,最好是与正在使用的客户端库(例如httpclient
等)交互以设置协议,但如果要在JVM级别执行此操作,则实际上需要将jdk.tls.disabledAlgorithms
设置为包含TLSv1
(适用于Java8+)或https.protocols
,如您在我们的问题中所述
Tomcat不允许您在
catalina.properties
中设置任意系统属性。您必须在其他地方设置它们,例如在$catalina_BASE/bin/setenv中。(sh|bat)
或在您使用的任何服务启动工具中。谢谢您的提示。我可能会使用setenv.sh设置-Dhttps.protocols=TLSv1.1,TLSv1.2。我发现setenv.sh默认不存在,所以我必须创建它(至少在Tomcat 7中)我正在对所有设置进行更多的分析。非常感谢!是的,您必须自己创建setenv.sh
。不要害羞!还请记住setenv.sh
不是运行的,是您使用jsvc
启动Tomcat,或者可能是您的操作系统包管理器提供的服务启动器。