Re: List users in local administrators group on remote machine



Nick wrote:


I am looking to manage all desktops on our network with regard to the
local
administrators group. There are several things I am looking to
accomplish:

1. list all users (domain and local) in local administrators group on
multiple remote computers
2. remove user from local administrators group on remote computer
3. add domain user account to local administrators group on remote
computer
4. remove local user account from remote computer
5. Report on current members of the local administrators group.

Any assistance you can provide would be greatly appreciated.
We have .Net software if that would be the best way to tackle this but I
am
not sure which way to go.

I have an example VBScript program that enumerates all members of local
Administrators group linked here:

http://www.rlmueller.net/Enumerate%20Local%20Group.htm

The program handles membership due to nested local and domain groups. In
VBScript you use the WinNT provider with local objects. To add and/or remove
users (or groups) from a local group use code similar to below. With the
steps that check for direct membership (does not reveal membership due to
group nesting), you may not need to enumerate membership:
=========
' Specify NetBIOS name of computer.
strComputer = "Test001"

' Specify NetBIOS name of domain.
strDomain = "MyDomain"

' Bind to local Administrators group on remove computer.
Set objGroup = GetObject("WinNT://" & strComputer & "/Administrators,group")

' Add a local user to the group.
' Check first if they are already a direct member.
Set objLocalUser = GetObject("WinNT://" & strComputer" & "/JimSmith,user")
If (objGroup.IsMember(objLocalUser.AdsPath) = False) Then
objGroup.Add objLocalUser.AdsPath
End If

' Add a domain user to the group.
' Check first if they are already a direct member.
Set objDomainUser = GetObject("WinNT://" & strDomain & "/JimSmith,user")
If objGroup.IsMember(objDomainUser.AdsPath) = False) Then
objGroup.Add objDomainUser.AdsPath
End If

' Remove local user from group.
' Check first that they are a direct member.
Set objLocalUser = GetObject("WinNT://" & strComputer" & "/RogerJones,user")
If (objGroup.IsMember(objLocalUser.AdsPath) = True) Then
objGroup.Remove objLocalUser.AdsPath
End If

' Remove domain user from group.
Set objDomainUser = GetObject("WinNT://" & strDomain & "/RogerJones,user")
' Check first that they are a direct member.
If objGroup.IsMember(objDomainUser.AdsPath) = True) Then
objGroup.Remove objDomainUser.AdsPath
End If
==========
All of this can be one remotely, as long as your account is a member of the
local Administrators group. By default the group Domain Admins is a member
of the local Adminstrators group when the computer is joined to the domain.

You can read NetBIOS computer names from a text file and code similar to
above in a loop. In brief:
=========
Const ForReading = 1
' Specify text file of NetBIOS names of computers.
strFile = "c:\Scripts\Computers.txt"

' Open file for read access.
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.OpenTextFile(strFile, ForReading)

' Read names from file.
Do Until objFile.AtEndOfStream
strComputer = Trim(objFile.ReadLine)
' Skip blank lines.
If (strComputer <> "") Then
' Process this computer.
' ...
End If
Loop

' Clean up.
objFile.Close

--
Richard Mueller
MVP Directory Services
Hilltop Lab - http://www.rlmueller.net
--


.



Relevant Pages

  • Re: Scripting questions
    ... which is a member of the local Administrators group on computer "WST101". ... Bind to the local administrators group on the remote computer and use the ...
    (microsoft.public.windows.server.scripting)
  • Re: How to make a AD group member of the local administrators grou
    ... Can I use your script and replace the user ingo with the group info or do I ... Clemens de Brouwer ... that group to the local Administrators group. ... ' Check if user already a member. ...
    (microsoft.public.windows.server.scripting)
  • Re: Restricted Groups problem
    ... member servers in "sub.domain" via group policy. ... administrators group. ... Are you trying to add a global group to a global group? ... On member servers in the web servers OU of sub.domain, ...
    (microsoft.public.windows.server.active_directory)
  • Re: Restricted Groups problem
    ... member servers in "sub.domain" via group policy. ... administrators group. ... means that the local machine administrators account would then be a member ... On member servers in the web servers OU of sub.domain, ...
    (microsoft.public.windows.server.active_directory)
  • Re: Problem deleting an unknown object in a group
    ... I can see the SID. ... "Meinolf Weber" wrote: ... Built-In Administrators group. ... The specified account name is not a member of the local ...
    (microsoft.public.windows.server.active_directory)