| 12
 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
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 
 |  
import java.util.Hashtable;
 
import javax.naming.Context;
import javax.naming.NamingEnumeration;
import javax.naming.NamingException;
import javax.naming.directory.Attribute;
import javax.naming.directory.Attributes;
import javax.naming.directory.SearchResult;
import javax.naming.ldap.InitialLdapContext;
import javax.naming.ldap.LdapContext;
 
public class Test_LDAP {
	public static void main(String[] args) {
 
		String LDAP_CONTEXT_FACTORY = "com.sun.jndi.ldap.LdapCtxFactory";
		String LDAP_SERVER_URL = "LDAP://10.0.0.0:389";
		String LDAP_BASE_DN = "DC=Develo,DC=COM";
		String LDAP_AUTHENTICATION_MODE = "simple";
		String LDAP_USER = "Develo" + "\\" + "Administrateur";
		String LDAP_PASSWORD = "password";
 
		Hashtable<String, String> env = new Hashtable<String, String>();
		env.put(Context.INITIAL_CONTEXT_FACTORY, LDAP_CONTEXT_FACTORY);
		env.put(Context.PROVIDER_URL, LDAP_SERVER_URL + "/" + LDAP_BASE_DN);
		env.put(Context.SECURITY_AUTHENTICATION, LDAP_AUTHENTICATION_MODE);
		env.put(Context.SECURITY_PRINCIPAL, LDAP_USER);
		env.put(Context.SECURITY_CREDENTIALS, LDAP_PASSWORD);
 
		try {
			// LdapContext
			LdapContext ctx = new InitialLdapContext(env, null);
 
		    //Filtre du LDAP
			NamingEnumeration<SearchResult> userAnswer = ctx.search("OU=Comptes,OU=STM", null);
 
			//Parcourir tous les Utilisateurs
			while (userAnswer.hasMoreElements()) {
				SearchResult sr = (SearchResult) userAnswer.next();
				Attributes attrs = sr.getAttributes();
 
				if (attrs != null) {
					try {
						//Récupération des attributs
						for (NamingEnumeration ae = attrs.getAll(); ae.hasMore();) {
							Attribute attr = (Attribute) ae.next();
							if (attr.getID().equals("sn")) {
								System.out.println(attr.get(0).toString());
							}
							if (attr.getID().equals("displayName")) {
								System.out.println(attr.get(0).toString());
							}
						}
					} catch (NamingException e) {
						System.err.println("Défaut : " + e);
						e.printStackTrace();
					}
				}
			}
			ctx.close();
		}
		catch (NamingException e) {
			System.err.println("Problème de connexion");
			e.printStackTrace();
		}
	}
} | 
Partager