Je voudrais savoir comment je pourrais lister tous les utilisateurs de mon annuaire LDAP pour les mettre dans une liste déroulantes de mon interface ASP ?
Je voudrais savoir comment je pourrais lister tous les utilisateurs de mon annuaire LDAP pour les mettre dans une liste déroulantes de mon interface ASP ?
Pour lister des trucs de mon LDAP, je fais ca :
Ensuite, il faut un peut triturer du HTML pour la liste et faire un For Each bidule... pour remplir la liste...
Code ASP : 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 ' Récupération du login (sans la particule du domaine) strUser = Mid(Request.ServerVariables("logon_user"), InStr(Request.ServerVariables("logon_user"), "\") + 1, Len(Request.ServerVariables("logon_user")) - InStr(Request.ServerVariables("logon_user"), "\")) ' Parametrage du LDAP Const ADS_SCOPE_SUBTREE = 2 Set objConnection = CreateObject("ADODB.Connection") Set objCommand = CreateObject("ADODB.Command") objConnection.Provider = "ADsDSOObject" objConnection.Open "Active Directory Provider" Set objCommand.ActiveConnection = objConnection objCommand.Properties("Page Size") = 1000 objCommand.Properties("Searchscope") = ADS_SCOPE_SUBTREE ' Commande d'interrogation objCommand.CommandText = "SELECT SN, givenName, samAccountName, telephoneNumber, mail FROM 'LDAP://dc=DOMAINE,dc=local' WHERE objectCategory='User' And samAccountName = '" & strUser & "'" Set objRecordSet = objCommand.Execute ' Lecture du résultat objRecordSet.MoveFirst strNom = objRecordSet.Fields("SN").Value strPrenom = objRecordSet.Fields("givenName").Value strtelephone = objRecordSet.Fields("telephoneNumber").Value strEmail = objRecordSet.Fields("mail").Value ' Cloture de la connexion objRecordSet.Close Set objRecordSet = Nothing Set objCommand = Nothing Set objConnection = Nothing
Cordialement,
Gil DERENNE
DBA Oracle - MySQL - SQL Server - PostegreSQL
Dev WebServices C#.NET
J'ai une erreur sur les lignes de codes que tu viens de me donner :
Mon erreur se trouve sur cette ligne '"Set objRecordSet = objCommand.Execute" et m'indique que "Le tableau n'existe pas."
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 ' Commande d'interrogation objCommand.CommandText = "SELECT mail FROM 'LDAP://dc=flosysteme,dc=lan'" Set objRecordSet = objCommand.Execute
As-tu essayé le code complet de la requete (avec WHERE objectCategory='User') ?
Cordialement,
Gil DERENNE
DBA Oracle - MySQL - SQL Server - PostegreSQL
Dev WebServices C#.NET
Non mais j'ai essaiyé avec "objCommand.CommandText = "SELECT SN, givenName, samAccountName, telephoneNumber, mail FROM 'LDAP://dc=flosysteme,dc=lan' WHERE objectClass='person'""
sachant que je n'ai pas de "objectCategory" mais "objectClass" et j'ai toujours la meme erreur : "Le tableau n'existe pas."
Et ton domaine, c'est bien "flosysteme.lan" ?
Cordialement,
Gil DERENNE
DBA Oracle - MySQL - SQL Server - PostegreSQL
Dev WebServices C#.NET
C'est bien le nom de domaine que j'ai saisie sur Outloock pour consulter tous les utilisateurs de mon annuaire LDAP.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager