Sunday, July 23rd, 2017

Как получить доступ к файлам, папкам, разделам реестра в Windows Vista

Published on Март 6, 2009 by   ·   Комментариев нет

Казалось бы, избитая тема, но не реже чем раз в неделю на форуме начинаются пространные объяснения о том, как же все-таки получить доступ к какому-либо объекту. Чаще всего — это, конечно, папки или файлы, иногда разделы реестра. Попробую собрать воедино способы получения доступа к локальным объектам.

При отсутствии доступа к локальному объекту вы не можете управлять его разрешениями, отсутствие такой возможности может быть компенсировано сменой владельца объекта, после чего вы сможете управлять его разрешениями. Сделать это можно несколькими способами, рассмотрим их по порядку.

Способ 1. Использование графического интерфейса (GUI)

  1. Откройте проводник (редактор реестра) и перейдите к папке/файлу/разделу реестра, к которому необходимо получить доступ.
  2. Для файла или папки.
    1. Нажмите правую клавишу мыши и выберите в контекстном меню Свойства
    2. Перейдите на вкладку Безопасность
    3. Нажмите кнопку Дополнительно

      Синтаксис icacls

    4. Перейдите на вкладку Владелец
    5. Нажмите кнопку Изменить

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

  3. Для раздела реестра.
    1. Нажмите правую клавишу мыши на подразделе реестра (в левой части редактора реестра) и выберите пункт Разрешения
    2. Нажмите кнопку Дополнительно
    3. Остальные шаги идентичны шагам 2.4-2.6
  4. Теперь, вы можете выставить разрешения своей учетной записи.
    1. На вкладке Безопасность нажмите кнопку Изменить под списком пользователей и групп

      Icacls доступ группе

    2. Нажмите кнопку Добавить
    3. Выставьте разрешения на объект добавленной учетной записи

Способ 2. Использование утилит командной строки takeown и icacls (применим только к файлам, папкам и дискам)

  1. Нажмите Пуск — в строке поиска введите cmd — на найденном файле нажмите правую клавишу мыши и выберите пункт Запуск от имени администратора

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

    Примечание. Запуск от имени администратора в данном случае обязателен независимо от того, какими правами обладает учетная запись, в которой вы работаете в данный момент. Исключение может составлять только случай, когда вы работаете во встроенной учетной записи Администратор, которая по умолчанию отключена.

  2. В окне cmd введите следующую команду:

    takeown /f «C:\Program Files\ERUNT\ERUNT.EXE»

    Примечание. Здесь и далее полный путь и файл представлены в качестве примера и вместо «C:\Program Files\ERUNT\ERUNT.EXE» вы должны написать путь к файлу или папке, к которым необходимо получить доступ.
    Обратите внимание на то, что если в пути присутствуют пробелы (как в примере), то путь должен быть заключен в кавычки.
    В команде используется утилита takeown, которая позволяет восстанавливать доступ к объекту путем переназначения его владельца. Полный синтаксис утилиты вы можете получить по команде takeown /?

  3. В командной строке введите следующую команду

    icacls «C:\Program Files\ERUNT\ERUNT.EXE» /grant Blast:F

    Примечание. В данной команде помимо пути к файлу необходимо указать и имя учетной записи, которой будут переданы разрешения на объект. Соответственно вы должны будете ввести свое имя пользователя.
    После применения этой команды вам будет показано сообщение об обработке файлов и папок. В случае, если таким образом не удастся получить полный доступ к объекту, проделайте процедуру повторно, загрузившись в безопасный режим.
    В этой команде используется утилита icacls, позволяющая управлять списками управления доступом (ACL), а значит и разрешениями для пользователей и процессов использовать  файлы и папки. Синтаксис утилиты вы сможете узнать по команде icacls /?

Способ 3. Пункт смены владельца объекта в контекстном меню проводника.

Для упрощения процедуры смены владельца вы можете добавить соответствующий пункт в контекстное меню проводника.
В предлагаемом варианте также используются утилиты командной строки takeown и icacls с определенными параметрами, а полученная команда установит владельцем объекта, на котором будет применяться пункт меню, группу Администраторы (или Administrators в английской версии ОС).

Для добавления пункта меню «Смена владельца» в русской версии Windows Vista примените этот твик реестра:
Примечание: подробнее о применении твиков реестра вы можете прочитать здесь: Применение твиков реестра

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\*\shell\runas]
@=»Смена владельца»
«NoWorkingDirectory»=»»

[HKEY_CLASSES_ROOT\*\shell\runas\command]
@=»cmd.exe /c takeown /f \»%1\» && icacls \»%1\» /grant администраторы:F»
«IsolatedCommand»=»cmd.exe /c takeown /f \»%1\» && icacls \»%1\» /grant администраторы:F»

[HKEY_CLASSES_ROOT\Directory\shell\runas]
@=»Смена владельца»
«NoWorkingDirectory»=»»

[HKEY_CLASSES_ROOT\Directory\shell\runas\command]
@=»cmd.exe /c takeown /f \»%1\» /r /d y && icacls \»%1\» /grant администраторы:F /t»
«IsolatedCommand»=»cmd.exe /c takeown /f \»%1\» /r /d y && icacls \»%1\» /grant администраторы:F /t»

Для добавления пункта меню «Take Ownership» в английской версии Windows Vista примените этот твик реестра:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\*\shell\runas]
@=»Take Ownership»
«NoWorkingDirectory»=»»

[HKEY_CLASSES_ROOT\*\shell\runas\command]
@=»cmd.exe /c takeown /f \»%1\» && icacls \»%1\» /grant administrators:F»
«IsolatedCommand»=»cmd.exe /c takeown /f \»%1\» && icacls \»%1\» /grant administrators:F»

[HKEY_CLASSES_ROOT\Directory\shell\runas]
@=»Take Ownership»
«NoWorkingDirectory»=»»

[HKEY_CLASSES_ROOT\Directory\shell\runas\command]
@=»cmd.exe /c takeown /f \»%1\» /r /d y && icacls \»%1\» /grant administrators:F /t»
«IsolatedCommand»=»cmd.exe /c takeown /f \»%1\» /r /d y && icacls \»%1\» /grant administrators:F /t»

Для удаления этого пункта меню (независимо от языка системы) можете использовать следующий твик реестра:

Windows Registry Editor Version 5.00

[-HKEY_CLASSES_ROOT\*\shell\runas]

[-HKEY_CLASSES_ROOT\Directory\shell\runas]

Готовые файлы реестра для добавления и удаления этого пункта меню: TakeOwnership.zip






























Смотрите также:

Tags: ,

Readers Comments (Комментариев нет)




Да человек я, человек! =)

Exchange 2007

Проведение мониторинга Exchange 2007 с помощью диспетчера System Center Operations Manager 2007 (часть 3)

Если вы хотите прочитать предыдущие части этой серии статей, перейдите по ссылкам: Проведение мониторинга Exchange 2007 с помощью диспетчера System ... [+]

Практическое рассмотрение перехода с Exchange 2003 на Exchange 2007 (часть 1)

Введение В этой статье из нескольких частей я хочу показать вам процесс, который недавно использовал для перехода с существующей среды Exchange 2003 ... [+]

Использование инструмента Exchange Server Remote Connectivity Analyzer Tool (часть 2)

Если вы пропустили первую часть этой серии, пожалуйста, прочтите ее по ссылке Использование инструмента Exchange Server Remote Connectivity Analyzer Tool (Часть ... [+]

Мониторинг Exchange 2007 с помощью диспетчера System Center Operations Manager 2007 (часть 2)

Если вы пропустили предыдущую часть этой серии статей, перейдите по ссылке Мониторинг Exchange 2007 с помощью диспетчера System Center Operations ... [+]

Подробное рассмотрение подготовки Active Directory для Exchange 2007 (часть 5)

Если вы пропустили предыдущие части этой серии статей, перейдите по ссылкам: Подробное рассмотрение подготовки Active Directory для Exchange 2007 (часть 1) ... [+]

Установка и настройка Exchange 2007 из командной строки (Часть 3)

If you missed the previous parts in this article series please read: Exchange 2007 Install and Configuration from the command line (Part ... [+]

Использование инструмента Exchange Server Remote Connectivity Analyzer Tool (часть 1)

Инструмент ExRCA Текущий выпуск инструмента предоставляется только в целях тестирования и оснащен 5 опциями: Тест подключения Outlook 2007 Autodiscover Тест подключения Outlook 2003 RPC ... [+]

Развертывание сервера Exchange 2007 Edge Transport (часть 5)

Если вы хотите прочитать предыдущие части этой серии статей, перейдите по ссылкам: Развертывание сервера Exchange 2007 Edge Transport (часть 1) Развертывание ... [+]

Установка и настройка Exchange 2007 из командной строки (часть 2)

Если вы пропустили первую статью данного цикла, пожалуйста, перейдите по ссылке: Exchange 2007 Install and Configuration from the command line (Part ... [+]

Использование интегрированных сценариев Using Exchange Server 2007 – часть 2: генерирование отчетов агента Transport AntiSpam Agent

Если вы пропустили предыдущую часть этой серии статей, перейдите по ссылке Использование интегрированных сценариев Using Exchange Server 2007 – часть ... [+]