Information générale
Catégorie:
Codage, syntaxe et commandes
Titre:
Reading active directory infos
Versions des environnements
Hello Everybody !
Our application use the following procedure at start to get some infos about the current user.
*********************
Procedure GET_AD_INFOS
LPARAMETERS tcNTUserName, tlAdUserObject
LOCAL lcNTUserName, lcUserDomain, lcUserName, loNetwork, ccADS_NAME_INITTYPE_GC, ccADS_NAME_TYPE_NT4
LOCAL ccADS_NAME_TYPE_1779, lcDN, loNameTrans
ccADS_NAME_INITTYPE_GC = 3
ccADS_NAME_TYPE_NT4 = 3
ccADS_NAME_TYPE_1779 = 1
loNetwork = CreateObject("WScript.Network")
lcUserName = loNetwork.UserName
lcUserDomain = loNetwork.UserDomain
lcNTUserName = UPPER(IIF( Empty(tcNTUserName) Or VarType(tcNTUserName) <> "C", ;
lcUserName, ALLTRIM(tcNTUserName)))
* Use NameTranslate object to get DN based on NT Login Name
loNameTrans = CREATEOBJECT("NameTranslate")
loNameTrans.Init( ccADS_NAME_INITTYPE_GC, "")
TRY
loNameTrans.Set(ccADS_NAME_TYPE_NT4, lcUserDomain + "\" + lcNTUserName)
lcDN = loNameTrans.Get(ccADS_NAME_TYPE_1779)
loAdUser = GETOBJECT("LDAP://" + lcDN)
CATCH TO oExp WHEN oExp.Errorno = 1426
loAdUser = Null
ENDTRY
IF ISNULL(loAdUser)
RETURN Null
ENDIF
IF tlAdUserObject
RETURN loAdUser
ENDIF
loAdUserInfo = NEWOBJECT("Empty")
ADDPROPERTY(loAdUserInfo, "cn", loAdUser.cn)
ADDPROPERTY(loAdUserInfo, "department", loAdUser.department)
ADDPROPERTY(loAdUserInfo, "displayname", loAdUser.displayName)
ADDPROPERTY(loAdUserInfo, "fax", loAdUser.facsimileTelephoneNumber)
ADDPROPERTY(loAdUserInfo, "emailaddr", LOWER(NVL(loAdUser.mail,"")))
ADDPROPERTY(loAdUserInfo, "lastname", loAdUser.sn)
ADDPROPERTY(loAdUserInfo, "FirstName", loAdUser.givenName)
ADDPROPERTY(loAdUserInfo, "telephone", loAdUser.telephoneNumber)
ADDPROPERTY(loAdUserInfo, "dn", loAdUser.distinguishedName)
ADDPROPERTY(loAdUserInfo, "upn", loAdUser.userPrincipalName)
ADDPROPERTY(loAdUserInfo, "title", loAdUser.title)
ADDPROPERTY(loAdUserInfo, "employeeid", loAdUser.employeeid)
RETURN loAdUserInfo
endproc
***********************
I just copied it from an example file ! ;-)
Everything works as expected, nevertheless i don't really understand it !!!
Now i have to sync a SAP System with our application.
I have a cursor with employeeids and some spezial infos from SAP and
i need to find the ad infos for a given employeeid (not for the current logon user).
I don't know how to handle this.
Can someone give me an example, how to read the ad infos for a given employeeid ???????
Any help welcomed
Best regards
Albert
Suivant
Répondre
Voir le fil de ce thread
Voir le fil de ce thread à partir de ce message seulement
Voir tous les messages de ce thread
Voir tous les messages de ce thread à partir de ce message seulement