Regini - управління дозволами для розділів реєстру

Утиліта REGINI.EXE спочатку входила до складу пакета Resource Kit, але, починаючи з Windows XP, є стандартним компонентом системного програмного забезпечення. Використовується в сценаріях адміністрування для управління доступом до розділів (ключам) реєстру на локальному або віддаленому комп'ютері.

Формат командного рядка:

REGINI [-m \\ machinename | -h hivefile hiveroot] [-i n] [-o outputWidth] [- b] textFiles.

Параметри командного рядка:

-h - визначає кущ реєстру на локальному комп'ютері, для якого будуть встановлюватися дозволу.

-i n - зсув тексту від першої позиції рядка. За замовчуванням дорівнює 4

-o outputWidth - максимальний розмір рядків виводу. За замовчуванням відповідає ширині консолі.

-b - визначає режим зворотної сумісності з попередніми версіями REGINI (backward compatible).

textFiles - імена текстових файлів в кодуванні ANSI або Unicode, що представляють собою сценарії для зміни дозволів реєстру.

regini /? - відобразити коротку довідку по використанню команди.

regini acl1reg.txt - виконати зміни дозволів для розділів (ключів) реєстру на локальному комп'ютері з використанням файлу сценаріїв acl1reg.txt

regini -m \\ COMP0 C: \ scripts \ acl2reg.txt - виконати зміни дозволів для реєстру на віддаленому комп'ютері COMP0 з використанням сценарію C: \ scripts \ acl2reg.txt

(Шлях до розділу реєстру) [дозволу]

Наприклад, рядок сценарію, що встановлює дозволу доступу для розділу Adm:

HKEY_LOCAL_MACHINE \ Software \ Adm [1 5 9]

В даному прикладі, встановлюються дозволу [1 5 9]. розшифрувати які можна з використанням такої таблиці:

1 - Адміністратор, повний доступ

2 - Адміністратор, читання

3 - Адміністратор, читання і запис

4 - Адміністратор, читання, запис і видалення

5 - Творець, повний доступ

6 - Творець, читання і запис

7 - Все, повний доступ

9 - Все, читання і запис

10 - Все, читання, запис і видалення

11 - Досвідчені користувачі, повний доступ

12 - Досвідчені користувачі, читання і запис

13 - Досвідчені користувачі, читання, запис і видалення

14 - Системний оператор, повний доступ

15 - Системний оператор, читання і запис

16 - Системний оператор, читання, запис і видалення

17 - Система, повний доступ

18 - Система, читання і запис

19 - Система, читання

20 - Адміністратор, читання, особливі дозволи

21 - Інтерактивні користувачі, читання, повний доступ

22 - Інтерактивні користувачі, читання

23 - Інтерактивні користувачі, читання, особливі дозволи

0 - Ні груп або користувачів, які мають дозвіл на доступ до даного об'єкта, але власник об'єкта може встановити дозволи.

Таким чином, код [1 5 9] означає

Адміністратор, повний доступ
Творець, повний доступ
Все, читання і запис

Необхідно враховувати той факт, що раніше встановлені дозволу скидаються, і якщо, після комбінації [1 5 9] в сценарії буде використана, наприклад директива:

То це означає, не додавання коду 4 - Адміністратор, читання, запис і видалення, до існуючих кодами 1 5 9. а їх заміна. Для додавання нових дозволів, зі збереженням старих, рядок повинна бути наступного вигляду:

HKEY_LOCAL_MACHINE \ Software \ Adm [1 4 5 9]

При додаванні нових ключів або параметрів до реєстру, в файлі сценарію першим рядком вказується ім'я ключа, а другий (наступними) рядком вказується ім'я параметра, знак рівності, тип даних і значення:

Ім'я параметра = тип даних значення

Приклад файлу сценарію:

Перший рядок вказує ім'я ключа (підрозділу реєстру) HKEY_CURRENT_USER \ TEST, в який буде записаний параметр і в квадратних дужках - код дозволу доступу до нього. Якщо підрозділ TEST не існує, то він буде створений з зазначеними дозволами, якщо існує - то виконається зміна дозволів на зазначені в квадратних дужках. Якщо код дозволів не заданий, то дозволу не змінюються. Другий рядок вказує ім'я і значення параметра, який буде записаний в даний ключ реєстру. Якщо параметр text не існує, то він буде створений, якщо існує, то буде змінено його значення на рядок String1.

Наявність знака рівності = в рядку сценарію утиліта regini.exe інтерпретує як команду на запис параметра в форматі

ім'я = тип значення

Для видалення значення параметра, рядок повинен мати вигляд:

Для видалення самого параметра, використовується ключове слово DELETE

Під рядком з ім'ям ключа можна розташовувати кілька команд на зміну або додавання параметрів:

text = REG_SZ This is text

Якщо необхідно встановити нові дозволи для куща реєстру, що належить іншій операційній системі, то необхідно враховувати той факт, що шляхи до розділів реєстру повинні вказуватися щодо імені куща, так наприклад, для зміни дозволу для розділу HKEY_LOCAL_MACHINE \ System на доступ [1 5 9] команда повинна мати вигляд:

regini -h D: \ oldwin \ system32 \ config \ system newacl.txt

А файл newacl.txt повинен містити рядок без імені підрозділу: