Как отследить разрешения NTFS и общего ресурса, чтобы понять, почему я могу (или не могу) записать файл

8

Я пытаюсь выяснить, ПОЧЕМУ я могу написать в папке, которую, по моим лучшим оценкам, я не смогу написать. Папка с общим доступом «Все» имеет «Полный доступ», файлы более строгие. Мое лучшее предположение - что-то вроде членства в подгруппах, которое позволяет мне писать, но вложение групп в нашей Active Directory довольно обширное.

Существует ли инструмент, который скажет мне, какие записи ACL разрешают или запрещают мне записывать файл в папку?

Диалоговое окно « Эффективные разрешения » немного полезно, но мне нужно что-то вроде «инструмента трассировки ACFS NTFS», если такая вещь существует.

hometoast
источник
После того, как вы зададите разрешающие настройки для большой группы (например, «Все»), небольшие группы могут ограничить ее только с помощью разрешений DENY. Вы можете быть членом группы, у которой мало прав, но если вы специально НЕ ОТКЛЮЧИЛИ привилегию, ваше фактическое членство в КАЖДОЙ группе позволит вам получить доступ.
Джоэл Коухорн
Я не совсем помню, что заставило меня спросить об этом в первую очередь. Но если я прав, я думаю, что это было что-то глупое, например «OurDomain \ All Users» были добавлены в локальную группу «Users». что-то, по какой-то причине групповая политика не позволила бы мне (слабому разработчику) измениться.
Hometoast

Ответы:

5

Попробуйте AccessChk от sysinternals:

В качестве гарантии того, что они создали безопасную среду, администраторам Windows часто необходимо знать, какие виды доступа имеют определенные пользователи или группы к ресурсам, включая файлы, каталоги, ключи реестра, глобальные объекты и службы Windows. AccessChk быстро отвечает на эти вопросы благодаря интуитивно понятному интерфейсу и выводу.

Уверен, это сработает.

Джоди
источник
1
Кажется, это (очень хорошая) версия командной строки диалогового окна «Действующие разрешения» в проводнике. Это не говорит мне «почему» и «какой набор ACL соответствовал, чтобы разрешить мне доступ».
Hometoast
ах. правда. Я не уверен, что то, что вы ищете, существует вне документации MS. Мой лучший совет - попытаться воссоздать среду файла за пределами текущей структуры, а затем добавить разрешения по одному, начиная с наиболее строгих, пока файл не станет доступным для записи. Не забывайте, что общий доступ и разрешения безопасности разные. Удачи.
Джоди
4

Вы должны попробовать использовать AccessEnum .

введите описание изображения здесь

Это предоставит вам различные участники безопасности, которые имеют записи чтения и запрета в ACL для файлов и папок. это бесплатный инструмент тоже.

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

Винсон
источник
1

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

  1. Начните без доступа по умолчанию.
  2. Соберите все разрешающие разрешения для всех групп в один большой набор вещей, которые вы можете сделать.
  3. Уберите все запрещающие разрешения у всех групп (таким образом, DENY в любом месте превзойдет все остальное).

Таким образом, если вы предоставляете группе «Все» полный контроль и имеете разрешения только для других групп, ваше фактическое членство в группе «Все» предоставит вам полный доступ.

Джоэл Коухорн
источник
0

Если вы устанавливаете acls на smb share, то вам необходимо установить права доступа к файловой системе и в меню share. Вероятно, он установлен для всех только в правах доступа.

неделя
источник