Advertisement
Guest User

Untitled

a guest
Mar 22nd, 2017
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.53 KB | None | 0 0
  1. @Default
  2. @Dependent
  3. @Stateless
  4. public class AuthenticationService implements IAuthenticater
  5. {
  6. private Map<String,String> db;
  7.  
  8. @Inject KeyGenerator keygen;
  9.  
  10. public AuthenticationService()
  11. {
  12. db = new HashMap<>();
  13. addToDb("aardbei", "framboos");
  14. addToDb("Stroezzuz", "ufo");
  15. addToDb("Kruet'okx","ofu");
  16. }
  17.  
  18. @Override
  19. public boolean isAuthenticated(String name, String password)
  20. {
  21. name = name.toUpperCase();
  22. password = password.toUpperCase();
  23. return (db.get(name)!=null && db.get(name).equals(password));
  24. }
  25.  
  26. private void addToDb(String user, String pass)
  27. {
  28. user = user.toUpperCase();
  29. pass = pass.toUpperCase();
  30. db.put(user,pass);
  31. }
  32.  
  33. @Override
  34. public String issueToken(String login, UriInfo uriInfo)
  35. {
  36. Key key = keygen.generateKey();
  37. String jwtToken = Jwts.builder()
  38. .setSubject(login)
  39. .setIssuer(uriInfo.getAbsolutePath().toString())
  40. .setIssuedAt(new Date())
  41. .setExpiration(toDate(LocalDateTime.now().plusMinutes(15L)))
  42. .signWith(SignatureAlgorithm.HS512, key)
  43. .compact();
  44. return jwtToken;
  45. }
  46.  
  47. @Override
  48. public Key generateKey()
  49. {
  50. return keygen.generateKey();
  51. }
  52.  
  53. private Date toDate(LocalDateTime localDateTime) {
  54. return Date.from(localDateTime.atZone(ZoneId.systemDefault()).toInstant());
  55. }
  56. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement