Как предоставить учетной записи локального пользователя разрешение на добавление других локальных пользователей в Windows 7 Professional? Важным моментом является то, что локальный пользователь, который должен иметь возможность создавать новые учетные записи, не должен иметь прав администратора.
Я не нашел локальную групповую политику для предоставления разрешения на создание пользователей для определенной учетной записи. Поэтому я попытался создать пользователей с помощью PowerShell-Script:
$user = Read-Host "Please enter username"
$objOu = [ADSI]"WinNT://$env:computername"
$objUser = $objOu.Create("User", $user)
$objUser.setPassword("DefaultS3cr3t")
$objUser.setInfo()
$objUser.description = "Simple User"
$objUser.passwordExpired = 1
$objUser.setInfo()
$group = [ADSI]"WinNT://$env:computername/Users,group"
$group.Add("WinNT://$user,user")
Когда я запускаю этот скрипт с правами администратора, он работает как положено.
Чтобы дать обычному пользователю разрешение на выполнение этого сценария без утечки пароля администратора, я попытался использовать "агент условного депонирования", как описано здесь:http://powershell.com/cs/blogs/tobias/archive/2010/10/28/regular-users-running-admin-scripts-safe.aspx
Проблема в том, что задача выполняется в фоновом режиме (потому что она выполняется как пользователь, который не вошел в систему), поэтому имя пользователя не может быть введено.
Использование "SecureString" для сохранения пароля не вариант, потому что пароль администратора может быть извлечен для обычного пользователя.
Есть ли способ предоставить обычному пользователю разрешение на создание других обычных пользователей, не предоставляя полных прав администратора?