4.3. SSL/TLS 协议版本
概述 复制链接链接已复制到粘贴板!
Apache CXF 支持的 SSL/TLS 协议版本取决于配置的特定 JSSE 供应商。默认情况下,JSSE 提供程序配置为 SUN 的 JSSE 供应商实现。
如果启用了 SSL/TLS 安全性,您必须确保明确禁用 SSLv3 协议,以便防止 Poodle 漏洞(CVE-2014-3566)。如需了解更多详细信息,请参阅 JBoss Fuse 6.x 和 JBoss A-MQ 6.x 中的禁用 SSLv3。
SunJSSE 支持的 SSL/TLS 协议版本 复制链接链接已复制到粘贴板!
表 4.2 “SUN 的 JSSE 供应商支持的 SSL/TLS 协议” 显示 SUN 的 JSSE 供应商支持的 SSL/TLS 协议版本。
协议 | 描述 |
---|---|
| 不要使用!(POODLE 安全漏洞) |
| 不要使用!(POODLE 安全漏洞) |
| 支持 TLS 版本 1 |
| 支持 TLS 版本 1.1 (JDK 7 或更高版本) |
| 支持 TLS 版本 1.2 (JDK 7 或更高版本) |
排除特定的 SSL/TLS 协议版本 复制链接链接已复制到粘贴板!
默认情况下,JSSE 供应商提供的所有 SSL/TLS 协议都可用于 CXF 端点(但 SSLv2Hello
和 SSLv3
协议除外,自 Fuse 版本 6.2.0 起特别排除了 CXF 运行时,因为 Poodle 漏洞(CVE-2014-3566)除外)。
要排除特定的 SSL/TLS 协议,请在端点配置中使用 sec:excludeProtocols
元素。您可以将 sec:excludeProtocols
元素配置为 httpj:tlsServerParameters
元素(服务器侧)的子部分。
要排除除 TLS 版本 1.2 之外的所有协议,请按如下所示配置 sec:excludeProtocols
元素(假设您使用 JDK 7 或更高版本):
建议您始终排除 SSLv2Hello
和 SSLv3
协议,以防止 Poodle 漏洞(CVE-2014-3566)。
secureSocketProtocol attribute 复制链接链接已复制到粘贴板!
http:tlsClientParameters
元素和 httpj:tlsServerParameters
元素都支持 secureSocketProtocol
属性,它允许您指定特定的协议。
此属性的语义比较混淆,但此属性强制 CXF 选择支持指定协议的 SSL 供应商,但它不限制供应商只使用指定的协议。因此,端点最终可能会使用与指定不同的协议。因此,建议您不要在代码中使用 secureSocketProtocol
属性。