Я пытаюсь написать служебную программу в виде пакетного файла, который, помимо прочего, добавляет пользователя в локальную политику безопасности «Запретить вход в систему локально». Этот командный файл будет использоваться на сотнях независимых компьютеров (не в домене и даже не в одной сети).
Я предположил, что у меня есть один из следующих вариантов, но, возможно, есть один, о котором я не подумал.
Утилита командной строки, похожая на net.exe
который может изменять локальную политику безопасности.
Пример VBScript, чтобы сделать то же самое.
Напишите свой, используя вызовы WMI или Win32. Я бы предпочел не делать этого, если мне не нужно.
Вы можете использовать ntrights
утилита для редактирования привилегий учетной записи.
Право пользователя «SeDenyInteractiveLogonRight» - это то, что вы хотите изменить, вероятно, как часть входа в систему.
Следующая команда запретит интерактивный вход в систему jscott:
ntrights -u jscott +r SeDenyInteractiveLogonRight
Я тоже так долго искал. Я понял ответ!
Чтобы проверить текущее состояние:
auditpol /get /subcategory:"Process Creation"
Следующая строка внесет изменения. Это установит создание процесса на Включено.
auditpol /set /subcategory:"Process Creation"
Проверьте состояние еще раз, и вы увидите изменение.
В качестве альтернативы вы можете изменить все политики «детального отслеживания», поскольку «создание процесса» является подкатегорией «детального отслеживания». Как это:
auditpol /set /category:"Detailed Tracking"
вы можете экспортировать шаблон с помощью графического интерфейса
внести желаемые изменения на эталонном ПК,
SECPOL.MSC> Действия> Политика экспорта> secpol.inf
тогда используйте
SECEDIT.exe /IMPORT
оберните его на свой любимый язык сценариев (Batch, PS, VBScript)
и он перезапишет текущую политику
Единственное беспокойство будет, если есть проблемы с перезаписью текущей политики
Я никогда не делал этого с политикой безопасности, но раньше делал это с профилями питания, и процесс выглядит почти идентично, подобно команде NET.exe.