Script to get a list of SIDs in a NT 4.0 domain

Hello, I would like to get a complete list of all users, groups (local and globals ) and computers in a domain NT 4.0
Do you know any script to do it ?

Who is Participating?
LittleRed1Connect With a Mentor Commented:
Hi intentalo69

I'm not sure about the computers, but I'l try anyway

From the command line (or in a batch script) you need to do three things:

To get a list of users
for /f "skip=7 tokens=1-3" %a in ('net users /domain^|find /v "The command"') do echo %a>>users.txt&echo %b>>users.txt&echo %c>>users.txt
You don't need to  pipe it to file if you don't want to

To get a list of groups (must be done from a domain controller)
for /f "skip=5 tokens=1-3 delims=*" %a in ('net group^|find /v "The command"') do echo %a>>groups.txt&echo %b>>groups.txt&echo %c>>groups.txt

For a list of computers try this (there will be a '$' at the end of each computer name which can be removed if needed)
for /f "tokens=1-3" %a in ('net group "Domain Users"') do (echo %a&echo %b&echo %c)|find "$" >>computers.txt
Pete LongTechnical ConsultantCommented:
Copy all AD users to a text file


Being a scripting nut, I tend to approach these kind of problems from a scripting standpoint.

copy and paste the code below into "Mattisastud.vbs" and then run it.

Then open the GroupMembership.txt file and it should have everything you need.  
If you want to view the machine accounts also, uncomment the commmented line...

-=-=-=-=-=-=-=-=-=-=-=-=-=-  Code Below  -=-=-=-=-=-=-=-=-=-=-=-=-=-  

Dim myNetwork
Set myNetwork = CreateObject("Wscript.Network")

strDomain = myNetwork.UserDomain

Set objDomain = getobject("WinNT://" & strDomain) 'Grab the domain object
objDomain.filter = Array("Group") 'Filter for just computers.

Dim myFSO
Set myFSO = CreateObject("Scripting.FileSystemObject")
Set myFile = myFSO.CreateTextFile("GroupMembership.txt",1)

myOutput = ""

For each objGroup in objDomain
    myOutput = myOutput & objGroup.Name & vbcrlf
   For Each objUser in objGroup.Members
'          myOutput = myOutput & vbtab & objUser.Name & vbcrlf
         If right(,1) <> "$" Then
              myOutput = myOutput & vbtab & objUser.Name & vbcrlf
         End if

WScript.Echo myOutput
myfile.writeline myOutput

-=-=-=-=-=-=-=-=-=-=-=-=-=-  End Code  -=-=-=-=-=-=-=-=-=-=-=-=-=-  


*****Other Links*****

How can I create a file containing all the user names in my domain?

How can I produce a list of the user logon names in my domain?

Run a Group/User or User/Group report.
here is another option
the csvde and ldifde utilities can export user information
intentalo69Author Commented:
Hello guys!
thanks for the answer. I've tried to run this script in the NT 4.0 PDC, but this script does not work
I get the error "runtime error:file name or class name not found during...... operation: 'getobject'
I think this script cannot work in NT 4.0, doesn't it?
Please remember, that I would like to obtain a list of users and groups of a NT 4.0 domain.
intentalo69Author Commented:
Ok my question is focus on the idea of getting a list of users (in plain text file) to be used as input
to other script that we have to get the SIDs.
I think it easy to create a list using Hyena or dameware and then use it as parameter list to the other script
Anyway I don`t know if there are any tool to generate a list of sid of all users and groups in a NT 4.0 domain (not in Actie directory)

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.