Spring Security 5.2.0.M2 发布

发布 | Josh Cummings | 2019年4月16日 | ...

我代表社区,很高兴地宣布 Spring Security 5.2.0.M2 正式发布!此版本包含100 多个更新。以下是一些亮点

OAuth 2.0

gh-6446 - 客户端对 PKCE 的支持

PKCE 不仅适用于原生基于浏览器的应用程序,而且适用于任何需要公共客户端的情况。Spring Security 5.2 引入了一种安全的方法,允许后端作为公共客户端进行身份验证。

gh-5350 - OpenID Connect RP 发起的注销
gh-5465 - 使用`JwtDecoder`支持对称密钥
gh-5397 - `NimbusReactiveJwtDecoder` 支持自定义处理器
gh-6513 & gh-5200 - 支持资源服务器令牌内省

资源服务器现在支持第二种 OAuth 2.0 令牌验证策略:令牌内省。当资源服务器想要或必须远程验证令牌时,这非常有用。

gh-5351 - 支持资源服务器多租户 (仅限 Servlet)

随着`AuthenticationManagerResolver`的引入,对多租户资源服务器的初步支持已经到来。

核心

gh-6494 - 将密钥材料转换为`Key`实例

Spring Security 5.2 通过向`ConversionService`注册`Converter`和向`PropertyEditorRegistry`注册`PropertyEditor`,简化了将 X.509 和 PKCS#8 密钥材料转换为`RSAPublicKey`和`RSAPrivateKey`实例的过程。你可以在资源服务器静态密钥示例中看到一个示例。

gh-6774 - 支持 JDK 12
gh-6722 - 引入`AuthenticationManagerResolver`
gh-6546 - 为方法参数引入`@CurrentSecurityContext`

与之前的`@AuthenticationPrincipal`类似,`@CurrentSecurityContext`与参数解析器一起工作以检索`SecurityContext`的各个方面。

public String hello(@CurrentSecurityContext
        SecurityContext context) {
    return Optional.ofNullable(context.getAuthentication())
            .map(Authentication::getName).orElse("world");
}

// or

public String hello(@CurrentSecurityContext
        (expression="authentication.name") String name) {
    return Optional.ofNullable(name).orElse("world");
}

Web

gh-6453 - 引入 `CompositeHeaderWriter`,以及其他一些报头写入清理

项目站点 | 参考文档 | 帮助

获取 Spring 新闻通讯

关注 Spring 新闻通讯

订阅

抢先一步

VMware 提供培训和认证,助您快速提升技能。

了解更多

获取支持

Tanzu Spring 通过一个简单的订阅提供对 OpenJDK™、Spring 和 Apache Tomcat® 的支持和二进制文件。

了解更多

即将举行的活动

查看 Spring 社区所有即将举行的活动。

查看全部