Advertisement
Guest User

Untitled

a guest
Jun 12th, 2017
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.46 KB | None | 0 0
  1. public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain)
  2. throws IOException, ServletException {
  3.  
  4. HttpServletRequest request = (HttpServletRequest) servletRequest;
  5. HttpServletResponse response = (HttpServletResponse) servletResponse;
  6.  
  7. String authHeader = request.getHeader("Authorization");
  8. if (Objects.isNonNull(authHeader)) {
  9. StringTokenizer st = new StringTokenizer(authHeader);
  10. if (st.hasMoreTokens()) {
  11. String basic = st.nextToken();
  12.  
  13. if (basic.equalsIgnoreCase(BASIC)) {
  14. try {
  15. String credentials = new String(Base64.decodeBase64(st.nextToken()), UTF-
  16. int p = credentials.indexOf(DOUBLE_DOT);
  17. if (isValid(p)) {
  18. String username = parseUsername(credentials);
  19. String password = parsePassword(credentials);
  20.  
  21. if (!userService.checkUsername(username) || userService.checkPassword(password)) {
  22. unauthorized(response, "Bad credentials");
  23. }
  24.  
  25. filterChain.doFilter(servletRequest, servletResponse);
  26. } else {
  27. unauthorized(response, "Invalid authentication token");
  28. }
  29. } catch (UnsupportedEncodingException e) {
  30. throw new AuthentificationException("Couldn't retrieve authentication", e);
  31. }
  32. }
  33. }
  34. } else {
  35. unauthorized(response);
  36. }
  37. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement