PDA

Показать полную графическую версию : [решено] Создание и настройка пользователя из консоли


vcrank
23-12-2016, 09:11
В организации имеется Windows Server 2012R2
Не в домене
Иногда надо заводить и настраивать новых пользователей, а именно:
1. Создать пользователя
2. Перенести его в группу Пользователи удаленного рабочего стола
3. Запретить смени и установить неограниченный срок действия пароля
4. На вкладке "Среда" прописать запускаемую программу и её рабочий каталог

Хочется это дело автоматизировать, но пока смог разобраться только с парой пунктов:
1. net user "пользователь" "пароль" /add
2. net localgroup "Пользователи удаленного рабочего стола" "пользователь" /add
2.1. net localgroup "Пользователи" "пользователь" /delete

С 3 пунктом может быть смогу доразбираться, а вот по п.4 информации не нашёл

Iska
23-12-2016, 09:15
PowerShell.

vcrank
23-12-2016, 09:23
PowerShell »
Изначально я пробовал нагуглить именно по PS, но везде даются команды для домена

Iska
23-12-2016, 10:27
$oIADsComputer = [System.DirectoryServices.DirectoryEntry]"WinNT://ComputerName,computer"

$oIADsUser = $oIADsComputer.Create('user', 'Иванов')
$oIADsUser.SetPassword("111")
$oIADsUser.SetInfo()

$oIADsUser.FullName = 'Иванов Иван Иванович'
#$oIADsUser.Profile = 'C:\Test' # Так, это Вам не нужно…
$oIADsUser.Put("UserFlags", $oIADsUser.Get("UserFlags") -bor 0x10040)
$oIADsUser.SetInfo()

$oIADsGroup = [System.DirectoryServices.DirectoryEntry]"WinNT://ComputerName/Пользователи удаленного рабочего стола,group"
$oIADsGroup.Add($oIADsUser.Path)

По поводу же:
4. На вкладке "Среда" прописать запускаемую программу и её рабочий каталог »
Как найдёте эту вкладку — отпишитесь, добавим заполнение свойств TerminalServicesInitialProgram и TerminalServicesWorkDirectory. Я лично не видел таких свойств у локальных пользователей. С другой стороны — я не видел и Windows Server 2012R2. Как и Windows Server 2012. Так что — а вдруг?!

Казбек
23-12-2016, 11:02
vcrank,

PowerShell script to create local user accounts or local groups (https://4sysops.com/archives/powershell-script-to-create-local-user-accounts-or-local-groups/)

vcrank
23-12-2016, 11:48
Как найдёте эту вкладку — отпишитесь »

Iska
23-12-2016, 14:33
Что ж, попробуйте:
$oIADsComputer = [System.DirectoryServices.DirectoryEntry]'WinNT://ComputerName,computer'

$oIADsUser = $oIADsComputer.Create('user', 'Иванов')
$oIADsUser.SetPassword('111')
$oIADsUser.SetInfo()

$oIADsUser.FullName = 'Иванов Иван Иванович'
$oIADsUser.Put('UserFlags', $oIADsUser.Get('UserFlags') -bor 0x10040)
$oIADsUser.PSBase.InvokeSet('TerminalServicesInitialProgram', 'c:\Windows\System32\notepad.exe')
$oIADsUser.PSBase.InvokeSet('TerminalServicesWorkDirectory', 'c:\Windows\System32')
$oIADsUser.SetInfo()

$oIADsGroup = [System.DirectoryServices.DirectoryEntry]'WinNT://ComputerName/Пользователи удаленного рабочего стола,group'
$oIADsGroup.Add($oIADsUser.Path)




© OSzone.net 2001-2012