해결된 질문
작성
·
50
0
새로운 Authentication 생성시에,
public Authentication createNewAuthentication(Authentication currentAuth, String username) {
UserDetails newPrincipal = this.loadUserByUsername(username);
UsernamePasswordAuthenticationToken newAuth = new UsernamePasswordAuthenticationToken(newPrincipal, currentAuth.getCredentials(), newPrincipal.getAuthorities());
newAuth.setDetails(currentAuth.getDetails());
return newAuth;
}
위 코드에 관하여 질문드립니다.
currentAuth.getCredentials()는 현재 SecurityContext에 있는 Authentication의 비밀번호를 가져와서 newAuth생성에 쓰임으로 알고있는데요.
이 때, 비밀번호를 수정한 경우에는..
newPrincipal.getCredentials() 라고 고친 메서드를 써야할까요?
아니면 Authentication을 바꿔서 유지해주기보다
로그아웃시켜서 다시 로그인해주는 방식이 옳을까요?