Назад | Перейти на главную страницу

Добавить учетную запись пользователя в локальную группу администраторов на нескольких компьютерах с Windows Server 2008

У меня есть несколько серверов, к которым мне нужно предоставить административный доступ 1 конкретному пользователю, т.е. добавить его в список локальных администраторов. Я думаю, это может быть написано с помощью PowerShell или как-то еще ... Может кто-нибудь посоветует мне, как это сделать?

Если этот компьютер находится в домене Active Directory, я бы контролировал это через групповую политику. (Вы можете использовать группы с ограниченным доступом через GPO, который добавляет участников в локальную группу администраторов, одновременно удаляя участников, которых там не должно быть.)

Если этот компьютер не является частью домена, просто запустите

C:\>net localgroup Administrators billybob /add

Конечно, вы также можете запустить указанную выше строку в пакетном файле.

Возможно, не самый красивый Powershell и определенно не самый короткий, но вот модифицированная версия того, что я использую.

# Get the servers from a file named listOfServers.txt, skip lines 
# either commented with a # or blank.
$serverList = Get-Content -Path C:\temp\listOfServers.txt | where {($_ -notlike "*#*") -and ($_ -notmatch "^\s*$")}  
# Cycle throught the servers adding the user to the Administrators group.
foreach ($server in $serverList) {
   $computer = [ADSI]("WinNT://" + $server + ",computer")  
   $group = $computer.psbase.children.find("Administrators") 
   $group.Add("WinNT://yourDomainName/" + $user)
}

В основном то, что сказал Райан Райс. Раньше я использовал ограниченные группы для добавления администраторов (что также выгоняет людей, которых там не должно быть, бонус!).

Для компьютеров, не относящихся к домену, что-то вроде PsExec со списком компьютеров будет работать. Что-то вроде этого:

@ECHO ON

set controlfile=serverlist.txt


FOR /F %%L IN (%controlfile%%) DO (
  SET "line=%%L"
  psexec \\%%L net localgroup Administrators YourDomain\YourUser /add
)