Sebagian besar host virtual sekarang telah menonaktifkan komponen standar ASP: FileSystemObject, karena komponen ini memberi ASP kemampuan akses sistem file yang kuat dan dapat membaca, menulis, menyalin, menghapus, mengganti nama, dll. File apa pun di hard disk server tentu saja, ini hanya mungkin dilakukan pada Windows NT/2000 menggunakan pengaturan default). Namun setelah komponen ini dinonaktifkan, akibatnya seluruh ASP yang menggunakan komponen ini tidak dapat berjalan dan tidak dapat memenuhi kebutuhan pelanggan.
Bagaimana cara mengizinkan komponen FileSystemObject tanpa mempengaruhi keamanan server (yaitu, pengguna host virtual yang berbeda tidak dapat menggunakan komponen ini untuk membaca dan menulis file orang lain)? Di sini saya memperkenalkan metode yang saya peroleh dalam percobaan. Berikut ini menggunakan Windows 2000 Server sebagai contoh untuk menggambarkan.
Buka pengelola sumber daya di server, klik kanan huruf drive dari setiap partisi atau volume hard disk, pilih "Properti" di menu pop-up, pilih tab "Keamanan", dan kemudian Anda dapat melihat akun mana yang dapat mengakses ini partisi (Volume) dan hak akses. Setelah instalasi default, "Semua Orang" muncul dengan izin kontrol penuh. Klik "Tambah", tambahkan "Administrator", "Operator Cadangan", "Pengguna Kuat", "Pengguna" dan grup lain, dan berikan "Kontrol Penuh" atau izin terkait. Berhati-hatilah untuk tidak memberikan grup "Tamu", Akun " IUSR_nama mesin" memiliki izin apa pun. Kemudian hapus grup "Semua Orang" dari daftar, sehingga hanya grup dan pengguna yang berwenang yang dapat mengakses partisi hard disk ini. Ketika ASP dijalankan, ia mengakses hard disk sebagai "Nama IUSR_machine". , ASP tidak akan bisa membaca dan menulis file di hard disk.
Yang perlu dilakukan hanyalah menyiapkan akun pengguna terpisah untuk setiap pengguna host virtual, lalu menetapkan direktori untuk setiap akun yang memungkinkannya memiliki kontrol penuh.
Seperti yang ditunjukkan pada gambar di bawah, buka "Manajemen Komputer" → "Pengguna dan Grup Lokal" → "Pengguna", klik kanan mouse di kolom kanan, dan pilih "Pengguna Baru" di menu pop-up:
Di kotak dialog pop-up "Pengguna Baru", masukkan "Nama Pengguna", "Nama Lengkap", "Deskripsi", "Kata Sandi", dan "Konfirmasi Kata Sandi" sesuai dengan kebutuhan sebenarnya, dan tambahkan "Pengguna harus mengubah kata sandi selanjutnya kali dia masuk" sebelum "Pengguna harus mengubah kata sandi saat dia masuk berikutnya". Hapus tanda centang dan pilih "Pengguna tidak dapat mengubah kata sandi" dan "Kata sandi tidak pernah kedaluwarsa". Contoh ini adalah membuat akun bawaan "IUSR_VHOST1" untuk pengguna host virtual pertama yang mengakses layanan informasi Internet secara anonim, yaitu ketika semua klien mengakses host virtual ini menggunakan http://xxx.xxx.xxxx/ , mereka akan menggunakan akun ini diakses dengan identitas. Setelah menyelesaikan input, klik "Buat". Anda dapat membuat banyak pengguna sesuai dengan kebutuhan sebenarnya, dan klik "Tutup" setelah pembuatan:
Sekarang pengguna yang baru dibuat telah muncul di daftar akun, klik dua kali akun dalam daftar untuk pengaturan lebih lanjut:
Di kotak dialog properti pop-up "IUSR_VHOST1" (yaitu, akun baru yang baru saja dibuat), klik tab "Milik":
Akun yang baru dibuat termasuk dalam grup "Pengguna" secara default. Pilih grup dan klik "Hapus":
Yang muncul sekarang adalah seperti gambar di bawah ini.
Temukan "Tamu" di kotak dialog pop-up "Pilih Grup", klik "Tambah", grup ini akan muncul di kotak teks di bawah, lalu klik "OK": [www.knowsky.com]
Apa yang muncul adalah seperti yang ditunjukkan pada gambar di bawah ini. Klik "OK" untuk menutup kotak dialog ini:
Buka "Layanan Informasi Internet" dan mulai menyiapkan host virtual. Dalam contoh ini, kami mengambil pengaturan "Host Virtual Pertama" sebagai contoh. Klik kanan nama host dan pilih "Properti" di menu pop-up:
Kotak dialog "Properti Host Virtual Pertama" muncul. Dari kotak dialog, Anda dapat melihat bahwa pengguna host virtual menggunakan folder "F:VHOST1":
Abaikan kotak dialog "First Virtual Host Properties" tadi, alihkan ke "Explorer", cari folder "F:VHOST1", klik kanan, pilih "Properties" → tab "Security", saat ini Anda dapat melihatnya pengaturan keamanan default folder adalah kontrol penuh "Semua Orang" (konten yang ditampilkan tidak persis sama tergantung situasinya). Pertama, ubah "Izinkan izin yang diwariskan dari induk untuk disebarkan ke objek" di bagian bawah. Hapus tanda centang:
Saat ini, peringatan "keamanan" seperti yang ditunjukkan di bawah ini akan muncul, klik "Hapus":
Saat ini, semua grup dan pengguna di tab Keamanan akan dihapus (jika tidak dihapus, gunakan "Hapus" untuk menghapusnya), lalu klik tombol "Tambah".
Tambahkan "Administrator" seperti yang ditunjukkan pada gambar dan akun baru "IUSR_VHOST1" yang dibuat sebelumnya, yang akan memberikan izin kontrol penuh. Anda juga dapat menambahkan grup atau pengguna lain sesuai dengan kebutuhan sebenarnya, tetapi pastikan untuk tidak menambahkan "Tamu" group , "IUSR_machine name" dan akun akses anonim ini ditambahkan!
Kemudian beralih ke kotak dialog "Properti Host Virtual Pertama" yang dibuka sebelumnya, buka tab "Keamanan Direktori", dan klik "Edit" dari Kontrol Akses dan Otentikasi Anonim:
Di kotak pop-up "Metode Verifikasi" (seperti yang ditunjukkan di bawah), klik "Edit":
Muncul "Akun Pengguna Anonim", defaultnya adalah "IUSR_Nama Mesin", klik "Jelajahi":
Di kotak dialog "Pilih Pengguna", temukan akun baru "IUSR_VHOST1" yang dibuat sebelumnya dan klik dua kali:
Saat ini, nama pengguna anonim telah diubah. Di kotak kata sandi, masukkan kata sandi yang ditetapkan untuk akun tersebut saat Anda membuatnya sebelumnya:
Konfirmasikan kata sandi Anda lagi:
Oke, selesai, klik OK untuk menutup kotak dialog ini.
Setelah pengaturan ini, pengguna "host virtual pertama" yang menggunakan komponen FileSystemObject ASP hanya dapat mengakses konten di bawah direktori mereka sendiri: F:VHOST1. Saat mencoba mengakses konten lain, pesan kesalahan seperti "Tidak ada izin" akan muncul . "Hard disk belum siap", "500 Server Internal Error" dan pesan kesalahan lainnya ditampilkan.
Lain: Jika pengguna perlu membaca kapasitas partisi hard disk dan nomor seri hard disk, pengaturan seperti itu akan membuat pembacaan menjadi tidak mungkin. Jika Anda ingin mengizinkannya membaca konten yang terkait dengan seluruh partisi, silakan klik kanan partisi (volume) hard disk, pilih "Properti" → "Keamanan", tambahkan akun pengguna ini ke daftar, dan berikan di setidaknya "Baca" "Izin. Karena subdirektori di bawah volume ini semuanya telah disetel ke "Larang penyebaran izin yang dapat diwariskan dari induk ke objek ini", pengaturan izin subdirektori berikut tidak akan terpengaruh.