Jika saya menggunakan ICACLS.exe untuk mengatur izin pada folder dengan perintah seperti
icacls "C:\Some\Directory" /grant "somedomain\someUser:(OI)(CI)F" /t
mengapa opsi / t diperlukan? Bukankah itu kasus (OI) (CI) akan menyebabkan izin untuk diwarisi ke semua objek di dalam C:\Some\Directory
pohon?
Untuk sedikit lebih spesifik, anggaplah dalam contoh saya di atas saya memiliki direktori C:\Some\Directory\Tree
. Misalkan direktori ini memiliki tidak izin eksplisit ditentukan. Menambahkan izin eksplisit "somedomain \ someUser: (OI) (CI) F" ke direktori itu tidak akan menghasilkan apa-apa, karena sudah diwarisi. Apakah icacl bahkan melakukan ini? (Sunting: ya, jika Anda menunggu cukup lama!) Jadi jika saya tahu pohon direktori tidak memiliki izin eksplisit, saya benar-benar tidak memerlukan opsi / t (yang menghabiskan banyak waktu pada pohon direktori 8TB dengan ratusan jutaan file ...)
sumber
(OI)(CI)/t
akan mengatur warisan menjadi(OI)(CI)
jika tidak disetel sama sekali, setel ke(IO)
atau kombinasi selain(OI)(CI)
Beberapa percobaan pada pohon direktori sepele menunjukkan bahwa:
1) The (OI) (CI) memang menyebabkan izin untuk diwarisi - seperti ACE yang diwariskan dalam DACL tentu saja, bukan ACE eksplisit - untuk semua sub-objek (mengingat bahwa warisan belum dinonaktifkan pada sub-objek) , seperti yang diharapkan.
2) Opsi / t menyebabkan icacls untuk melintasi pohon dan menambahkan izin yang sama persis untuk masing-masing sub-direktori sebagai eksplisit izin.
Hasilnya adalah bahwa jika seseorang melihat izin keamanan pada sub-direktori, Anda akan melihat dua identik entri, satu menjadi izin yang diwarisi, dan satu menjadi pengaturan izin eksplisit direktori (kecuali jika warisan dinonaktifkan pada subdirektori atau direktori intervensi lainnya).
Apakah seseorang menginginkan ini atau tidak adalah pertanyaan lain, tetapi kemungkinan besar tidak. Memiliki izin yang ditentukan dua kali tidak terlalu berguna, kecuali jika ada beberapa perubahan di masa depan yang perlu Anda waspadai.
Pada sistem file besar, ini bisa memakan waktu loooooooong untuk menyelesaikannya.
Fakta bahwa dokumentasi menyatakan "apakah mereka diatur untuk mewarisi izin" mungkin adalah untuk mengingatkan Anda untuk:
1) menyalin sebagai izin eksplisit ke semua sub direktori mungkin tidak diperlukan jika izin mengandung
(OI)(CI)
tapi
2) jika subdirektori diatur untuk tidak mewarisi izin, ini sebenarnya mencapai sesuatu yang signifikan: pada direktori seperti itu, izin tidak akan diwarisi dari induknya (mis. The
(OI)(CI)
warisan ditekan), tetapi masih ada karena ditambahkan sebagai izin eksplisit.sumber