19
19
import com .navercorp .pinpoint .login .basic .config .BasicLoginProperties ;
20
20
import org .apache .logging .log4j .LogManager ;
21
21
import org .apache .logging .log4j .Logger ;
22
+ import org .springframework .security .core .userdetails .User ;
22
23
import org .springframework .security .core .userdetails .UserDetails ;
23
24
import org .springframework .security .core .userdetails .UserDetailsService ;
24
25
import org .springframework .security .core .userdetails .UsernameNotFoundException ;
@@ -38,7 +39,7 @@ public class PinpointMemoryUserDetailsService implements UserDetailsService {
38
39
39
40
private final Logger logger = LogManager .getLogger (this .getClass ());
40
41
41
- private final Map <String , UserDetails > userDetailsMap ;
42
+ private final Map <String , UserDetails > users ;
42
43
43
44
public PinpointMemoryUserDetailsService (BasicLoginProperties basicLoginConfig ) {
44
45
Map <String , UserDetails > userDetailsMap = new HashMap <>();
@@ -64,12 +65,17 @@ public PinpointMemoryUserDetailsService(BasicLoginProperties basicLoginConfig) {
64
65
logger .debug ("Has been registered {} that has ADMIN role." , adminRoleUserNameList );
65
66
}
66
67
67
- this .userDetailsMap = Map .copyOf (userDetailsMap );
68
+ this .users = Map .copyOf (userDetailsMap );
68
69
}
69
70
70
71
@ Override
71
72
public UserDetails loadUserByUsername (String username ) throws UsernameNotFoundException {
72
- return userDetailsMap .get (username );
73
+ UserDetails user = users .get (username );
74
+ if (user == null ) {
75
+ throw new UsernameNotFoundException ("User not found: " + username );
76
+ }
77
+ return new User (user .getUsername (), user .getPassword (), user .isEnabled (), user .isAccountNonExpired (),
78
+ user .isCredentialsNonExpired (), user .isAccountNonLocked (), user .getAuthorities ());
73
79
}
74
80
75
81
}
0 commit comments