NCBACK-162
Test Workflow / test (push) Has been cancelled

This commit is contained in:
2026-06-01 15:51:42 +07:00
parent 5427603f89
commit 5c438c466f
@@ -6,23 +6,27 @@ import jakarta.servlet.ServletException;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import lombok.RequiredArgsConstructor;
import org.springframework.security.authentication.UsernamePasswordAuthenticationToken;
import org.springframework.security.core.authority.SimpleGrantedAuthority;
import org.springframework.security.core.context.SecurityContextHolder;
import org.springframework.stereotype.Component;
import org.springframework.web.filter.OncePerRequestFilter;
import ru.soune.nocopy.dto.BaseResponse;
import ru.soune.nocopy.dto.MessageCode;
import java.io.IOException;
import java.util.List;
@Component
@RequiredArgsConstructor
public class JwtAuthFilter extends OncePerRequestFilter {
private final JwtUtil jwtUtil;
private final ObjectMapper objectMapper;
@Override
protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response,
protected void doFilterInternal(HttpServletRequest request,
HttpServletResponse response,
FilterChain filterChain) throws ServletException, IOException {
String authHeader = request.getHeader("Authorization");
@@ -47,8 +51,15 @@ public class JwtAuthFilter extends OncePerRequestFilter {
return;
}
request.setAttribute("userId", jwtUtil.extractUserId(token));
request.setAttribute("email", jwtUtil.extractEmail(token));
Long userId = jwtUtil.extractUserId(token);
String email = jwtUtil.extractEmail(token);
UsernamePasswordAuthenticationToken authentication =
new UsernamePasswordAuthenticationToken(email, null, List.of(new SimpleGrantedAuthority("ROLE_USER")));
SecurityContextHolder.getContext().setAuthentication(authentication);
request.setAttribute("userId", userId);
request.setAttribute("email", email);
filterChain.doFilter(request, response);
}