Bonjour voici notre premier billet.
Il concerne l'accès à LDAP en utilisant .NET.
L'accès à LDAP se fait via l'espace de nom : System.DirectoryServices.

Les accès se font par l'intermédiaire d'ADSI (Active Directory Services Interfaces). ADSI, un ensemble d'interfaces fourni par Microsoft pour accéder à différents réseaux.
Les applications clientes ADSI peuvent être développées pour Vista, XP, Windows 2000, NT4.0, Windows 98 et Windows 95.
Veuillez noter qu'ADSI n'est pas installé à l'origine sur NT4.0, Windows 98 et Windows 95.
Pour déterminer le la version d'ADSI installée sur votre ordinateur, vous pouvez consulter ce lien http://support.microsoft.com/kb/216290
Voici comment lire une entrée sur un serveur ldap. Notez la syntaxe du nom du serveur.
try
{
DirectoryEntry Ldap = new DirectoryEntry("LDAP://192.168.0.106:389/o=cstech, c=Fr","Anonymous","");
Ldap.AuthenticationType = AuthenticationTypes.Anonymous;
DirectorySearcher searcher = new DirectorySearcher(Ldap);
searcher.Filter = "(objectClass=person)";
searcher.SearchScope = SearchScope.Subtree;
SearchResult result = searcher.FindOne();
Console.WriteLine(result.Path);
// lecture des propriétés non dynamique mais trés rapide performantes
// n'oublions pas que sous LDAP les propriétés sont multivaluées..
Console.WriteLine(result.Properties["givenname"][0].ToString());
// lecture dynamique moins performante, mais
// autorise l'appel des méthodes de DirectoryEntry et plus facile à utiliser
DirectoryEntry DirEntry = result.GetDirectoryEntry();
Console.WriteLine(DirEntry.Properties["givenname"].Value);
}
catch (Exception Ex)
{
Console.WriteLine(Ex.Message);
}
Pour plus d'information vous pouvez consulter l'excellent article de Thomas Lebrun ici
A bientôt,