gpt4 book ai didi

java - Spring Security 为所有角色名称添加了前缀 "ROLE_"?

转载 作者:IT老高 更新时间:2023-10-28 13:48:02 26 4
gpt4 key购买 nike

我的网络安全配置中有此代码:

 @Override
protected void configure(HttpSecurity http) throws Exception {
http
.authorizeRequests()
.antMatchers("/api/**")
.hasRole("ADMIN")
.and()
.httpBasic().and().csrf().disable();

}

所以我在我的数据库中添加了一个具有“ADMIN”角色的用户,当我尝试使用该用户登录时,我总是得到 403 错误,然后我启用了 spring 日志,我发现了这一行:

2015-10-18 23:13:24.112 DEBUG 4899 --- [nio-8080-exec-1] o.s.s.w.a.i.FilterSecurityInterceptor    : Secure object: FilterInvocation: URL: /api/user/login; Attributes: [hasRole('ROLE_ADMIN')]

为什么 Spring Security 正在寻找“ROLE_ADMIN”而不是“ADMIN”?

最佳答案

Spring security 默认添加前缀“ROLE_”。

如果您想删除或更改此内容,请查看

How to change role from interceptor-url?

编辑:也发现了这个: Spring Security remove RoleVoter prefix

关于java - Spring Security 为所有角色名称添加了前缀 "ROLE_"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33205236/

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