Проблемы с определением SID пользователя
Вот рабочий сценарий для определения SID.
SID мне нужен для работы с реестром в разделе HKU. Помимо прочего необходимо также добавлять и изменять параметры в разделе HKLM. Так как у пользователей нет прав администратора - скрипт приходится запускать из под учетки с правами админа. А вот здесь и проблема. Если запустить сценарий ниже с правами админа - я получаю SID учетки этого админа, а не текущего залогиненного пользователя. Как получить SID текущего пользователя вошедшего в систему ? Код:
Set wshShell = CreateObject( "WScript.Shell" ) |
Это плохая идея: пользователь вообще может быть не залогинен. А может быть залогинено несколько пользователей.
|
Цитата:
Можно оформить в виде функции... Для powershell v 2.0, необходимо заменить gcim на gwmi Код:
$loginuser = (gcim win32_computersystem).username|split-path -leaf |
macF, проблема в том, что Вы что-то делаете не так. Не работайте с HKU. Работайте с HKCU из logon-скриптов. С HKLM работайте из startup-скриптов. Не должно быть никаких:
Цитата:
|
Цитата:
Сценарий запускается штатно из планировщика с правами админа при входе любого пользователя и задержкой 1 минута. За АРМ всегда работает только один юзер. Смена пользователя не активна. Цитата:
1. До архивации WBadmin оставить в меню пуск только кнопку блокировать (без перезагрузки). Ручками вот это работает: Код:
'Убрать из меню пуск все кнопки КРОМЕ завершение сеанса, сменить пользователя, блокировать! Код:
'Выбрать блокировку в меню пуск по умолчанию Код:
Start=WshShell.Run("""C:\Windows\System32\gpupdate.exe"" /force",1,true) Через gpedit.msc тема таже. Разница только в том что там два параметра и тот же HKU. |
Цитата:
Цитата:
Цитата:
|
Код:
Set objNetwork = CreateObject("Wscript.Network") |
Время: 21:59. |
Время: 21:59.
© OSzone.net 2001-