use of pl.pollub.cs.pentagoncafe.flare.DTO.security.UserDetailsImpl in project Flare-event-calendar by PollubCafe.
the class SecurityServiceImpl method getAuthDataForLoggedUser.
@Override
public AuthUserResponseDTO getAuthDataForLoggedUser() {
UserDetailsImpl userDetails = (UserDetailsImpl) SecurityContextHolder.getContext().getAuthentication();
String nick = userDetails.getUsername();
String email = userDetails.getEmail();
String role = userDetails.getRole().name();
return new AuthUserResponseDTO(nick, email, role);
}
use of pl.pollub.cs.pentagoncafe.flare.DTO.security.UserDetailsImpl in project Flare-event-calendar by PollubCafe.
the class AuthSuccessHandler method onAuthenticationSuccess.
@Override
public void onAuthenticationSuccess(HttpServletRequest request, HttpServletResponse response, Authentication authentication) throws IOException {
UserDetailsImpl userDetails = (UserDetailsImpl) authentication.getPrincipal();
HttpSession session = request.getSession();
session.setAttribute("username", userDetails.getUsername());
session.setAttribute("password", userDetails.getPassword());
AuthUserResponseDTO user = userDetails.getUserResponseDTO();
PrintWriter writer = response.getWriter();
mapper.writeValue(writer, user);
response.setStatus(HttpServletResponse.SC_OK);
writer.flush();
}
use of pl.pollub.cs.pentagoncafe.flare.DTO.security.UserDetailsImpl in project Flare-event-calendar by PollubCafe.
the class UserDetailsServiceImpl method loadUserByUsername.
@Override
public UserDetails loadUserByUsername(String usernameOrEmail) throws UsernameNotFoundException {
String ip = getClientIP();
if (bruteForceAttackGuard.isBlocked(ip)) {
throw new TooManyLoginAttempts();
}
User user;
if (usernameOrEmail.contains("@")) {
user = userRepository.findByEmail(usernameOrEmail).orElseThrow(() -> new UsernameNotFoundException(messages.get("login.userAccount.notFound.ByEmail")));
} else {
user = userRepository.findByNick(usernameOrEmail).orElseThrow(() -> new UsernameNotFoundException(messages.get("login.userAccount.notFound.ByUsername")));
}
boolean enabled = user.isEnabled();
boolean accountNonLocked = !user.isBanned();
return new UserDetailsImpl(user.getNick(), user.getPassword(), user.getEmail(), enabled, accountNonLocked, user.getRole());
}
Aggregations