我有这段代码
UserDetails userDetails = userDetailsServiceImpl.loadUserByUsername(email);
Authentication authentication = new UsernamePasswordAuthenticationToken(userDetails, userDetails.getPassword(), userDetails.getAuthorities());
SecurityContext securityContext = SecurityContextHolder.getContext();
securityContext.setAuthentication(authentication);
HttpSession session = request.getSession(true);
session.setAttribute("SPRING_SECURITY_CONTEXT", securityContext);
这是在 Spring Security 中手动对用户进行身份验证。我的问题是我应该把这段代码放在哪里?把它放在服务层会迫使我将 HttpSession 对象带到服务层,而 AFAIK 是不好的。我也不确定将身份验证逻辑放在表示层中有多好。任何有任何见解的人?
提前致谢。