Р учная правка реєстру є одним з найпоширеніших способів отримати доступ до прихованих налаштувань Windows, причому вдаються до нього не тільки адміністратори, але також і прості користувачі. Однак ось так просто взяти і відредагувати можна далеко не всі ключі. У реєстрі є чимало ключів, редагування яких неможливо внаслідок відсутності прав записи для локальних адміністраторів, або їх власниками є об'єкти TrustedInstaller або Система.
Як працювати з SubInACL
Синтаксис утиліта має наступний:
SubInACL / type name / action
Параметр / type визначає тип оброблюваного об'єкта. Якщо це папка або файл, використовується параметр file. якщо ж ми маємо справу з ключем реєстру, застосовуємо keyreg або subkeyreg. Різниця між цими двома параметрами полягає в тому, що перший замінює власника конкретного розділу реєстру, а другий - власника розділу і всіх вкладених в нього підрозділів, тобто в даному випадку має місце спадкування.
Параметр name це ім'я об'єкта: папки, файлу або ключа реєстру.
Параметр / action визначає, яку дію буде застосовано до об'єкта. Для заміни власника і зміни прав використовується / setowner = username / grant = username = f. де username - ім'я нового власника (користувача).
А тепер, як це все виглядає на практиці.
Замінимо для прикладу власника ключа HKEY_LOCAL_MACHINE \ SYSTEM \ ActivationBroker.
За замовчуванням власником є Система. ми ж передамо права користувачеві з ім'ям компік.
Відкриваємо від імені адміністратора командний рядок і переходимо в каталог установки утиліти. За замовчуванням це C: \ Program Files \ Windows Resource Kits \ Tools.
Тепер виконуємо таку команду:
subinacl.exe / keyreg "HKEY_LOCAL_MACHINE \ SYSTEM \ ActivationBroker" / setowner = компік / grant = компік = f
Готово! Власник ключа замінений.
Як працювати з SetACL
Схожим чином працює утиліта SetACL. На відміну від SubInACL вона не вимагає установки і має дещо інший синтаксис. Поширюється вона в двох редакціях - окремо для 32 -бітний і окремо для 64 -бітний систем.
SetACL має наступний синтаксис:
SetACL -on name -ot type -actn action
Параметр -on name вказує повний шлях до об'єкта, при цьому ім'я об'єкта підставляється на місце name.
Параметр -ot type визначає тип об'єкта. Якщо це файл, використовується ключове слово file. якщо ключ реєстру - слово reg. І в тому, і в іншому випадку воно підставляється на місце type.
Параметр -actn action визначає виконувану дію. У разі заміни власника і установкою прав доступу використовуються значення setowner або ace.
А ось і конкретний приклад.
Минулого разу ми зробили власником каталогу ActivationBroker користувача компік. тепер повернемо його законному господареві, тобто системі. Відкриваємо від імені адміністратора командний рядок і одну за одною виконуємо ці дві команди:
setacl.exe -on "HKEY_LOCAL_MACHINE \ SYSTEM \ ActivationBroker" -ot reg -actn setowner -ownr "n: система"
setacl.exe -on "HKEY_LOCAL_MACHINE \ SYSTEM \ ActivationBroker" -ot reg -actn ace -ace "n: система; p: full"
Перша команда повернула права на ключ системі, а друга надала їй повний доступ до нього.
SubInACL: www.microsoft.com/en-us/download/details.aspx?id=23510
SetACL: helgeklein.com/download/#setacl