AuthenticationVoters没有有效的属性,SpringSecurity

zyfwsgd6  于 2023-08-05  发布在  Spring
关注(0)|答案(1)|浏览(99)

我在Sping Boot 2.1上工作。
我希望允许所有默认端点

  • 要么是经过正确鉴定
  • 如果它们传递了我实现并命名为 * hashSerialSecurityVoter* 的specific authentication规则,则也是如此。

我的代码:

SecurityConfig.java

protected void configure(HttpSecurity http) throws Exception {
  http.csrf()
    .disable().cors().and().exceptionHandling()
    /* [...] */
  .anyRequest()
    .authenticated();
    .accessDecisionManager(playerResourceDecisionManager());
}

个字符
它有效地通过两个选民。
但是在AuthenticatedVoter中,它并不像我预期的那样运行。
即使我通过了身份验证,它也会返回 ACCESS_ABSTAIN 值。
当我调试它时,我注意到Manager没有提供任何ConfigAttribute。
所以authenticatedVoter.supports()方法返回false..
我是否错过了accessDecisionManager声明中的某些内容?
结果是我的主API客户端不再工作,因为我所有的请求都返回403。

woobm2wo

woobm2wo1#

在AccessDecisionManger中添加WebExpressionVoter
.authenticated().fullyAuthenticated().anonymous()都创建WebExpressionConfigAttribute对象。
AuthenticatedVoter(IS_AUTHENTICATED_FULLY属性)在Spring XML安全配置中使用。
Spring Security:v5.7.8

相关问题