真狠,为了干掉 HTTP ,Spring团队又开源nohttp了!

JAVA葵花宝典

共 1663字,需浏览 4分钟

 ·

2021-03-11 16:55


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="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
https://www.springframework.org/schema/beans/spring-beans.xsd">

上边 

https://www.springframework.org/schema/beans/spring-beans.xsd 

URL 通过类路径解析,而不需要网络连接

这里 XML 命名空间名称(标识符)无法更改为使用 HTTPS。从安全控制的角度来看,这其实并不理想,但因为不通过网络请求,所以对用户几乎没有任何伤害。

另一方面,ROB 表示 Spring 团队已更新所有主机以确保使用 HTTPS,每个站点都支持 HTTPS、重定向到 HTTPS,并使用 Strict Transport Security。

以往潜在的中间人攻击意味着构建基础架构可能已经受到损害,为此,Spring 重新构建了所有构建基础架构并轮换了所有凭据。

这些安全措施是很重要的,但是 ROB 表示安全控制措施到位也很重要,这可以确保问题不再发生。于是团队更新了构建箱以阻止 HTTP 流量,同时为了保护开发人员和用户,创建了 nohttp 项目。

nohttp 可用于查找、替换和阻止 http:// 的使用

项目库包含了几大模块:

nohttp - 核心,允许查找和替换 http:// URL

nohttp-cli - 轻量的 nohttp 封装,用于命令行运行

nohttp-checkstyle - nohttp 与 checkstyle 集成

nohttp-gradle - nohttp 与 Gradle 集成

samples - 一些 nohttp 用例

来源:https://urlify.cn/mmmI32


详情查看项目介绍:
https://github.com/spring-io/nohttp

面试绝对不能写的代码片段

说实话!你知道 Java 中的回调机制吗?

《吃透 MQ 系列》之核心基础篇

介绍一款 API 敏捷开发工具,太爽了!

一款 Java 开源的 Spring Boot 即时通讯 IM 聊天系统

赶快试试 IDEA 解决 Maven 依赖冲突的高能神器!

浏览 21
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报