Показать сообщение отдельно
Старый 04.12.2006, 09:22     # 95
pazdak
Advanced Member
 
Регистрация: 21.06.2004
Сообщения: 403

pazdak Сэнсэйpazdak Сэнсэйpazdak Сэнсэйpazdak Сэнсэйpazdak Сэнсэйpazdak Сэнсэйpazdak Сэнсэйpazdak Сэнсэйpazdak Сэнсэйpazdak Сэнсэйpazdak Сэнсэйpazdak Сэнсэйpazdak Сэнсэй
Ascetic
Спасибо конечно, но вопрос стоял не каким средством назначить права на ветку, а как дать эти права пользователю не имеющему прав лок. админа ИБО без этих прав команда subinacl.exe бесполезна !!!

Поэтому, пока единственно верный вариант для этой задачи именно тот который обсуждался с KomatoZo.

Хотя есть еще один, реализуемый при помощи команды RegIni, но тут есть масса ограничений, начиная от того, что нужно дать права только конкретному пользователю и заканчивая тем, что иногда домашняя папка пользователя называется не по имени пользователя, например после переименовая аккаунта.

Но в принципе задача решена на 99%, сейчас тестируется и отлаживается.
Цитата:
'******************************************************
'Краткое описание скрипта:
' Назначить ACL = Full Control(FC) для ветки реестра HKEY_CURRENT_USER.
' По умолчанию любой пользователь не входящий в группу лок. админов
' не имеет прав FC для ветки HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies
' встала задача автоматически раздать пользователям права на эту ветку.
' Как работает: (для текущего пользователя)
'...1) Проверяется, а есть ли вообще доступ к этой ветке? Если нет, то считаем, что такой ветки нет и на выход
'...2) Проверяется есть ли права на создание в этой ветке новых элементов? Если да и нет во временной папке (TEMP) флаг-файла, то на выход
'...3) Проверяем принадлежность пользователя к группе лок. админов, ибо только являясь лок. админом пользователь сможет поменять права на ветку в разделе HKCU
'...4) Если пользователь не лок. админ, то добавляем его туда через runas и создаем временный файл, чтобы потом отобрать это право у него при наличии этого файла. Сразу же делаем принудительный logoff, чтобы пользователь перелогинился с правами админа
'...5) Назначаем права на ветку реестра используя SetACL.exe (стороняя) и если пользователь ранее не был админом, то удаляем его из этой группы и удаляем временный флаг-файл. Сразу же делаем принудительный logoff, чтобы пользователь перелогинился с обычными правами
'******************************************************
__________________
Из библии: И даны вам будут такие доказательства, что не поверить будет невозможно, но вы все равно не поверите
pazdak вне форума