Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

connexion LDAP en ASP classic avec un composant .NET

1 réponse
Avatar
Claude Cap
Bonjour,

J'ai créé un assembly .NET pour exploiter un annuaire LDAP, voici les lignes
codées en C# pour s'y connecter :
//Ouverture du LDAP
System.DirectoryServices.DirectoryEntry l_ldap = new
System.DirectoryServices.DirectoryEntry(sLdapUrl, userName, passWord);
//Recherche dans le LDAP
System.DirectoryServices.DirectorySearcher l_drcSearch = new
System.DirectoryServices.DirectorySearcher(l_ldap,
"(&(objectClass=user)(sAMAccountName="+idActiveDirectory+"))");
System.DirectoryServices.SearchResult resSearch = l_drcSearch.FindOne();

L'appel de la méthode contenant ces lignes de code en ASP .NET ne pose pas
de pb.
Cependant dans une feuille ASP classic après avoir fait un regasm sur mon
assembly et l'avoir copié dans System32, je fais :

Set o = Server.CreateObject("monNameSpace.maClasse")
Set val = o.selectionnerUtilisateurDansAnnuaire("login")

l'appel de la méthode me génère sur l'execution de la ligne
l_drcSearch.FindOne(); une COMException "Mécanisme d'authentification
inconnu"

Je signale que l'appel d'autres méthodes fonctionne.
La seul différence entre l'appel en ASPNET et ASP est que le processus
appelant n'est pas le même.

Quelqu'un aurait-il un idée?
Merci.

1 réponse

Avatar
Philippe Laloum
Bonjour,

Cela peut venir de l'absence de spécification du mode d'authentification sur
l'objet DirectoryEntry.
Essayez: l_ldap.AuthenticationType=AuthenticationTypes.Secure (ou passez
cette valeur en troisième paramètre du constructeur de la classe
DirectoryEntry.

"Claude Cap" wrote in message
news:
Bonjour,

J'ai créé un assembly .NET pour exploiter un annuaire LDAP, voici les


lignes
codées en C# pour s'y connecter :
//Ouverture du LDAP
System.DirectoryServices.DirectoryEntry l_ldap = new
System.DirectoryServices.DirectoryEntry(sLdapUrl, userName, passWord);
//Recherche dans le LDAP
System.DirectoryServices.DirectorySearcher l_drcSearch = new
System.DirectoryServices.DirectorySearcher(l_ldap,
"(&(objectClass=user)(sAMAccountName="+idActiveDirectory+"))");
System.DirectoryServices.SearchResult resSearch = l_drcSearch.FindOne();

L'appel de la méthode contenant ces lignes de code en ASP .NET ne pose


pas
de pb.
Cependant dans une feuille ASP classic après avoir fait un regasm sur mon
assembly et l'avoir copié dans System32, je fais :

Set o = Server.CreateObject("monNameSpace.maClasse")
Set val = o.selectionnerUtilisateurDansAnnuaire("login")

l'appel de la méthode me génère sur l'execution de la ligne
l_drcSearch.FindOne(); une COMException "Mécanisme d'authentification
inconnu"

Je signale que l'appel d'autres méthodes fonctionne.
La seul différence entre l'appel en ASPNET et ASP est que le processus
appelant n'est pas le même.

Quelqu'un aurait-il un idée?
Merci.