Itu karena ini adalah dua hal yang berbeda. IIS_IUSRS adalah grup untuk Akun Proses Pekerja IIS . Ini berarti identitas bahwa kumpulan aplikasi itu sendiri berjalan di bawah. IUSR adalah identitas pengguna anonim. Itu berarti identitas yang IIS yakini sebagai pengguna yang mengakses situs.
Sekarang meskipun Anda tidak mengatakannya, coba saya tebak - aplikasi ini adalah asp klasik? (Kalau tidak, jika itu. Net maka Anda harus menggunakan peniruan). Apa pun yang terjadi, sumber daya diakses sebagai identitas palsu, makna, pengguna anonim dalam kasus Anda, yang berarti IUSR. Itu sebabnya Anda harus memberinya hak. Di .Net, jika Anda mematikan peniruan, Anda akan menemukan bahwa IIS_IUSRS akan ikut bermain seperti yang Anda harapkan. Dalam ASP Klasik (dan untuk file statis), Anda tidak punya pilihan, peniruan selalu "diaktifkan"; jadi selalu identitas pengguna yang digunakan, bukan identitas pool. Jadi karena IIS_IUSRS adalah untuk identitas kumpulan, itu tidak dimainkan.
Edit setelah OP menambahkan informasi lebih lanjut:
Sangat mudah untuk membingungkan IUSR dan IIS_IUSRS karena nama mereka. Cara melihat mereka berbeda adalah dengan mengingat bahwa IIS_IUSRS adalah pengganti IIS_WPG di IIS6, yang merupakan Worker Process Group. Untuk grup-grup ini Anda menambahkan akun yang ingin Anda gunakan untuk menjalankan kelompok Anda, bukan identitas pribadi, dan hak istimewa seharusnya lebih terbatas. misalnya. terkadang Anda mungkin ingin menggunakan akun domain untuk menjalankan kumpulan delegasi kerberos ke sumber daya jaringan lainnya. Maka Anda akan menambahkan akun layanan itu ke grup ini.
Ketika peniruan diaktifkan, kumpulan / proses berpura-pura menjadi pengguna karena disuruh. Dalam kasus anon auth (kasus Anda), pengguna itu adalah IUSR. Dalam hal windows auth, itu akan menjadi identitas windows \ domain pengguna. Ini juga mengapa Anda mendapatkan kinerja yang mengesankan dengan peniruan, karena proses harus beralih ke identitas yang berbeda untuk akses sumber daya.
Jika Anda menggunakan .NET dan otentikasi anonim, maka saya tidak melihat mengapa Anda akan mengaktifkan peniruan. Jika Anda tidak menggunakan atau tidak perlu peniruan, Anda harus mengetahui beberapa tipu daya dalam kasus IIS7: Anda dapat membuat IUSR Anda pergi sepenuhnya dan mengakhiri semua kebingungan. Saya pikir Anda akan menyukainya, dan itu metode yang saya sukai juga. Yang harus Anda lakukan adalah mengatakannya untuk menggunakan kembali identitas kumpulan sebagai identitas anonim .
Jadi setelah ini, Anda hanya perlu berurusan dengan grup IIS_IUSRS. Tapi jangan bingung, ini masih tidak berarti bahwa keduanya sama! Dimungkinkan untuk identitas proses untuk menggantikan IUSR, tetapi tidak sebaliknya!
Beberapa tipu daya IIS7 yang perlu diperhatikan: jika Anda melihat IIS_IUSRS, itu mungkin kosong. Itu karena identitas virtual pool Anda secara otomatis ditambahkan padanya ketika pool dimulai, jadi Anda tidak perlu khawatir tentang hal-hal ini.
Tabel ini harus membantu memperjelas lebih baik bagaimana identitas pelaksanaan utas ditentukan:
Peniruan Sumber Akses Anonim Diakses Sebagai
Diaktifkan Diaktifkan IUSR_computer di IIS5 / 6 atau,
IUSR di IIS7 atau,
Jika Anda mengubah akun pengguna anon
di IIS, apa pun yang Anda atur di sana
Diaktifkan Dinonaktifkan, MYDOM \ MyName
Dinonaktifkan Diaktifkan NT Authority \ Layanan Jaringan (kumpulan identitas)
Dinonaktifkan Dinonaktifkan NT Authority \ Layanan Jaringan (kumpulan identitas)