1000 * jHipsterProperties.getSecurity().getAuthentication().getJwt().getTokenValidityInSecondsForRememberMe();
}
- public String createToken(Authentication authentication, boolean rememberMe) {
+ public String createToken(Authentication authentication, boolean rememberMe, com.samsung.samserver.domain.User user) {
String authorities = authentication.getAuthorities().stream()
.map(GrantedAuthority::getAuthority)
.collect(Collectors.joining(","));
return Jwts.builder()
.setSubject(authentication.getName())
.claim(AUTHORITIES_KEY, authorities)
+ .claim("fullName", user.getFirstName())
.signWith(SignatureAlgorithm.HS512, secretKey)
.setExpiration(validity)
.compact();
import com.fasterxml.jackson.annotation.JsonProperty;
import com.samsung.samserver.security.jwt.JWTConfigurer;
import com.samsung.samserver.security.jwt.TokenProvider;
+import com.samsung.samserver.service.impl.UserService;
import org.hibernate.validator.constraints.NotBlank;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpStatus;
private final AuthenticationManager authenticationManager;
- public UserJWTService(TokenProvider tokenProvider, AuthenticationManager authenticationManager) {
+ private final UserService userService;
+
+ public UserJWTService(TokenProvider tokenProvider, AuthenticationManager authenticationManager, UserService userService) {
this.tokenProvider = tokenProvider;
this.authenticationManager = authenticationManager;
+ this.userService = userService;
}
private LoginVM UILogin2LoginVM(UILogin uiLogin) {
Authentication authentication = this.authenticationManager.authenticate(authenticationToken);
SecurityContextHolder.getContext().setAuthentication(authentication);
boolean rememberMe = (loginVM.isRememberMe() == null) ? false : loginVM.isRememberMe();
- String jwt = tokenProvider.createToken(authentication, rememberMe);
+ String jwt = tokenProvider.createToken(authentication, rememberMe, userService.getUserWithAuthorities().get());
HttpHeaders httpHeaders = new HttpHeaders();
httpHeaders.add(JWTConfigurer.AUTHORIZATION_HEADER, "Bearer " + jwt);
return new ResponseEntity<>(new JWTToken(jwt), httpHeaders, HttpStatus.OK);