gpt4 book ai didi

java - SecurityContextHolder.getContext().getAuthentication() 返回 null

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

我想使用以下代码从 spring Security 中手动绕过用户:

User localeUser = new User();
UsernamePasswordAuthenticationToken auth = new UsernamePasswordAuthenticationToken(localeUser ,null, localeUser .getAuthorities());
SecurityContext securityContext = SecurityContextHolder.getContext();
securityContext.setAuthentication(auth);
// Create a new session and add the security context.
HttpSession session = request.getSession(true);
session.setAttribute("SPRING_SECURITY_CONTEXT", securityContext);
return "dummyLogin";

虚拟登录页面(由图 block 处理)在内部调用同一 Controller 中的不同请求映射,我试图在其中获得类似这样的身份验证。

SecurityContextHolder.getContext().getAuthentication()

我在哪里得到空值?

最佳答案

所以,我发现了真正的问题!问题是我在 security-context.xml 中用 security="none"标记了整个 Controller 。因此,当它从第一个链接反弹到第二个链接时,它没有传递任何安全上下文!!抱歉,各位。

关于java - SecurityContextHolder.getContext().getAuthentication() 返回 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22191386/

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