Мы используем Spring-boot 2.0.5 с JWT Token
SecurityContextHolder.getContext().getAuthentication().getPrincipal()
возвращает String (Username)
вместо CustomUserDetails
Объект, который реализован UserDetails
класс только в файле WAR.
Эта проблема дублируется только в большинстве случаев, когда код работает идеально
Нижеследующее упоминание - это единственный пользовательский фильтр, который мы используем, и он вызывается после FilterSecurityInterceptor Filter
public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain)
throws IOException, ServletException {
CustomHttpServletRequestWrapper request = new CustomHttpServletRequestWrapper((HttpServletRequest) req);
if(request!=null && request.getHeader("Authorization")!=null && request.getHeader("Authorization").length()>7) {
CustomUserDetails user = (CustomUserDetails) SecurityContextHolder.getContext().getAuthentication().getPrincipal();
}
}
Должен возвращаться объект детализации пользователя