Advertisement
Guest User

Untitled

a guest
Jun 4th, 2018
117
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.65 KB | None | 0 0
  1. public class Login extends Command {
  2.  
  3. @Override
  4. String execute(HttpServletRequest request, HttpServletResponse response) throws LoginSampleException {
  5.  
  6.  
  7.  
  8. PasswordEncryptionService passwordService = new PasswordEncryptionService();
  9.  
  10.  
  11. String email = request.getParameter("email");
  12. String password = request.getParameter("password");
  13.  
  14.  
  15. // her henter vi salten fra brugeren, til at validere brugeren.
  16. try {
  17. byte[] salt = LogicFacade.getSalt(email, password);
  18.  
  19.  
  20.  
  21. byte[] attemptedPassword = passwordService.getEncryptedPassword(password, salt);
  22.  
  23. if(passwordService.authenticate(password, attemptedPassword, salt)){
  24.  
  25. User user = null;
  26. user = LogicFacade.login(email, password);
  27.  
  28. HttpSession session = request.getSession();
  29. session.setAttribute("user", user);
  30. session.setAttribute("role", user.getRole());
  31.  
  32. return user.getRole() + "page";
  33.  
  34. }else{
  35.  
  36.  
  37. // Vi logger salten og det hashede password til loggeren
  38.  
  39. }
  40.  
  41. } catch (SQLException | NoSuchAlgorithmException | InvalidKeySpecException ex) {
  42. Logger.getLogger(Login.class.getName()).log(Level.SEVERE, null, ex);
  43.  
  44. String errorMessage ="We have an internal problem, but we are working as hard as possible, to solve it.";
  45. Logger.getLogger(Login.class.getName()).log(Level.SEVERE, null, ex);
  46. request.setAttribute("errorMessage", errorMessage );
  47. try {
  48. request.getRequestDispatcher("/index.jsp").forward(request, response);
  49. } catch (ServletException | IOException ex1) {
  50. Logger.getLogger(Login.class.getName()).log(Level.SEVERE, null, ex1);
  51. }
  52. // her bliver der kun kastet en error, hvis det er vores valideringsmetoder, der ikke virker... // tror jeg
  53. } catch (LoginSampleException ex) {
  54.  
  55. String errorMessage ="The retrived password or username did not match, please try again.";
  56. Logger.getLogger(Login.class.getName()).log(Level.SEVERE, null, ex);
  57. request.setAttribute("errorMessage", errorMessage );
  58. try {
  59. request.getRequestDispatcher("/index.jsp").forward(request, response);
  60. } catch (ServletException | IOException ex1) {
  61. Logger.getLogger(Login.class.getName()).log(Level.SEVERE, null, ex1);
  62. }
  63. }
  64. return null;
  65. }
  66. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement