gpt4 book ai didi

java - 将应用程序属性中的角色列表注入(inject) @PreAuthorize

转载 作者:行者123 更新时间:2023-12-02 17:08:33 24 4
gpt4 key购买 nike

SPEL 有什么技巧吗,所以我可以在 application.yml 中定义我的管理员角色,然后将它们直接加载到类似的东西中:

@PreAuthorize("hasAnyRole(${my.security.admin-roles-list})")

...?

最佳答案

您可以使用 Spring EL 从 @PreAuthorize 注释访问 bean:

application.properties

my.security.admin-roles-list=RoleA,RoleB,RoleC

@Component("securityConfiguration")
public class SecurityConfiguration {

@Value("#{'${my.security.admin-roles-list}'.split(',')}")
private List<String> adminRoles;

public List<String> getAdminRoles() {
return adminRoles;
}
}

然后使用它:

@PreAuthorize("hasAnyRole(@securityConfiguration.getAdminRoles())")

关于java - 将应用程序属性中的角色列表注入(inject) @PreAuthorize,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50507848/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com