PowerShell: создать локальную учетную запись пользователя
Мне нужно создать новую локальную учетную запись пользователя, а затем добавить ее в локальную группу Администраторы. Можно ли это сделать в PowerShell?
EDIT:
# Create new local Admin user for script purposes
$Computer = [ADSI]"WinNT://$Env:COMPUTERNAME,Computer"
$LocalAdmin = $Computer.Create("User", "LocalAdmin")
$LocalAdmin.SetPassword("Password01")
$LocalAdmin.SetInfo()
$LocalAdmin.FullName = "Local Admin by Powershell"
$LocalAdmin.SetInfo()
$LocalAdmin.UserFlags = 64 + 65536 # ADS_UF_PASSWD_CANT_CHANGE + ADS_UF_DONT_EXPIRE_PASSWD
$LocalAdmin.SetInfo()
У меня есть это, но было интересно, есть ли что-то большее, чем PowerShell-esque.
Ответы
Ответ 1
Другой альтернативой являются команды старой школы NET USER:
NET USER username "password" /ADD
ОК - вы не можете установить все параметры, но это намного менее запутанно для простого создания пользователя и легко script в Powershell.
NET LOCALGROUP "group" "user" /add
, чтобы установить членство в группе.
Ответ 2
Как и в PowerShell 5.1, там cmdlet New-LocalUser
, который может создать локальную учетную запись пользователя.
Пример использования:
Создайте учетную запись пользователя
New-LocalUser -Name "User02" -Description "Description of this account." -NoPassword
или создать учетную запись пользователя с паролем
$Password = Read-Host -AsSecureString
New-LocalUser "User03" -Password $Password -FullName "Third User" -Description "Description of this account."
или создать учетную запись пользователя, подключенную к учетной записи Microsoft
New-LocalUser -Name "MicrosoftAccount\usr [email protected]" -Description "Description of this account."
Ответ 3
Попробуйте использовать Carbon's Install-User и Add-GroupMember:
Install-User -Username "User" -Description "LocalAdmin" -FullName "Local Admin by Powershell" -Password "Password01"
Add-GroupMember -Name 'Administrators' -Member 'User'
Отказ от ответственности: Я создатель/сторонник проекта Carbon.
Ответ 4
С 2014 года вот инструкция от представителя Microsoft (Scripting Guy):
Насколько мы можем ненавидеть это признать, до сих пор нет Windows Командлеты PowerShell от Microsoft, которые разрешают создание локального пользователя учетных записей или локальных групп пользователей. У нас наконец есть желаемое государство Конфигурация (DSC), который может это сделать, но на сегодняшний день нет командлеты.
Ответ 5
Import-Csv C:\test.csv |
Foreach-Object {
NET USER $ _.username $ _.password /ADD
NET LOCALGROUP "group" $_.username /ADD
}
отредактируйте csv как имя пользователя, пароль и измените "группу" для вашего имени группы
:) работал на 2012 R2
Ответ 6
Я запустил следующее, но оно все равно просто создает стандартную, а не учетную запись администратора. Что я делаю неправильно. Кстати, не используя CSV, просто запустив команду через powershell.
NET USER adminGuy adminPass/ADD NET LOCALGROUP "администратор" adminGuy/ADD