1 package fr.ifremer.quadrige3.synchro.server.security.ldap;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 import org.springframework.context.annotation.Lazy;
29 import org.springframework.ldap.core.DirContextAdapter;
30 import org.springframework.ldap.core.DirContextOperations;
31 import org.springframework.security.core.GrantedAuthority;
32 import org.springframework.security.core.userdetails.UserDetails;
33 import org.springframework.security.core.userdetails.UserDetailsService;
34 import org.springframework.security.ldap.userdetails.UserDetailsContextMapper;
35 import org.springframework.stereotype.Service;
36 import org.springframework.transaction.annotation.Transactional;
37
38 import javax.annotation.Resource;
39 import java.util.Collection;
40
41
42
43
44
45
46 @Service("userDetailsContextMapper")
47 @Lazy
48 @Transactional
49 public class UserDetailsContextMapperImpl implements UserDetailsContextMapper {
50
51 @Resource(name = "quadrigeUserDetailsService")
52 private UserDetailsService userDetailsService;
53
54
55 @Override
56 public UserDetails mapUserFromContext(DirContextOperations ctx, String username, Collection<? extends GrantedAuthority> authorities) {
57 return userDetailsService.loadUserByUsername(username);
58 }
59
60
61 @Override
62 public void mapUserToContext(UserDetails user, DirContextAdapter ctx) {
63 throw new UnsupportedOperationException("Not supported yet.");
64 }
65
66 }