核心内容摘要
【面朝大厂】快手二面:Java 里的 for (;;) 与 while (true),哪个更快?
Spring 团队开源 nohttp 项目用以查找、替换和阻止http://的使用。
项目是为了在可能使用 https:// 的情况下不使用到 http://确保不会发生中间人攻击。
Spring Security、Session 和 LDAP 项目负责人 ROB WINCH 指出Spring 团队竭尽全力更新所有 URL 以使用 HTTPS包括项目 Maven 存储库 URL、Apache License 与文档链接。
但是有些情况下确实无法使用 HTTPS例如Spring 链接的某些站点不支持 HTTPS、XML 命名空间标识符必须与文档中的标识符匹配等。
Spring Framework 目前已经更新以解析通过类路径使用 HTTPS 位置的 XML 位置。
以往这仅适用于使用 HTTP 的 URL。
?xml version
0 encodingUTF-8? beansxmlnshttp://www.springframework.org/schema/beans xmlns:xsihttp://www.w
org/2001/XMLSchema-instance xsi:schemaLocationhttp://www.springframework.org/schema/beans https://www.springframework.org/schema/beans/spring-beans.xsd上边https://www.springframework.org/schema/beans/spring-beans.xsdURL 通过类路径解析而不需要网络连接。
这里 XML 命名空间名称标识符无法更改为使用 HTTPS。
从安全控制的角度来看这其实并不理想但因为不通过网络请求所以对用户几乎没有任何伤害。
另一方面ROB 表示 Spring 团队已更新所有主机以确保使用 HTTPS每个站点都支持 HTTPS、重定向到 HTTPS并使用 Strict Transport Security。
如果你近期准备面试跳槽建议在ddkk.com在线刷题涵盖 一万 道 Java 面试题几乎覆盖了所有主流技术面试题还有市面上最全的技术五百套精品系列教程免费提供。
以往潜在的中间人攻击意味着构建基础架构可能已经受到损害为此Spring 重新构建了所有构建基础架构并轮换了所有凭据。
这些安全措施是很重要的但是 ROB 表示安全控制措施到位也很重要这可以确保问题不再发生。
于是团队更新了构建箱以阻止 HTTP 流量同时为了保护开发人员和用户创建了 nohttp 项目。
nohttp 可用于查找、替换和阻止 http:// 的使用项目库包含了几大模块nohttp- 核心允许查找和替换 http:// URLnohttp-cli- 轻量的 nohttp 封装用于命令行运行nohttp-checkstyle- nohttp 与 checkstyle 集成nohttp-gradle- nohttp 与 Gradle 集成samples- 一些 nohttp 用例详情查看项目介绍