gpt4 book ai didi

java - 在身份验证完成之前获取 j_username

转载 作者:行者123 更新时间:2023-12-01 11:34:06 25 4
gpt4 key购买 nike

我构造了一个在“springSecurityFilterChain”之前运行的过滤器,并且该过滤器需要j_username作为其doFilter 方法。不幸的是,在成功的身份验证结束之前,不可能使用主体对象并通过 getName() 获取用户名。
是否有其他方法可以在第一个过滤器中获取j_username

最佳答案

覆盖

 public class ExUsernamePasswordAuthenticationFilter extends UsernamePasswordAuthenticationFilter {

@Override
public Authentication attemptAuthentication(HttpServletRequest request, HttpServletResponse response) throws AuthenticationException {
final String username = request.getParameter("j_username");

// delegate your logic
return super.attemptAuthentication(request, response);
}
}

在安全配置

<bean id="exUsernamePasswordAuthFilter" class="..." />

<custom-filter ref="exUsernamePasswordAuthFilter" position="FORM_LOGIN_FILTER"/>

http://docs.spring.io/spring-security/site/docs/3.1.x/reference/springsecurity-single.html#ns-custom-filters

关于java - 在身份验证完成之前获取 j_username,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30175173/

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