Я пытаюсь найти DACL (списки дискреционного контроля доступа) для папок 50 КБ на сетевом диске. Я пытаюсь перечислить все разрешения для каждой папки, используя некоторую автоматизацию. Я немного знаком с python, и я думал об этом, используя модуль подпроцесса, где я вызываю icalcs.exe, чтобы вывести список всех разрешений, а затем отформатировал вывод в excel, где я могу прочитать эти отчеты.
Пока у меня есть
import subprocess
drive=r'path of the drive read from a list'
p1= subprocess.Popen('icacls'+drive,shell=False, stdout=subprocess.PIPE, stdin=None)
При печати вывода перечисляются группы доменов, которые имеют разрешения для папки, например -
\\Path\folder BUILTIN\\Admin:(OI)(CI)(F)
BUILTIN\\User: (CI)(RX)
Domain\group: (I)(F)(CI)(OI)
Вывод, генерируемый командой, немного медленен из-за задержек в сети, и мне было интересно, есть ли лучший способ сделать это или был модуль Python, который поддерживал функциональность.
У меня есть следующие вопросы-
- Как мне составить исчерпывающий отчет из результатов, если я считаю это самым быстрым из доступных подходов?
- Альтернативы этому подходу, которые быстрее и проще превратить в отчет Excel?
Буду признателен за любую помощь.