Thắc mắc phân quyền JWT

em ko rõ cho khoanh tròn đó…
em xét quyền cho tài khoản đăng nhập quyền member
sau khi đăng nhập thành công… em lưu lại token… rồi thực hiện họi đến api /user/getListProductType kia… thì nó vẫn ra kết quả dù em xét nó quyền admin mới dược gọi đến

request
image

config:
doFillter

public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
        throws IOException, ServletException {
    HttpServletRequest httpRequest = (HttpServletRequest) request;
    String authToken = httpRequest.getHeader(TOKEN_HEADER);
    if (jwtService.validateTokenLogin(authToken)) {
        String username = jwtService.getUsernameFromToken(authToken);
        UserDao user=userService.findByPhone(username);
        if (user != null) {
            boolean enabled = true;
            boolean accountNonExpired = true;
            boolean credentialsNonExpired = true;
            boolean accountNonLocked = true;
            UserDetails userDetail = new User(username, user.getPassword(), enabled, accountNonExpired,
                    credentialsNonExpired, accountNonLocked, user.getAuthorities());
            UsernamePasswordAuthenticationToken authentication = new UsernamePasswordAuthenticationToken(userDetail,
                    null, userDetail.getAuthorities());
            authentication.setDetails(new WebAuthenticationDetailsSource().buildDetails(httpRequest));
            System.out.println("----");
            SecurityContextHolder.getContext().setAuthentication(authentication);
        }
    }
    chain.doFilter(request, response);
}

CustomAccessDeniedHandler

public class CustomAccessDeniedHandler implements AccessDeniedHandler {

    @Override
    public void handle(HttpServletRequest request, HttpServletResponse response, AccessDeniedException exc)
            throws IOException, ServletException {
        response.setStatus(HttpServletResponse.SC_FORBIDDEN);
        response.getWriter().write("Access Denied!");

    }
}

controller

@RequestMapping("/user")public class UserController {
@Autowired
SegmentService segmentService;
@Autowired
ProductTypeService productTypeService;
@Autowired
private JwtService jwtService;
@Autowired
private UserSerivce userSerivce;
@Autowired
private UserRepository userRepository;
ResponseData responseData = new ResponseData(1, "Chưa có dữ liệu", null);
@RequestMapping(value = "/logins",method = RequestMethod.POST)
ResponseEntity<?> logins(InputStream inputStream){
    try {
        responseData = new ResponseData(1, "Lỗi", null);
        BaseRequest baseRequest = RequestUtils.convertToBaseRequest(inputStream);
        System.out.println("--------------------");
        if (baseRequest.getWsRequest() != null) {
            ObjectMapper objectMapper = new ObjectMapper();
            JsonNode jsonNode = objectMapper.readTree(objectMapper.writeValueAsString(baseRequest.getWsRequest()));
            String phone = "";
            String pass = "";
            String result= "";
            if (jsonNode.get("phone") != null) {
                phone = jsonNode.get("phone").asText();
            }
            if (jsonNode.get("password") != null) {
                pass = jsonNode.get("password").asText();
            }
            UserDao personal = userSerivce.findByPhone(phone);
            if (personal != null) {
                String passs = userRepository.findByUsername(phone);
                if (pass.equals(passs)) {
                    result=jwtService.generateTokenLogin(phone);
                    responseData = new ResponseData(0, "OK", new ResponseBase(null,result));
                } else {
                    responseData = new ResponseData(0, "sai mat khau", null);
                }
            } else {
                responseData = new ResponseData(1, "Tài khoản không tồn tại!", null);
            }
        }
    }
    catch (Exception e){
        e.printStackTrace();
    }
    return ResponseEntity.status(HttpStatus.OK).body(responseData);
}

 @RequestMapping(value = "/getListProductTypes", method = RequestMethod.POST)
public ResponseEntity<?> getListProductType(InputStream inputStream) {
    try {
        BaseRequest baseRequest = RequestUtils.convertToBaseRequest(inputStream);
        responseData = new ResponseData(1, "loi", null);
        if (baseRequest.getWsRequest() != null) {
            List<ProductType> list = productTypeService.findAll();
            responseData = new ResponseData(0, "thanh cong", new ResponseBase(null, list));
        }
    } catch (Exception e) {
        e.printStackTrace();
    }
    return ResponseEntity.status(HttpStatus.OK).body(responseData);
}

Trình bày có đầu có cuối cái coi em trai. Đọc vào xong còn chả hiểu vấn đề em muốn hỏi là gì thì trả lời sao?
Tiêu đề thì có JWT mà nhìn vô 1 hồi chả thấy cái chuỗi token đâu cả vậy?

a zai. em sửa lại rồi

Bước này em get được user name từ cái JWT của em không?
Tương tự với biến role.

có a ạ… e get được cả 2 cái đó ra rồi ạ

có ai đó giúp em được không

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?