Windows 2003; Temukan folder dengan izin yang tidak diwariskan / diubah

8

Pertanyaannya : Saya mencari cara yang baik untuk mengaudit / mencari struktur direktori (Windows 2003) dan mencari folder yang tidak mewarisi izin dari orang tua mereka - atau memiliki tambahan pengguna / grup.

Kisah Kembali

Kami memigrasi server file Windows 2003 lama ke kotak 2008 R2. Server lama ini dimigrasikan dari NT4. Sebagian besar folder saat ini menggunakan yang lama (usang?) Domain \ Administrator dan Domain \ Pengguna grup. Ini adalah grup yang, sementara masih dalam AD, saya tidak bisa gunakan untuk izin pada izin R2 2008.

Jadi, sebelum saya merampok semua data yang dibagikan dari server lama ke yang baru, pertama saya perlu "memodernisasi" izin pada saham lama. Namun, saya tahu bahwa selama beberapa dekade terakhir beberapa folder [tidak berdokumen] telah dimodifikasi izinnya untuk tidak mewarisi dari orang tua atau untuk menambah pengguna tambahan. Jadi pencarian saya untuk menemukan mereka!

Chris_K
sumber

Jawaban:

8

Saya akan merekomendasikan untuk menggunakan Powershell (untuk Win2003: http://support.microsoft.com/kb/968929/en-us ) dan modul tambahan tambahan juga untuk ini ( http://gallery.technet.microsoft.com / scriptcenter / 1abd77a5-9c0b-4a2b-acef-90dbb2b84e85 ).

Ini akan membantu Anda terlebih dahulu untuk mendapatkan warisan untuk struktur folder dengan (ketika menjalankan dari folder awal Anda) misalnya.

get-childitem -Recurse | get-inheritance | export-CSV C:\Inheritance.csv -NoTypeInformation

Anda akan mendapatkan semua file dan folder dalam csv yang kemudian dapat difilter di Excel atau DB lain jika diperlukan.

Manfaat tambahan Modul NTFSSecurity adalah bahwa Anda dapat mengubah warisan atau ACL juga selama migrasi dengan skrip Powershell yang serupa.

mis. Anda dapat menghapus warisan dalam folder (folder awal Anda) dengan:

get-childitem | Disable-Inheritance

atau tambahkan -recurse switch lagi untuk semua subfolder / file lagi.

Semoga ini bisa membantu Ceria

Mr.T
sumber
1
+1 untuk membuat saya mengetahui Modul PowerShell Modul Keamanan Sistem.
pk.
Kecil, tetapi sangat fungsional dan bermanfaat! Sesuatu yang harus dimiliki!
Volodymyr Molodets
1

Ini cukup mudah dengan SetACL . Jalankan seperti ini:

SetACL -on "some path" -ot file -actn list -lst f:csv -rec cont

Perintah itu menginstruksikan SetACL untuk mencetak izin dari objek-objek itu saja yang memiliki izin eksplisit, baik karena ACE ditambahkan ke direktori dengan pewarisan diaktifkan atau karena pewarisan dinonaktifkan dan ACE baru ditetapkan.

SetACL memproses lintasan yang lebih panjang dari 260 karakter dan mencantumkan ACE dari direktori mana pun terlepas dari izin saat ini, yaitu bahkan jika Anda bahkan tidak memiliki akses baca SetACL memperlihatkan kepada Anda apa yang ada di sana dan mencetak izin tersebut (diperlukan hak admin).

Helge Klein
sumber