相关疑难解决方法(0)

@Preauthorize 中的 Spring Boot 属性

我正在设置一个 Spring Boot (v1.2.6) web 项目并使用 Spring Security (v3.2.8)。我发现@PreAuthorize注释非常方便,但我不知道是否有办法从注释中的 SpEL 读取 Boot 的属性。我正在尝试这样做:

@PreAuthorize("mysecurity.permit")
Run Code Online (Sandbox Code Playgroud)

使用application.yml 中声明的属性:

mysecurity:
    permit: true
Run Code Online (Sandbox Code Playgroud)

但我得到

Failed to evaluate expression 'mysecurity.permit'
Run Code Online (Sandbox Code Playgroud)

我已经和尝试@mysecurity.permit,并${mysecurity.permit}也具有相同的结果。似乎可以在服务中声明一个方法并以某种@service.isMySecurityPermited()方式访问它,但是我很高兴知道我是否能够直接访问该属性。

spring spring-security spring-el spring-boot

3
推荐指数
1
解决办法
7923
查看次数

@ConditionalOnProperty 在带有 @Configuration 的 TYPE 级别

是否可以@ConditionalOnProperty在 TYPE 级别上使用,以便查看/评估在非默认属性文件中定义的属性?

以下似乎仅在默认属性文件中定义属性时才起作用,即在 application.properties

@Configuration
@ConditionalOnProperty(prefix = "jmx.rmi", value = "enabled")
public class JmxConfiguration {
    // JMX related stuff
}
Run Code Online (Sandbox Code Playgroud)

java spring

1
推荐指数
1
解决办法
6446
查看次数

标签 统计

spring ×2

java ×1

spring-boot ×1

spring-el ×1

spring-security ×1