对于最新的稳定版本,请使用 Spring Security 6.5.3spring-doc.cadn.net.cn

授权更改

以下部分涉及如何适应授权支持中的更改。spring-doc.cadn.net.cn

方法安全性

编译方式-parameters

Spring Framework 6.1 删除了 LocalVariableTableParameterNameDiscoverer。 这会影响@PreAuthorize和其他方法安全注释将处理参数名称。 如果使用带有参数名称的方法安全注释,例如:spring-doc.cadn.net.cn

使用id参数名称
@PreAuthorize("@authz.checkPermission(#id, authentication)")
public void doSomething(Long id) {
    // ...
}

您必须使用-parameters以确保参数名称在运行时可用。 有关这方面的更多信息,请访问升级到 Spring Framework 6.1 页面spring-doc.cadn.net.cn