Docs
classDiagram
class AuthenticationManager {
authenticate(Authentication authentication) Authentication
}
class AuthenticationProvider {
authenticate(Authentication authentication) Authentication
supports(Class~?~ authentication) boolean
}
class UserDetailsService {
loadUserByUsername(String username) UserDetails
}
class UserDetails {
getAuthorities() Collection~? extends GrantedAuthority~
getPassword() String
isAccountNonExpired() boolean
isAccountNonLocked() boolean
isCredentialsNonExpired() boolean
isEnabled() boolean
}
AuthenticationProvider <|-- ProviderManager
AuthenticationManager --> AuthenticationProvider : authRequest
AuthenticationManager <.. UserDetailsService : 서비스 주입 후 authenticate()에서 사용자 정보를 꺼내어 사용
UserDetailsService -- UserDetails