![]() |
![]() | ![]() | ![]() | ![]() | ![]() | ![]() | ![]() |
| Welcome to Windows Vista Forums. Our forum is dedicated to helping you find solutions with any problems, errors or issues you are experiencing with Windows Vista. The Vista forum also covers news and updates and has an extensive Windows Vista tutorial section that covers a wide range of tips and tricks. |
| |||||||
![]() |
| |
| | #1 (permalink) |
| | Check if user defined in SD Hi, How would you check if a specific user given to you exists anywhere in the domain please? E.G user id is xxx123456 You want to see if that user is defined or not, if defined get information. The user may be in a number of unknown and different OU's. Many thanks Mark |
My System Specs![]() |
| | #2 (permalink) |
| | Re: Check if user defined in SD Mark wrote: Quote: > > How would you check if a specific user given to you exists anywhere in the > domain please? > > E.G user id is xxx123456 You want to see if that user is defined or not, > if defined get information. The user may be in a number of unknown and > different OU's. use the NameTranslate object in a VBScript program to convert this (with the NetBIOS name of the domain) to the Distinguished Name (DN). The DN indicates where in the hierarchy of AD the object resides. For more on NameTranslate see this link: http://www.rlmueller.net/NameTranslateFAQ.htm The quick example (#6) shows how to do it. If the user does not exist an error is raised by the Set method. If desired, you could trap this error. For example: ============= ' Constants for the NameTranslate object. Const ADS_NAME_INITTYPE_GC = 3 Const ADS_NAME_TYPE_NT4 = 3 Const ADS_NAME_TYPE_1779 = 1 ' Specify the NetBIOS name of the domain and the NT name of the user. strNTName = "MyDomain\TestUser" ' Use the NameTranslate object to convert the NT user name to the ' Distinguished Name required for the LDAP provider. Set objTrans = CreateObject("NameTranslate") ' Initialize NameTranslate by locating the Global Catalog. objTrans.Init ADS_NAME_INITTYPE_GC, "" ' Use the Set method to specify the NT format of the object name. ' Trap error if user does not exist. On Errro Resume Next objTrans.Set ADS_NAME_TYPE_NT4, strNTName If (Err.Number = 0) Then On Error GoTo 0 ' Use the Get method to retrieve the RPC 1779 Distinguished Name. strUserDN = objTrans.Get(ADS_NAME_TYPE_1779) Wscript.Echo strUserDN Else On Error GoTo 0 Wscript.Echo "User " & strNTName & " does not exist" End If -- Richard Mueller MVP Directory Services Hilltop Lab - http://www.rlmueller.net -- |
My System Specs![]() |
| | #3 (permalink) |
| | Re: Check if user defined in SD "Richard Mueller [MVP]" <rlmueller-nospam@xxxxxx> wrote in message news:%231f6x9xHJHA.1308@xxxxxx Quote: > Mark wrote: > Quote: >> >> How would you check if a specific user given to you exists anywhere in >> the domain please? >> >> E.G user id is xxx123456 You want to see if that user is defined or not, >> if defined get information. The user may be in a number of unknown and >> different OU's. > Assuming the user id you have is the "pre-Windows 2000 logon" name, you > can use the NameTranslate object in a VBScript program to convert this > (with the NetBIOS name of the domain) to the Distinguished Name (DN). The > DN indicates where in the hierarchy of AD the object resides. For more on > NameTranslate see this link: > > http://www.rlmueller.net/NameTranslateFAQ.htm > > The quick example (#6) shows how to do it. If the user does not exist an > error is raised by the Set method. If desired, you could trap this error. > For example: > ============= > ' Constants for the NameTranslate object. > Const ADS_NAME_INITTYPE_GC = 3 > Const ADS_NAME_TYPE_NT4 = 3 > Const ADS_NAME_TYPE_1779 = 1 > > ' Specify the NetBIOS name of the domain and the NT name of the user. > strNTName = "MyDomain\TestUser" > > ' Use the NameTranslate object to convert the NT user name to the > ' Distinguished Name required for the LDAP provider. > Set objTrans = CreateObject("NameTranslate") > > ' Initialize NameTranslate by locating the Global Catalog. > objTrans.Init ADS_NAME_INITTYPE_GC, "" > ' Use the Set method to specify the NT format of the object name. > ' Trap error if user does not exist. > On Errro Resume Next > objTrans.Set ADS_NAME_TYPE_NT4, strNTName > If (Err.Number = 0) Then > On Error GoTo 0 > > ' Use the Get method to retrieve the RPC 1779 Distinguished Name. > strUserDN = objTrans.Get(ADS_NAME_TYPE_1779) > > Wscript.Echo strUserDN > Else > On Error GoTo 0 > Wscript.Echo "User " & strNTName & " does not exist" > End If net user /domain xxx123456 /Al |
My System Specs![]() |
![]() |
| Thread Tools | |
| |
Similar Threads | ||||
| Thread | Forum | |||
| Re: User defined functions. | VB Script | |||
| Re: Check if user is already in AD | PowerShell | |||
| How do I set User Right on Bypass traverse checking to 'Not Defined'? | Vista security | |||
| User-defined sorting | Vista file management | |||