Korzystanie z icacls do wykazania własności katalogów

13

Próbuję dowiedzieć się, czy IIS_IUSRS ma FullControl niektórych folderów w katalogach.

Przykład

Mam c: \ inetpub \ sites \

W obszarze c: \ inetpub \ sites \ mam około 50 folderów witryn

W każdym folderze mam 3 foldery zwane przesyłaniem, multimediami, żądaniami.

Chciałbym dowiedzieć się, czy BUILTIN \ IIS_IUSRS ma FullControl

Kilka problemów, nie wszystkie strony mają przesłane materiały, media, żądania, niektóre mogą mieć tylko pliki do pobrania, media lub media, żądania lub tylko media itp.

Kilka poleceń, które próbowałem przy użyciu PowerShell.

Get-ChildItem -Recurse | Get-Acl | out-string -stream | select-string -pattern "media"

Get-ChildItem -Recurse | Get-Acl | out-string -stream | select-string -pattern "uploads"

Get-ChildItem -Recurse | Get-Acl | out-string -stream | select-string -pattern "requests"

Chciałbym to zmodyfikować, aby szukał BUILTIN \ IIS_IUSRS jako użytkownika

Anthony Fornito
źródło

Odpowiedzi:

8

Na ryzyko bezwstydnego ponownego dziwkowania, oto plik wsadowy, który zwróci wszystkie katalogi o nazwie „BUILTIN \ IIS_IUSRS” z uprawnieniem „Pełna kontrola” (z włączonym dziedziczeniem obiektu i kontenera):

@echo off
for /f "usebackq delims=" %%i in (`dir /ad /s /b`) do call :df "%%i"
goto :EOF

:df
icacls %1 | find /i "BUILTIN\IIS_IUSRS:(OI)(CI)(F)" >NUL 2>NUL
if not errorlevel 1 echo %~1

Uruchom to w katalogu najwyższego poziomu. Wyświetli wszystkie znalezione katalogi za zgodą, której szukasz.

Evan Anderson
źródło