Как добавить контекстное меню Изменить владельца для файлов и папок в Windows 10
Иногда вам нужно получить полный доступ к какому-либо файлу или папке в Windows 10. Это может быть системный файл или папка, или файл, созданный учетной записью пользователя, которая больше не существует. В большинстве случаев операционная система Windows запрещает вам выполнять какие-либо операции с такими файлами и папками. В этом случае очень полезно увидеть текущего владельца и иметь возможность быстро его сменить.
Концепция владельца объекта файловой система впервые появилась в Windows с приходом NTFS. NTFS - это стандартная файловая система семейства операционных систем Windows NT. Начиная с Windows NT 4.0 Service Pack 6, он поддерживает концепцию прав доступа (разрешений), которые можно настроить для ограничения иле предоставлению доступа к файлам, папкам и другим объектам локально и по сети.
Владельцы файлов в Windows 10
По умолчанию почти все системные файлы, системные папки и даже ключи реестра в Windows 10 принадлежат специальной встроенной учетной записи пользователя под названием «TrustedInstaller». Другие учетные записи пользователей настроены только на чтение файлов.
Когда пользователь обращается к каждому файлу, папке, разделу реестра, принтеру или объекту Active Directory, система проверяет его разрешения. Файловая система поддерживает наследование прав для объекта, например, файлы могут наследовать разрешения от своей родительской папки. Также у каждого объекта есть владелец, который представляет собой учетную запись пользователя, которая может устанавливать права владения и изменять разрешения.
Совет: TakeOwnershipEx - утилита с графическим интерфейсом, позволяющая вам буквально одним щелчком мышки получить полный доступ к файлу или папке, и стать её владельцем. Она позволит вам сэкономить немало времени, и работает без проблем в Windows 10.
В этой статье будет показано, как добавить команду Изменить владельца в контекстное меню файлов и папок в Windows 10.
Добавив специальное контекстное меню «Изменить владельца», вы можете быстро просмотреть текущего владельца файла или папки и изменить владельца на одну из предопределенных системных учетных записей, включая «Администраторы», «Все», «SYSTEM» или «TrustedInstaller» при необходимости. Вы должны войти в систему с учетной записью администратора, чтобы добавить меню. Также для смены владельца необходимы права администратора, а для просмотра текущего владельца - не нужны.
- Скачайте следующий ZIP-архив: Скачать архив.
- Разблокируйте файл.
- Распакуйте его содержимое в любую папку. Вы можете разместить файлы прямо на рабочем столе.
- Дважды щелкните файл «
Add Change Owner To Context Menu.reg
», чтобы добавить контекстное меню. - Либо используйте файл «
Add Shift Click Change Owner To Context Menu.reg
», чтобы добавить меню, которое появляется при нажатии и удерживании клавиши Shift. - Чтобы позднее удалить контекстного меню "Изменить владельца", используйте предоставленный файл
Remove Change Owner From Context Menu.reg
.
Всё готово!
Приведенные выше REG файлы добавляют ряд записей в следующие ветки реестра.
- HKEY_CLASSES_ROOT \ * \ shell \ Change_Owner - эти записи реализуют меню для всех файлов.
- HKEY_CLASSES_ROOT \ Directory \ shell \ Change_Owner - эти записи реализуют меню для всех папок
- HKEY_CLASSES_ROOT \ Drive \ shell \ Change_Owner - эти записи реализуют меню для дисков
Совет: узнайте, как перейти к разделу реестра одним щелчком мыши.
Изменение и просмотр владельца файлов и папок
Команды контекстного меню работают следующим образом.
Большинство команд требует запуска от имени администратора, однако, опция просмотра текущего владельца их не требует. Все остальные записи используют экземпляр PowerShell с повышенными привилегиями для выполнения своей работы.
Просмотр текущего владельца
Чтобы отобразить текущего владельца файла или папки, в контекстном меню вызывается PowerShell команда Get-ACL
. Она считывает списки управления доступом (ACL) для данного объекта файловой системы. ACL определяет разрешения, которые имеют пользователи и группы для файла или папки. Это единственная команда в контекстном меню, которая запускается с правами обычного пользователя. Синтаксис команды:
Get-ACL '<путь к файлу>' | Format-List -Property Owner
Она выводит текущего владельца файла или папки в отдельной строке.
Заменить на Администраторы
Этот пункт меню будет работать с повышенными правами (от имени администратора). Он вызывает команду icacls
, чтобы изменить владельца файла на встроенную системную группу «Администраторы». Группа существует в Windows 10 по умолчанию, поэтому все члены этой группы станут «владельцами» текущего файла, и смогут дальше управлять своими разрешениями. Команда для этого пункта контекстного меню выглядит следующим образом.
icacls <путь к файлу> /setowner "Administrators" /t /c /l
Заменить на Все
Группа «Все» - это системная группа, в которую входят все пользователи, успешно выполнившие вход в систему. Также она включает ряд встроенных учетных записей, таких как учетная запись Гостя, и несколько других встроенных учетных записей безопасности, таких как SERVICE, LOCAL_SERVICE, NETWORK_SERVICE, и т.п. Чтобы изменить владельца на Все, используется следующая команда:
icacls <file path> /setowner "Everyone" /t /c /l
Заменить на Система
Учетная запись SYSTEM, также известная как LocalSystem, - это специальная учетная запись, используемая диспетчером управления службами. Проще говоря, эта учетная запись используется для запуска различных служб в Windows 10. Команда для этого случая:
icacls <путь к файлу> /setowner "SYSTEM" /t /c /l
Заменить на TrustedInstaller
Ну и наконец, TrustedInstaller - это специальная системная учетная запись, которая добавляет дополнительный уровень защиты в критические области системы. Ему "принадлежат" важные ключи реестра и системные файлы. Он не отображается в списке учетных записей пользователей, и вы не сможете легко выбрать его вручную при смене владельца. Его имя необходимо явно ввести вручную, чтобы установить или восстановить владение TrustedInstaller. Следующая команда используется для изменения владельца на TrustedInstaller.
icacls <путь к файлу> /setowner "NT Service\TrustedInstaller" /t / c / l
Сохранение целостности и безопасности системных файлов
Так как можно случайно запустить эти команды контекстного меню на каком-либо важном системном каталоге или файле, это может навредить операционной системе. Чтобы предотвратить эту ситуация, файлы реестра используют расширенные параметры метаданных для фильтрации команд для критических системных объектов. Следующие папки и файлы защищены, и контекстное меню с ними не работает:
C: \ - системный диск
C: \ Users - путь к профилю пользователя
C: \ ProgramData - общий путь к профилю пользователя
C: \ Windows - каталог Windows
C: \ Windows \ System32 - каталог с важными файлами операционной системы.
C: \ Program Files - каталог со всеми установленными программами
C: \ Program Files (x86) - каталог со всеми установленными 32-битными программами в 64-битной Windows 10.
Это реализуется с помощью хорошо известных prop: values, также известных как метаданные из системы свойств Windows, которые могут быть установлены для файлов, папок и других объектов файловой системы. Вы можете получить полный список таких значений на следующей странице MSDN: MSDN: Свойства Windows
Подобная реализация меню дает защиту ОС, и не позволит пользователю испортить её.
Файл реестра с именем «Add Shift Click Change Owner To Context Menu.reg» добавляет "расширенное контекстное меню", которое появляется только тогда, когда вы нажимаете и удерживаете клавишу Shift при щелчке правой кнопкой мыши по файлу, папке или диску. Это реализовано для пользователей, которые предпочитают, чтобы контекстное меню Проводника не было загроможденным. Таким образом, контекстное меню «Сменить владельца» появляется когда нужно, ведь врядли вы им будете пользоваться постоянно.
На этом все.
💡Узнавайте о новых статьях быстрее. Подпишитесь на наши каналы в Telegram и Twitter.