UserDetails와 getAuthorities() 메서드현재 인증된 사용자는 UserDetails에 들어있기 때문에, UserDetails의 getAuthorities() 메서드를 사용할 수 있습니다. getAuthorities() 메서드는 Collection를 반환하며, GrantedAuthority는 문자열(String) 타입과는 호환되지 않습니다. 문자열 비교의 문제점원래는 다음과 같이 문자열로 권한을 비교하고 있습니다. 하지만 userDetails.getAuthorities() 메서드는 Collection를 반환하며, contains 메서드는 문자열 객체와 비교하지 않고, GrantedAuthority 객체의 toString() 메서드를 사용하여 비교합니다. 이는 GrantedAuthority..
UserDetails
Spring Security 사용 후 로그인 처리 과정 Spring Security를 사용하기 전에는 서블릿이나 컨트롤러에서 사용자 입력(ID, Password)을 검증하여 처리했습니다. 그러나 Spring Security를 사용하게 되면 앞단에 Spring Security의 AuthenticationManager를 통해 인증처리를 담당합니다. 인증이 성공되면 UserDetails 객체 만들어 Controller에 넘겨줍니다. 실패하면 로그인 페이지를 계속해서 클라이언트에게 반환합니다.자세한 로그인 과정은 아래의 포스팅에서 확인가능합니다.▼ [Spring Security] Spring Security란❓디지털 시대에 보안은 그 어느 때보다 중요해졌습니다. 애플리케이션과 데이터의 보호는 단순한 선택이 ..