Recherche AD sur l'adresse mail

Le
François
Bonjour,

Je cherche à réaliser un script qui ferait une recherche AD à partir
d'un fichier texte contenant l'adresse mail, et me permettrait de
changer certains attributs d'AD.
Les utilisateurs se trouvent dans différents OU.
Seulement pour la recherche, je ne trouve pas de solution qui me
permettrait de rechercher directement sur le mail. J'aimerai ne pas être
obligé de faire une lecture séquentielle de tous les users et de
comparer à chaque fois avec le mail du fichier texte. J'ai qq centaines
d'utilisateurs.
Je sèche
Merci.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Thierry DEMAN [MVP]
Le #635677
Bonsoir,

voici la fonction que j'utilise !!!!

---------------------------------
Function SearchEMail(Email)
Dim oRootDSE 'As IADs
Dim strDomainNC 'As String
Dim oUser

Email=replace(Email," ","")

Set oRootDSE = GetObject("LDAP://RootDSE")
strDomainNC = oRootDSE.Get("defaultNamingContext")
msgbox(StrDomainNC)


Set oConnection = CreateObject("ADODB.Connection")
oConnection.Provider = "ADsDSOObject"
oConnection.Open "ADs Provider"

Set oRecordset =
oConnection.Execute("<GC://"+StrDomainNC+">;(&(objectCategory=user)(mail="+Email+"));distinguishedName,mail;subtree")

If Not oRecordset.EOF Then
While Not oRecordset.EOF
wscript.echo "AD "&oRecordset.fields("mail")
if not(isnull(oRecordset.Fields("distinguishedName"))) Then
SearchEMail=oRecordset.Fields("distinguishedName")
exit function
end if
oRecordset.movenext
Wend
End If
SearchEMail=""
Wscript.echo "not found : "&Email
end function
-------------------------------------

Tu trouveras d'autres exemples de scripts très intéressants dans le site de
la base Exchange !
=> Certains utilisent le résultat de cette fonction.

A+

--
Thierry DEMAN-BARCELÒ
MVP Exchange, SQL/Server
http://base.faqexchange.info http://www.faqexchange.info
http://ISAFirewalls.org
"François" news:%
Bonjour,

Je cherche à réaliser un script qui ferait une recherche AD à partir d'un
fichier texte contenant l'adresse mail, et me permettrait de changer
certains attributs d'AD.
Les utilisateurs se trouvent dans différents OU.
Seulement pour la recherche, je ne trouve pas de solution qui me
permettrait de rechercher directement sur le mail. J'aimerai ne pas être
obligé de faire une lecture séquentielle de tous les users et de comparer
à chaque fois avec le mail du fichier texte. J'ai qq centaines
d'utilisateurs....
Je sèche...
Merci.



François
Le #635422
Merci, je vais tester...
A+ !


Bonsoir,

voici la fonction que j'utilise !!!!

---------------------------------
Function SearchEMail(Email)
Dim oRootDSE 'As IADs
Dim strDomainNC 'As String
Dim oUser

Email=replace(Email," ","")

Set oRootDSE = GetObject("LDAP://RootDSE")
strDomainNC = oRootDSE.Get("defaultNamingContext")
msgbox(StrDomainNC)


Set oConnection = CreateObject("ADODB.Connection")
oConnection.Provider = "ADsDSOObject"
oConnection.Open "ADs Provider"

Set oRecordset =
oConnection.Execute("<GC://"+StrDomainNC+">;(&(objectCategory=user)(mail="+Email+"));distinguishedName,mail;subtree")


If Not oRecordset.EOF Then
While Not oRecordset.EOF
wscript.echo "AD "&oRecordset.fields("mail")
if not(isnull(oRecordset.Fields("distinguishedName"))) Then
SearchEMail=oRecordset.Fields("distinguishedName")
exit function
end if
oRecordset.movenext
Wend
End If
SearchEMail=""
Wscript.echo "not found : "&Email
end function
-------------------------------------

Tu trouveras d'autres exemples de scripts très intéressants dans le site
de la base Exchange !
=> Certains utilisent le résultat de cette fonction.

A+



Publicité
Poster une réponse
Anonyme