Самый быстрый способ поиска списков контроля доступа Windows (DACL) Python - PullRequest
0 голосов
/ 02 сентября 2018

Я пытаюсь найти 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?

Буду признателен за любую помощь.

...