领先一步
VMware 提供培训和认证,以加速您的进步。
了解更多我很高兴地宣布 Spring Security 4.0.2.RELEASE 版本发布。此版本是 4.0 系列的第二个维护版本,重点修复新版本中发现的任何重大问题。有关此版本的完整详细信息,请参阅更改日志。
除了**大量错误修复**之外,此版本的亮点包括
Spring Framework 4.2 GA 版本即将发布。Spring Security 4.0.2 修复了在 Spring Framework 4.2 上运行时的一些问题。我们还在使用 Spring Framework 4.2 重新运行我们的整个测试套件。
以前,如果不存在 ApplicationContext,Spring Security 的测试支持会失败。如果您只想以特定用户身份运行测试,这将很不方便。更重要的是,禁用 Spring Test 的其他功能(例如加载 ApplicationContext)也很不方便。Spring Security 4.0.2 中的更新允许使用以下方法以特定用户身份运行测试:
@SecurityTestExecutionListeners
@RunWith(SpringJUnit4ClassRunner.class)
public class MyTests {
@WithMockUser
@Test
public void runsAsUserWithNoApplicationContext() {
}
}
SecurityTestExecutionListeners 是一个元注解,它向 Spring 的测试框架发出信号,仅使用与 Spring Security 相关的 TestExecutionListeners,而不是尝试加载 ApplicationContext。
Spring Security 4.0.2 包含一个HttpStatusReturningLogoutSuccessHandler,它允许在用户成功注销时返回 HTTP 状态代码,从而轻松向 REST 客户端发出身份验证成功的信号。
您可以使用以下基于 Java 的配置
http
.logout()
.logoutSuccessHandler(new HttpStatusReturningLogoutSuccessHandler())
如果您使用 XML 命名空间配置,则可以使用logout@success-handler-ref
<b:bean id="successHandler"
class="org.springframework.security.web.authentication.logout.HttpStatusReturningLogoutSuccessHandler"/>
<http ...>
<logout success-handler-ref="successHandler"/>
</http>
此版本包含对 Spring Cloud Security 的更改(例如 AES/GCM 支持)。