12

У меня есть папка, к которой я не могу получить доступ из учетной записи, которая является частью группы администраторов в Windows 7.

Если я открою вкладку «Безопасность» в свойствах, я вижу «У вас нет разрешения на просмотр или редактирование настроек разрешений этого объекта».

Если я нажимаю на «Дополнительно» и перехожу на вкладку «Владелец», она говорит, что «Невозможно отобразить текущего владельца».

Я могу получить доступ к папке путем повторного назначения владельца, но это уничтожает текущие разрешения для папки.

Итак, есть ли какой-то способ предоставить администраторам доступ к папке, не принимая контроль и не разрушая текущие разрешения.

2 ответа2

12

Некоторые тщательные раскопки показывают, что принятие прав собственности иногда разрушает существующие разрешения, а иногда нет. Кажется, все зависит от того, пытаетесь ли вы сделать это рекурсивно. Обратите внимание, что Windows предупреждает вас, когда собирается заменить существующие разрешения, но (по крайней мере, в графическом интерфейсе) очень легко просто ОК сообщение, не читая или не понимая его полностью.

Чтобы увидеть его, вам понадобится каталог (в этом примере c:\SomeFolder), который принадлежит другой учетной записи пользователя и к которому вы и группа администраторов имеете нулевой доступ.

Командная строка

Используя инструмент командной строки "takeown":

ВЗЯТЬ /A /R /F c:\SomeFolder

вы должны увидеть что-то вроде

УСПЕХ: Файл (или папка) "c:\SomeFolder" теперь принадлежит группе администраторов.

У вас нет прав на чтение содержимого каталога "c:\SomeFolder"

Вы хотите заменить права доступа к каталогу разрешениями, предоставляющими вам полный контроль ("Y" для YES, "N" для NO, "C" для CANCEL)?

Обратите внимание, что если вы ответите «да», это действительно означает замену разрешений. Любые существующие разрешения будут уничтожены. Если вы ответите «нет», у вас по-прежнему не будет разрешений для папки, но вы уже являетесь ее владельцем, поэтому можете предоставить себе разрешения в обычном режиме и не уничтожать уже существующие.

Если вы не укажете рекурсивный флаг (/R), вы не получите предупреждение, и владелец будет изменен без влияния на другие разрешения.

графический интерфейс пользователя

Вам нужно будет использовать вкладку "Безопасность" окна свойств, чтобы изменить что-либо через графический интерфейс. Это дает вам две кнопки: "продолжить" и "расширенный". Дополнительно предоставляет окно с четырьмя вкладками: "Права", "Аудит", "Владелец" и "Действующие права". Продолжить дает вам только вкладку "владелец".

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

Очень просто не полностью прочитать это окно с сообщением, предположим, что это просто еще одно окно с просьбой подтвердить что-то неразрушающее и просто нажмите Enter, чтобы ОК. Также очень легко предположить, что они действительно не могут означать замену, потому что никто в здравом уме никогда не захочет это сделать.

3

Если вы не указаны как «можете читать / изменять разрешения» в ACL папки, вы не можете их изменять, независимо от того, кто вы или кто вы. Все пользователи, администраторы, встроенные системы, даже nt authority\system , одинаково относятся к коду безопасности. (Общесистемная привилегия "Взять на себя ответственность" является исключением, но она также не может изменять ACL, только сбрасывает ее.)

Вы должны войти в систему как кто - то позволено сделать это, либо непосредственно (имя пользователя + пароль) или - если у вас есть много свободного времени - делая некоторые SeCreateTokenPrivilege колдовство.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .