Bagikan melalui


Memahami Built-In Akun Pengguna dan Grup di IIS 7

oleh Saad Ladki

Pengantar

Di versi IIS yang lebih lama, akun lokal bernama IUSR_MachineName dibuat selama penginstalan. IIS menggunakan akun IUSR_MachineName secara default setiap kali autentikasi anonim diaktifkan. Ini digunakan oleh layanan FTP dan HTTP.

Ada juga grup yang disebut IIS_WPG, yang digunakan sebagai kontainer untuk semua identitas kumpulan aplikasi. Selama penyiapan IIS, semua sumber daya yang sesuai pada sistem diberikan hak pengguna yang benar untuk grup IIS_WPG sehingga administrator hanya perlu menambahkan identitas mereka ke grup tersebut saat mereka membuat akun kumpulan aplikasi baru.

Model ini bekerja dengan baik, tetapi memiliki kelemahannya: akun IUSR_MachineName dan grup IIS_WPG keduanya lokal untuk sistem tempat mereka dibuat. Setiap akun dan grup dalam Windows diberi nomor unik yang disebut pengidentifikasi keamanan (SID) yang membedakannya dari akun lain. Ketika ACL dibuat hanya SID yang digunakan. Sebagai bagian dari desain dalam versi IIS yang lebih lama, IUSR_MachineName disertakan dalam file metabase.xml sehingga jika Anda mencoba menyalin metabase.xml dari satu komputer ke komputer lain, itu tidak akan berfungsi. Akun pada komputer lain akan memiliki nama yang berbeda.

Selain itu, Anda tidak dapat 'xcopy /o' ACL dari satu komputer ke komputer lain karena SID berbeda dari komputer ke komputer. Salah satu solusinya adalah menggunakan akun domain, tetapi yang diperlukan untuk menambahkan direktori aktif ke infrastruktur. Grup IIS_WPG memiliki masalah serupa dengan hak pengguna. Jika Anda mengatur ACL pada sistem file satu komputer untuk IIS_WPG dan mencoba 'xcopy /o' yang ada di komputer lain, itu akan gagal. Pengalaman ini telah ditingkatkan di IIS 7 ke atas dengan menggunakan akun dan grup bawaan.

Akun dan grup bawaan dijamin oleh sistem operasi untuk selalu memiliki SID yang unik. IIS 7 ke atas telah mengambil ini lebih lanjut dan memastikan bahwa nama aktual yang digunakan oleh akun dan grup baru tidak akan pernah dilokalkan. Misalnya, terlepas dari bahasa Windows yang Anda instal, nama akun IIS akan selalu IUSR dan nama grup akan IIS_IUSRS.

Singkatnya, IIS 7 ke atas menawarkan hal berikut:

  • Akun bawaan IUSR menggantikan akun IUSR_MachineName.
  • Grup bawaan IIS_IUSRS menggantikan grup IIS_WPG.

Akun IUSR tidak lagi memerlukan kata sandi karena ini adalah akun bawaan. Secara logis, Anda dapat menganggapnya sama dengan akun NETWORKSERVICE atau LOCALSERVICE. Baik akun IUSR baru maupun grup IIS_IUSRS dibahas secara lebih mendalam di bagian di bawah ini.

Memahami Akun IUSR Baru

Akun IUSR menggantikan akun IUSR_MachineName di IIS 7 ke atas. Akun IUSR_MachineName masih akan dibuat dan digunakan jika Anda menginstal server yang kompatibel dengan FTP 6 yang disertakan dalam Windows Server 2008. Jika Anda tidak menginstal server FTP yang disertakan dengan Windows Server 2008, maka akun ini tidak akan dibuat.

Akun bawaan ini tidak memerlukan kata sandi dan akan menjadi identitas default yang digunakan saat autentikasi anonim diaktifkan. Jika Anda melihat dalam file applicationHost.config, Anda akan melihat definisi berikut:

<anonymousAuthentication enabled="true" userName="IUSR" defaultLogonDomain="" />

Ini memberi tahu IIS untuk menggunakan akun bawaan baru untuk semua permintaan autentikasi anonim. Keuntungan terbesar adalah Anda dapat:

  • Atur izin sistem file untuk akun IUSR dengan menggunakan Windows Explorer atau salah satu dari banyak alat baris perintah.
  • Tidak perlu lagi khawatir tentang kata sandi yang kedaluwarsa untuk akun ini.
  • Gunakan xcopy /o untuk menyalin file bersama dengan kepemilikannya dan informasi ACL ke komputer yang berbeda dengan mulus.

Catatan

Akun IUSR mirip dengan LOCALSERVICE dengan cara bertindak secara anonim pada jaringan. Akun NETWORKSERVICE dan LOCALSYSTEM dapat bertindak sebagai identitas komputer, tetapi akun IUSR tidak dapat karena akan memerlukan elevasi hak pengguna. Jika Anda memerlukan akun anonim untuk memiliki hak di jaringan, Anda harus membuat akun pengguna baru dan mengatur nama pengguna dan kata sandi secara manual, seperti yang Anda lakukan di masa lalu untuk autentikasi anonim.

Untuk memberikan hak akun anonim di jaringan dengan menggunakan Manajer IIS:

  1. Klik Mulai, ketik INetMgr.exe, lalu klik Enter. Jika diminta, klik Lanjutkan untuk meningkatkan izin Anda.
  2. Di bagian Koneksi , klik tombol di + samping nama komputer Anda.
  3. Di Manajer IIS, klik dua kali situs yang ingin Anda kelola.
  4. Di Tampilan Fitur, klik dua kali Autentikasi.
  5. Pilih Autentikasi Anonim, lalu klik Edit di panel Tindakan .
  6. Dalam kotak dialog Edit Kredensial Autentikasi Anonim , klik opsi Pengguna tertentu , lalu klik Atur.
  7. Dalam kotak dialog Atur Kredensial , masukkan nama pengguna dan kata sandi yang diinginkan, lalu klik OK.

Memahami Grup IIS_IUSRS Baru

Grup IIS_IUSRS menggantikan grup IIS_WPG. Grup bawaan ini memiliki akses ke semua file dan sumber daya sistem yang diperlukan sehingga akun, ketika ditambahkan ke grup ini, dapat bertindak dengan mulus sebagai identitas kumpulan aplikasi.

Seperti halnya akun bawaan, grup bawaan ini memecahkan beberapa rintangan penyebaran xcopy. Jika Anda mengatur izin pada file Anda untuk grup IIS_WPG (yang tersedia pada sistem IIS 6.0) dan mencoba menyalin file tersebut ke komputer Windows lain, SID grup akan berbeda di seluruh komputer dan konfigurasi situs Anda akan rusak.

Karena grup SID di IIS 7 ke atas sama pada semua sistem yang menjalankan Windows Server 2008, Anda dapat menggunakan 'xcopy /o' untuk mempertahankan informasi ACL dan kepemilikan saat Anda memindahkan file dari komputer ke komputer. Ini membuat penyebaran xcopy mudah.

IIS 7 ke atas juga membuat proses konfigurasi identitas kumpulan aplikasi dan membuat semua perubahan yang diperlukan lebih mudah. Ketika IIS memulai proses pekerja, IIS perlu membuat token yang akan digunakan proses. Ketika token ini dibuat, IIS secara otomatis menambahkan keanggotaan IIS_IUSRS ke token proses pekerja saat runtime. Akun yang berjalan sebagai 'identitas kumpulan aplikasi' tidak perlu lagi menjadi bagian eksplisit dari grup IIS_IUSRS. Perubahan ini membantu Anda menyiapkan sistem dengan lebih sedikit rintangan dan membuat pengalaman Anda secara keseluruhan lebih menguntungkan.

Jika Anda ingin menonaktifkan fitur ini dan menambahkan akun secara manual ke grup IIS_IUSRS, nonaktifkan fitur baru ini dengan mengatur nilai manualGroupMembership ke 'true'. Contoh berikut menunjukkan bagaimana hal ini dapat dilakukan ke defaultAppPool:

<applicationPools>
    <add name="DefaultAppPool">
        <processModel manualGroupMembership="true" />
    </add>
</applicationPools >