Menggunakan icacl untuk membuat daftar kepemilikan direktori

13

Saya mencoba mencari tahu apakah IIS_IUSRS memiliki FullControl folder tertentu di bawah direktori.

Contoh

Saya punya c: \ inetpub \ sites \

Di bawah c: \ inetpub \ sites \ saya memiliki sekitar 50 folder situs

Di setiap folder saya memiliki 3 folder yang disebut unggahan, media, permintaan.

Saya ingin mengetahui apakah BUILTIN \ IIS_IUSRS memiliki Kendali Kendali

Beberapa masalah, Tidak semua situs memiliki unggahan, media, permintaan beberapa mungkin hanya memiliki unggahan, media atau media, permintaan atau hanya media, dll.

Beberapa perintah saya telah mencoba menggunakan 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"

Saya ingin memodifikasi ini untuk mencari BUILTIN \ IIS_IUSRS sebagai pengguna

Anthony Fornito
sumber

Jawaban:

8

Dengan risiko rep-whoring yang tanpa malu-malu, berikut adalah file batch yang akan mengembalikan direktori mana pun yang bernama `BUILTIN \ IIS_IUSRS" dengan izin "Kontrol Penuh" (dengan objek dan wadah yang diaktifkan):

@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

Jalankan ini di direktori tingkat atas Anda. Ini akan menampilkan direktori yang ditemukannya dengan izin yang Anda cari.

Evan Anderson
sumber