connexion LDAP en ASP classic avec un composant .NET
1 réponse
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.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
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.
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" <nospam@nospam.com> wrote in message
news:eoZ50zQrEHA.3116@TK2MSFTNGP10.phx.gbl...
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.
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.