IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

API standards et tierces Java Discussion :

[LDAP] Pb avec l'arborescence


Sujet :

API standards et tierces Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    162
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 162
    Par défaut [LDAP] Pb avec l'arborescence
    Bonjour,

    J'ai une base LDAP mais je ne connais pas l'arborescence exacte. Existe-t-il une méthode JAVA permettant d'obtenir cette dernière ?

    Merci.

  2. #2
    Membre confirmé
    Inscrit en
    Novembre 2006
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 23
    Par défaut
    Voilà un petit programme que j'utilisais pour connaître l'organisation de mon LDAP. Tu devrais retrouver assez d'informations pour connaître l'aborescence de ton LDAP. Les méthodes à retenir sont :
    - list(String root) de javax.naming.Context
    - getAttributes(root) de javax.naming.Context

    les imports :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    import java.util.Hashtable;
     
    import javax.naming.Context;
    import javax.naming.NameClassPair;
    import javax.naming.NamingEnumeration;
    import javax.naming.NamingException;
    import javax.naming.directory.Attribute;
    import javax.naming.directory.Attributes;
    import javax.naming.directory.DirContext;
    import javax.naming.directory.InitialDirContext;
    le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    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
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
     
    public static void main(String[] args) 
    	{
    		Hashtable env = new Hashtable();
    		env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory");
    		// LDAP url de la forme : ldap://server:port/
    		env.put(Context.PROVIDER_URL, HOST);
    		env.put(Context.SECURITY_AUTHENTICATION, "simple");
    		// Login à renseigner...
    		env.put(Context.SECURITY_PRINCIPAL, LOGIN);
    		// Password à renseigner...
    		env.put(Context.SECURITY_CREDENTIALS, PASSWORD);
    		try
    		{
    			DirContext ctx = new InitialDirContext(env);
    			listGroups(ctx, "O=Mon organisation");
    		}
    		catch (NamingException e)
    		{
    			e.printStackTrace();
    		}
    	}
     
    	public static void listGroups(DirContext ctx, String root)
    		throws NamingException
    	{
    		NamingEnumeration nEnum = ctx.list(root);
    		while (nEnum != null && nEnum.hasMoreElements()) 
    		{
    			NameClassPair ncp = (NameClassPair) nEnum.nextElement();
    			String group = ncp.getName();
    			System.out.println(group.substring(group.indexOf("=") + 1));
     
    			// On liste les éventuels attributs
    			listAttributes(ctx, group + "," + root);
     
    			// Appel récursif
    			listGroups(ctx, group + "," + root);
    		}
    	}
     
    	public static void listAttributes(DirContext ctx, String root)
    		throws NamingException
    	{
    		Attributes attributes = ctx.getAttributes(root);
    		NamingEnumeration nEnum = attributes.getAll();
    		while (nEnum != null && nEnum.hasMoreElements()) 
    		{
    			Attribute attribute = (Attribute) nEnum.nextElement();
    			System.out.println("\t\t" + attribute);
    		}
    	}

Discussions similaires

  1. [LDAP] Problème avec la fonction ldap_add
    Par Invité dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 12/06/2008, 15h04
  2. Réponses: 1
    Dernier message: 21/02/2008, 14h47
  3. [Smarty] problème avec l'arborescence
    Par gtraxx dans le forum Bibliothèques et frameworks
    Réponses: 3
    Dernier message: 09/01/2008, 14h02
  4. [LDAP] problème avec ldap_bind
    Par xave dans le forum Bibliothèques et frameworks
    Réponses: 10
    Dernier message: 01/08/2006, 11h55
  5. [LDAP] Compatibilité avec Thunderbird
    Par benratti dans le forum Bibliothèques et frameworks
    Réponses: 4
    Dernier message: 29/03/2006, 12h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo