Microclimate.su

IT Новости
2 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Как открыть реестр от имени администратора

Как получить полный доступ к разделу реестра

Содержание

Причины отсутствия доступа к реестру

В некоторые разделы реестра Windows 7 изменения не может внести даже администратор, работающий в редакторе реестра, который запущен с полными правами. Это происходит потому, что у группы «Администраторы» нет прав на запись в этот раздел реестра. Причин для этого может быть три:

    • Группа «Администраторы» является владельцем раздела, но не имеет полных прав на него. В этом случае достаточно просто выдать группе «Администраторы» полные права.
    • Владельцем раздела является системная служба TrustedInstaller. Эта служба работает в рамках комплекса по укреплению безопасности операционной системы, но для любителей «поковырять» реестр она представляет собой досадную помеху на пути к цели. В этом случае нужно сначала стать владельцем раздела, а затем выдать своей группе полные права.
    • Владельцем раздела является системная учетная запись «Система». В этом случае можно поступить так же, как и с TrustedInstaller, но я также расскажу, как использовать другой способ, не связанный с изменениями разрешений.

Далее я покажу, как внести изменения в реестр при недостатке прав. Я также объясню, как восстановить исходные разрешения, и почему это нужно делать

Получение полных прав и смена владельца

Я полагаю, что в редакторе реестра у вас уже открыт нужный раздел.

    1. Щелкните правой кнопкой мыши на разделе реестра и выберите из меню пункт Разрешения.
    2. Выделите группу «Администраторы»:
      • Если доступен флажок Полный доступ, установите его и нажмите кнопку ОК. Этого может оказаться достаточно, если группа является владельцем раздела

      • Если флажок недоступен или вы видите сообщение об ошибке, переходите к пункту 3.
    1. Нажмите кнопку Дополнительно и перейдите на вкладку Владелец.
    2. Здесь я рекомендую различный подход в зависимости от владельца раздела.
      • Если владельцем является TrustedInstaller, выделите свою учетную запись, установите флажок Заменить владельца подконтейнеров и объектов и нажмите кнопку ОК.

    • Если владельцем является Система, можно поступить так же

Теперь ничто не препятствует записи в этот раздел реестра. Однако я рекомендую восстановить права, когда вы закончите редактирование раздела

Возвращение исходных прав и восстановление владельца

После внесения изменений в реестр я советую вернуть исходные права и восстановить владельца, чтобы не снижать безопасность системы. Кроме того, на форум не раз обращались за помощью люди, у которых правильная работа системы нарушалась после того, как у системной учетной записи TrustedInstaller было отобрано владение.

  1. Щелкните правой кнопкой мыши на разделе реестра и выберите из меню пункт Разрешения.
  2. Выделите группу «Администраторы», снимите флажок Полный доступ и нажмите кнопку Применить.

  • Нажмите кнопку Дополнительно и перейдите на вкладку Владелец. Вы увидите, что в отличие от вашей учетной записи, в списке нет служебных учетных записей Система и TrustedInstaller. Их нужно добавлять в список, как описано ниже.
  • Нажмите кнопку Другие пользователи и группы и в качестве имени объекта введите:
    • NT ServiceTrustedInstaller, если владельцем являлась учетная запись TrustedInstaller
    • система, если владельцем являлась учетная запись Система (в английской ОС нужно вводить System)
    • Нажмите кнопку ОК.

    Теперь нужная учетная запись есть в списке. Выделите ее, установите флажок Заменить владельца подконтейнеров и объектов и нажмите кнопку ОК.

    Исходные права и владелец раздела реестра восстановлены.

    Внесение изменений в реестр от имени учетной записи «Система»

    Если владельцем раздела реестра является специальная учетная запись «Система», существует способ внести изменения в раздел, не изменяя владельца и разрешений. Для этого используется утилита PsExec, входящая в набор утилит Марка Руссиновича PsTools. Суть способа сводится к запуску редактора реестра от имени системы.

    1. Загрузите набор PsTools и распакуйте утилиту PsExec в папку Windows, чтобы не указывать к ней путь в командной строке.
    2. Откройте командную строку от имени администратора и выполните команду:

    psexec -i -s regedit

    Запустится редактор реестра, причем от имени системы, что задается параметром — s.

    В этом легко убедиться с помощью другой утилиты Марка Руссиновича – Process Explorer. В свойствах процесса видно, от чьего имени он запущен.

    Теперь вы можете вносить изменения в разделы реестра, владельцем которых является учетная запись «Система».

    К сожалению, я не нашел способа запустить редактор реестра от имени TrustedInstaller.

    Как получить полный доступ к разделу реестра через реестр или командную строку?

    Получение полного доступа к разделу реестра, используя программу regedit или командную строку.

    Изменение разрешений и владельца для получения полного доступа к разделу реестра.

    1. Нажмите кнопку Пуск и введите в строке поиска regedit
    2. Щелкните на найденном правой кнопкой мыши и выберите пункт Запуск от имени администратора.
    3. Откройте раздел реестра, права которого Вы желаете изменить.
    4. В списке слева, щелкните на данном разделе реестра правой кнопкой мыши и выберите пункт Разрешения.
    5. Щелкните левой кнопкой мыши на группу Администраторы (Administrators):
    6. Установите флажок в колонке Разрешить напротив разрешения Полный доступ и нажмите кнопку ОК.
    7. Если флажок недоступен или Вы видите сообщение об ошибке, то нажмите кнопку Дополнительно и перейдите на вкладку Владелец.
    8. Щелкните левой кнопкой мыши на свою учетную запись, установите флажок Заменить владельца подконтейнеров и объектов и нажмите кнопку ОК.
    9. Выделите группу Администраторы (Administrators), установите флажок Полный доступ и нажмите кнопку ОК.
    10. Если у Вас отсутствует группа Администраторы (Administrators), то нажмите поочередно кнопки Добавить. → Дополнительно. → Поиск
    11. В результатах поиска выберите Администраторы (Administrators) и нажмите кнопку OK, и еще раз ОК.
    12. Щелкните левой кнопкой мыши на группу Администраторы (Administrators) и установите флажок в колонке Разрешить напротив разрешения Полный доступ и нажмите кнопку ОК.

    Восстановление настроек, если владельцем являлись служба TrustedInstaller или учетная запись Система.

    1. Щелкните правой кнопкой мыши на разделе реестра, права которого Вы желаете восстановить и выберите пункт Разрешения.
    2. Щелкните левой кнопкой мыши на группу Администраторы:
    3. Снимите флажок в колонке Разрешить напротив разрешения Полный доступ и нажмите кнопку Применить.
    4. Нажмите кнопку Дополнительно и перейдите на вкладку Владелец.
    5. Нажмите кнопку Другие пользователи или группы. и в качестве имени объекта в текстовом поле введите:
    • NT SERVICETrustedInstaller , если владельцем являлась служба TrustedInstaller
    • система , если владельцем являлась учетная запись Система (в английской Windows 7 нужно вводить System)

    6.В окне Изменить владельца на: выберите TrustedInstaller или система .
    7. Установите флажок Заменить владельца подконтейнеров и объектов и нажмите кнопку ОК.

    А теперь рассмотрим как можно изменить разрешения, используя командную строку запущенную от имени администратора.
    Если после использовании команды, разрешения не сменятся, то возможно Вам придется зайти в систему под встроенной учётной записью «Администратор» для их выполнения заново.

    Изменение разрешений используя командную строку.

    1. Создайте в любом месте txt-файл (Например в папке D:Reg создайте файл regperm.txt)
    2. Добавьте в данный файл разделы реестра и присваиваемые им разрешения в следующем формате: Registryкустраздел [разрешения]

    где куст – имя куста реестра, раздел – имя раздела реестра, а [разрешения] – двоичный числовой формат разрешений.

    Обозначения используемые для кустов реестра:

    Наименование куста реестраСледует указывать
    HKEY_CLASSES_ROOTRegistrymachinesoftwareclasses
    HKEY_CURRENT_USERRegistryusersuser_sid
    где user_sid — идентификатор безопасности пользователя.
    HKEY_LOCAL_MACHINERegistrymachine
    HKEY_USERSRegistryusers
    HKEY_CURRENT_CONFIGRegistrymachineSYSTEMCurrentControlSetHardware Profiles001

    Если Вы не знаете свой SID, то узнать его Вы сможете введя в командной строке команду: whoami /user

    Двоичные числовые представления разрешений имеют следующий вид (выборочно):

    ЗначениеЗадаваемое разрешение
    1Администратор, полный доступ
    2Администратор, чтение
    3Администратор, чтение и запись
    4Администратор, чтение, запись и удаление
    5СОЗДАТЕЛЬ-ВЛАДЕЛЕЦ, полный доступ
    6СОЗДАТЕЛЬ-ВЛАДЕЛЕЦ, чтение и запись
    7Все, полный доступ
    8Все, чтение
    9Все, чтение и запись
    10Все, чтение, запись и удаление
    11Опытные пользователи, полный доступ
    12Опытные пользователи, чтение и запись
    13Опытные пользователи, чтение, запись и удаление
    17Система, полный доступ
    18Система, чтение и запись
    19Система, чтение

    Чтобы задать полный доступ группам и пользователям Администратор, СОЗДАТЕЛЬ-ВЛАДЕЛЕЦ и Система для раздела реестра:
    HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionExplorer в txt-файл необходимо добавить

    RegistryuserS-1-5-21-2624363243-3215778383-3226633259-500SoftwareMicrosoftWindowsCurrentVersionExplorer [1 5 17]

    3. Запустите командную строку от имени администратора.
    4. Введите указанную команду и нажмите Enter ↵ : regini Ваш_файл

    regini «D:Regregperm.txt»

    Примечание! Для поддержания безопасности системы, после внесения изменений в реестр верните исходные права и восстановите владельца.

    Как открыть реестр от имени администратора

    да что вы говорите? С каких это пор логон/логофф скрипты стали отрабатываться от имени системы? Нужен не логон/логофф, а startup/shutdown. Вот они отрабатываются от имени системы. Правда под топик не подходит, т.к. они выполняются только при включении/выключении компьютера.

    ой, да! именно startup/shutdown имела ввиду. вроде об этом и был вопрос же? или что такое «старт системы»?

    эмм..прочитал ещё раз первый пост. Если действительно при старте системы, а не при логоне пользователя, то батник в startup scripts. Логон-скрипт сбил меня с толку, что нужно именно при логоне. Во всяком случае недочёты исправлены.

    Vadims Podans написано:

    а какую ветку реестра планируется менять?

    В этих ветках некая софтина прописывает пути к своим базам данных. Необходимо менять их на другие.

    Vadims Podans написано:

    эмм..прочитал ещё раз первый пост. Если действительно при старте системы, а не при логоне пользователя, то батник в startup scripts. Логон-скрипт сбил меня с толку, что нужно именно при логоне. Во всяком случае недочёты исправлены.

    Извините, неправильно написал. При логоне, а не при старте системы. Немного подробнее изложу. Есть некий софт работающий с базой данных. Чуть выше я описал в каких ветках этот софт хранит информацию о базах данных. Есть учетная запись для отладки этого софта но с не рабочей базой данных а с тестовой. Каждый раз человеку приходится менять пути к базе данных при отладке. Вот я и решил написать типа logon скрипта для учетной записи, который будет при залогинивании этой учетной записи править пару веток в реестре. Да и эта учетка не обладает правами доменного админа или локального админа. Эта учетка доменный пользователь.

    Да что вы мучаетесь. Просто из-под scheduler’а запустите, вот и будет вам все с правами системы.

    Что-то типа: at 10:00 regedit.exe, или вообще прямо свой 1.reg файл команде скормите.

    1. Приложение от юзера SYSTEM можно запустить только пользователь с правами администратора
    2. При любом варианте прийдется указывать логин и пароль в скрипте или батнике не важно

    Вариант 1: есть такая программа psexec.exe из пакета pstools
    команда будет выглядить следующим образом

    psexec.exe -s -u -p cmd.exe
    psexec.exe — это утилита
    -s — ключ обозначающий, что процесс будет запущен от пользователя SYSTEM (LocalService)
    -u — ключ обозначающий юзера с правами админа (в домене или локально, если локально домен не указывай)
    -p — пароль от этого юзеа (пароль можно указывать в зашифрованном виде, как это делать погугли и найдешь)
    cmd.exe — команда, может быть любой в общем то

    Вариант 2: запускать свой скрипт из политики домена на уровне компа

    Вариант 3: читать ветки реестра с помощью WMI с правами админа конечно же, скрипты vbs так же можно шифровать, поле чего их движок нормально кушает

    Вадим Стеркин

    В некоторые разделы реестра Windows изменения не может внести даже администратор, работающий в редакторе реестра, который запущен с полными правами. Это происходит потому, что у группы «Администраторы» нет прав на запись в этот раздел реестра. Причин для этого может быть две:

    • Группа «Администраторы» является владельцем раздела, но не имеет полных прав на него. В этом случае достаточно просто выдать группе «Администраторы» полные права.
    • Владельцем раздела являются системная учетная запись Система или TrustedInstaller (Вторая служит в рамках комплекса по укреплению безопасности операционной системы, но для любителей «поковырять» реестр она представляет собой досадную помеху на пути к цели). В этом случае можно сначала стать владельцем раздела, а затем выдать своей группе полные права. Но есть и более интересные альтернативы — утилиты для запуска исполняемых файлов от имени этих учетных записей.

    Далее я покажу, как внести изменения в реестр при недостатке прав. Я также объясню, как восстановить исходные разрешения, и почему это нужно делать.

    На этой странице

    В Windows 8 слегка изменился графический интерфейс смены владельца, что стало непреодолимым препятствием для ряда читателей, судя по комментариям. Мне претит, когда на одной странице дублируются практически одинаковые инструкции, но другие варианты еще хуже. Поэтому выбирайте инструкции для своей ОС. Я полагаю, что в редакторе реестра у вас уже открыт нужный раздел реестра.

    Получение полных прав и смена владельца

    По ходу дела вы увидите, кто является владельцем раздела реестра. Если это Система или TrustedInstaller, можно воспользоваться подходящей утилитой ↓

    Windows 8 и новее

    1. Щелкните правой кнопкой мыши на разделе реестра и выберите из меню пункт Разрешения.
    2. Выделите группу «Администраторы»:
      • Если доступен флажок Полный доступ, установите его и нажмите кнопку ОК. Этого может оказаться достаточно, если группа является владельцем раздела.
      • Если флажок недоступен или вы видите сообщение об ошибке, переходите к пункту 3.
    3. Нажмите кнопку Дополнительно, нажмите ссылку Изменить вверху окна, введите адрес электронной почты учетной записи Microsoft или имя локальной учетной записи, проверьте имя и нажмите кнопку ОК.
    4. Установите флажок Заменить владельца подконтейнеров и объектов вверху окна и нажмите кнопку ОК.
    5. Установите флажок «Полный доступ», как описано в пункте 2.

    Windows 7

    1. Щелкните правой кнопкой мыши на разделе реестра и выберите из меню пункт Разрешения.
    2. Выделите группу «Администраторы»:
      • Если доступен флажок Полный доступ, установите его и нажмите кнопку ОК. Этого может оказаться достаточно, если группа является владельцем раздела.
      • Если флажок недоступен или вы видите сообщение об ошибке, переходите к пункту 3.
    3. Нажмите кнопку Дополнительно и перейдите на вкладку Владелец.
    4. Здесь я рекомендую различный подход в зависимости от владельца раздела.
      • Если владельцем является TrustedInstaller, выделите свою учетную запись, установите флажок Заменить владельца подконтейнеров и объектов и нажмите кнопку ОК.
      • Если владельцем является Система, можно поступить так же, но лучше сделать иначе.
    5. Установите флажок «Полный доступ», как описано в пункте 2.

    Теперь ничто не препятствует записи в этот раздел реестра. Однако я рекомендую восстановить права, когда вы закончите редактирование раздела.

    Возвращение исходных прав и восстановление владельца

    После внесения изменений в реестр я советую вернуть исходные права и восстановить владельца, чтобы не снижать безопасность системы. Кроме того, на форум не раз обращались за помощью люди, у которых правильная работа системы нарушалась после того, как у системной учетной записи TrustedInstaller было отобрано владение.

    Windows 8 и новее

    1. Щелкните правой кнопкой мыши на разделе реестра и выберите из меню пункт Разрешения.

  • Нажмите кнопку Дополнительно, нажмите ссылку Изменить вверху окна и введите имя учетной записи:
    • NT ServiceTrustedInstaller, если владельцем являлась учетная запись TrustedInstaller
    • система, если владельцем являлась учетная запись Система (в английской ОС нужно вводить System)

  • Установите флажок Заменить владельца подконтейнеров и объектов вверху окна и нажмите кнопку ОК.
  • Выделите группу «Администраторы», снимите флажок Полный доступ и нажмите кнопку Применить.
  • Windows 7

    1. Щелкните правой кнопкой мыши на разделе реестра и выберите из меню пункт Разрешения.
    2. Выделите группу «Администраторы», снимите флажок Полный доступ и нажмите кнопку Применить.
    3. Нажмите кнопку Дополнительно и перейдите на вкладку Владелец. Вы увидите, что в отличие от вашей учетной записи, в списке нет служебных учетных записей Система и TrustedInstaller. Их нужно добавлять в список, как описано ниже.
    4. Нажмите кнопку Другие пользователи и группы и в качестве имени объекта введите:
      • NT ServiceTrustedInstaller, если владельцем являлась учетная запись TrustedInstaller
      • система, если владельцем являлась учетная запись Система (в английской ОС нужно вводить System)
      • Нажмите кнопку ОК.

    Теперь нужная учетная запись есть в списке. Выделите ее, установите флажок Заменить владельца подконтейнеров и объектов и нажмите кнопку ОК.

    Исходные права и владелец раздела реестра восстановлены.

    Внесение изменений в реестр от имени учетной записи «Система»

    Если владельцем раздела реестра является специальная учетная запись «Система», существует способ внести изменения в раздел, не изменяя владельца и разрешений. Для этого используется утилита PsExec, входящая в набор утилит Марка Руссиновича PsTools. Суть способа сводится к запуску редактора реестра от имени системы.

    1. Загрузите набор PsTools и распакуйте утилиту PsExec в папку Windows, чтобы не указывать к ней путь в командной строке.
    2. Откройте командную строку от имени администратора и выполните команду:

    Запустится редактор реестра, причем от имени системы, что задается параметром -s (параметр -i обеспечивает интерактивный запуск приложения).

    В этом легко убедиться с помощью другой утилиты Марка Руссиновича – Process Explorer. В свойствах процесса видно, от чьего имени он запущен.

    Теперь вы можете вносить изменения в разделы реестра, владельцем которых является учетная запись «Система».

    Внесение изменений в реестр от имени учетной записи TrustedInstaller

    Попробуйте эти утилиты:

    • Trusted Shell (64-разрядная версия в архиве, пароль: tshell ). Достаточно запустить утилиту с правами администратора, затем в командной строке ввести regedit. Автор, Дмитрий Стариков, рассказывает о принципах работы в комментариях к этой записи.
    • DevxExec. Краткие инструкции в комментариях.

    Вы можете отметить интересные вам фрагменты текста, которые будут доступны по уникальной ссылке в адресной строке браузера.

    Метки: sysinternals, реестр Информация в статье применима к Windows 7 и новее

    Об авторе

    Вадим является владельцем этого блога, и большинство записей здесь вышло из-под его пера. Подробности о блоге и авторе здесь.

    Вас также может заинтересовать:

    Подпишитесь на бесплатные уведомления о новых записях и получите в подарок мою книгу об ускорении загрузки Windows!

    Читать еще:  Нет доступа обратитесь к администратору
    Ссылка на основную публикацию
    Adblock
    detector