第 4 章 Red Hat build of OpenJDK 功能
最新的 Red Hat build of OpenJDK 17 发行版本可能包括新功能。另外,最新版本可能会增强、弃用或删除来自以前红帽构建的 OpenJDK 17 版本的功能。
有关所有其他更改和安全修复,请参阅 OpenJDK 17.0.4 发行版本。
4.1. Red Hat build of OpenJDK 的改进 复制链接链接已复制到粘贴板!
Red Hat build of OpenJDK 17 为最初在以前版本的 OpenJDK 版本中创建的功能提供改进。
Java Generic Security Services (GSS)或 Kerberos 的 HTTPS 频道绑定支持
当 Negotiate 通过 javax.net.HttpsURLConnection 选择 Kerberos 身份验证时,红帽构建的 OpenJDK 17.0.4 发行版本支持 TLS 频道绑定令牌。
渠道绑定令牌越来越需要,因为安全性的增强形式可以缓解某些类型的社交设计、中间人的 man (MITM)攻击。它们的工作原理是,从客户端到客户端对连接安全性(如 TLS 服务器证书表示)和更高级别身份验证凭据(如用户名和密码)之间的绑定的了解。然后,服务器可以检测客户端是否已由 MITM 对,并关闭会话/连接。
该功能通过 jdk.https.negotiate.cbt 系统属性进行控制,该属性在 Oracle 文档 中已完全描述。
请参阅 JDK-8285240 (JDK Bug System)
在 ProcessBuilder中处理带引号参数的处理错误
在 Red Hat build of OpenJDK 17.0.4 版本之前,在 Windows 上对 ProcessBuilder 的参数以双引号标记开头,然后以反斜杠结束,然后传递给命令的双引号标记不正确,从而导致命令失败。例如,参数 "C:\\Program Files\" "被处理为末尾具有额外的双引号标记。
红帽构建的 OpenJDK 17.0.4 发行版本通过恢复之前可用的行为来解决这个问题,其中反斜杠(\)前的反斜杠(\)不会被特殊处理。
请参阅 JDK-8283137 (JDK Bug System)
当遇到 IOException 时默认 JDK 压缩器关闭
已修改 DeflaterOutputStream.close () 和 GZIPOutputStream.finish () 方法,以便在传播可浏览堆栈前关闭相关的默认 JDK 压缩程序。已修改 ZIPOutputStream.closeEntry () 方法,以便在传播 IOException 之前关闭关联的默认 JDK 压缩程序,而不是键入 ZipException, up 堆栈。
请参阅 JDK-8278386 (JDK Bug System)
在 java.io.File 中禁用 Windows Alternate Data Stream 支持的新系统属性
java.io.File 的 Windows 实现默认允许访问 NTFS Alternate Data Streams (ADS)。这些流的结构化格式为 "filename:streamname"。红帽构建的 OpenJDK 17.0.4 发行版本添加了一个系统属性,允许您在 java.io.File 中禁用 ADS 支持。要在 java.io.File 中禁用 ADS 支持,请将系统属性 jdk.io.File.enableADS 设置为 false。
在 java.io.File 中禁用 ADS 支持会导致更严格的路径检查,以防止使用特殊设备文件,如 NUL:。
请参阅 JDK-8285660 (JDK Bug System)
更新于 2024-05-04