У меня есть вопрос, касающийся списков ACL в сетевой файловой системе.
По сути, я хочу установить разрешение для объекта папки верхнего уровня, который потенциально содержит более 100 000 объектов файлов и папок под ним.Я хочу, чтобы разрешение было наследуемым для всех вложенных папок и вложенных файлов (IE ' Применяется к файлам, папкам и подпапкам ' равно true ).
Не знаюне хочу удалять любые существующие унаследованные разрешения (IE ' Заменить все разрешения дочернего объекта на унаследованные разрешения от этого объекта ' равен false ).
Итак, когда яЗапустите Set-ACL, SetACL.exe, XCACLS.vbs или даже используйте Windows GUI, процесс может занять очень много времени - очевидно, из-за большого размера подкаталога.
Я привык к этому сейчас, НО:
Я хотел знать - почему точно это?
В конце концов, разве я не пишу только один ACE на один единственный объект папки?
- Я не пересекаю каталог;
- Я не изменяю отдельные списки ACL для вложенных файлов и папок (я не думаю);и
- Я не заменяю разрешения
Я предполагал, что если вы обращаетесь к объекту подпапки / файла, он проверит его явные записи ACE, чтобы увидеть, есть ли у вас разрешения, и еслиу вас его не было, он тогда проверил бы любые унаследованные разрешения (от объектов родительской папки), которые могли бы дать вам доступ.
Итак, установка наследуемого разрешения также вызывает запись нового отдельного ACEдля каждого отдельного подфайла и папки, даже если технически вы устанавливаете только один ACE на верхнем уровне?
Есть ли какой-либо способ установить ACE на верхнем уровне и не иметьКоманда пойти и перечислить через весь подкаталог?Я хочу сделать это быстро и эффективно для огромного количества файлов и папок.
Надеюсь, это имеет смысл.Ждем любых предложений.
Рис.