La plupart des hôtes virtuels ont désormais désactivé le composant standard d'ASP : FileSystemObject, car ce composant fournit à ASP de puissantes capacités d'accès au système de fichiers et peut lire, écrire, copier, supprimer, renommer, etc. n'importe quel fichier sur le disque dur du serveur (de. bien entendu, cela n'est possible que sous Windows NT/2000 en utilisant les paramètres par défaut). Cependant, après avoir désactivé ce composant, la conséquence est que tous les ASP qui utilisent ce composant ne pourront pas fonctionner et ne pourront pas répondre aux besoins des clients.
Comment autoriser le composant FileSystemObject sans affecter la sécurité du serveur (c'est-à-dire que différents utilisateurs de l'hôte virtuel ne peuvent pas utiliser ce composant pour lire et écrire les fichiers d'autres personnes) ? Ici, je présente une méthode que j'ai obtenue lors de l'expérience. Ce qui suit utilise Windows 2000 Server comme exemple pour illustrer.
Ouvrez le gestionnaire de ressources sur le serveur, cliquez avec le bouton droit sur la lettre de lecteur de chaque partition ou volume du disque dur, sélectionnez "Propriétés" dans le menu contextuel, sélectionnez l'onglet "Sécurité", puis vous pourrez voir quels comptes peuvent y accéder. partition (Volume) et droits d’accès. Après l'installation par défaut, « Tout le monde » apparaît avec des autorisations de contrôle total. Cliquez sur "Ajouter", ajoutez "Administrateurs", "Opérateurs de sauvegarde", "Utilisateurs expérimentés", "Utilisateurs" et autres groupes, et accordez "Contrôle total" ou les autorisations correspondantes. Faites attention à ne pas donner au groupe "Invités", aux comptes ". IUSR_machine name" ne dispose d'aucune autorisation. Supprimez ensuite le groupe « Tout le monde » de la liste, afin que seuls les groupes et utilisateurs autorisés puissent accéder à cette partition du disque dur. Lorsque ASP est exécuté, il accède au disque dur en tant que « Nom de la machine IUSR ». Cela n'est pas donné ici. , ASP ne pourra pas lire et écrire des fichiers sur le disque dur.
Il suffit de créer un compte utilisateur distinct pour chaque utilisateur d'hôte virtuel, puis d'attribuer à chaque compte un répertoire qui lui permet un contrôle total.
Comme le montre la figure ci-dessous, ouvrez « Gestion de l'ordinateur » → « Utilisateurs et groupes locaux » → « Utilisateurs », cliquez avec le bouton droit de la souris dans la colonne de droite et sélectionnez « Nouvel utilisateur » dans le menu contextuel :
Dans la boîte de dialogue contextuelle « Nouvel utilisateur », entrez « Nom d'utilisateur », « Nom complet », « Description », « Mot de passe » et « Confirmer le mot de passe » en fonction des besoins réels, et ajoutez « L'utilisateur doit changer de mot de passe le prochain fois qu'il se connecte" avant "L'utilisateur doit changer le mot de passe la prochaine fois qu'il se connecte". Supprimez les coches et sélectionnez "L'utilisateur ne peut pas changer le mot de passe" et "Le mot de passe n'expire jamais". Cet exemple consiste à créer un compte intégré "IUSR_VHOST1" pour l'utilisateur du premier hôte virtuel afin d'accéder de manière anonyme aux services d'informations Internet, c'est-à-dire lorsque tous les clients accèdent à cet hôte virtuel à l'aide de http://xxx.xxx.xxxx/ , ils utiliseront ce compte accessible par identité. Après avoir terminé la saisie, cliquez sur "Créer". Vous pouvez créer plusieurs utilisateurs en fonction des besoins réels, et cliquer sur « Fermer » après la création :
Maintenant que l'utilisateur nouvellement créé apparaît dans la liste des comptes, double-cliquez sur le compte dans la liste pour d'autres paramètres :
Dans la boîte de dialogue des propriétés contextuelles « IUSR_VHOST1 » (c'est-à-dire le nouveau compte qui vient d'être créé), cliquez sur l'onglet « Appartient à » :
Le compte nouvellement créé appartient par défaut au groupe « Utilisateurs » Sélectionnez le groupe et cliquez sur « Supprimer » :
Ce qui apparaît maintenant est comme indiqué dans l'image ci-dessous. À ce stade, cliquez sur « Ajouter » :
Recherchez « Invités » dans la boîte de dialogue contextuelle « Sélectionner un groupe », cliquez sur « Ajouter », ce groupe apparaîtra dans la zone de texte ci-dessous, puis cliquez sur « OK » : [www.knowsky.com]
Ce qui apparaît est comme indiqué dans la figure ci-dessous. Cliquez sur « OK » pour fermer cette boîte de dialogue :
Ouvrez « Internet Information Services » et commencez à configurer l'hôte virtuel. Dans cet exemple, nous prenons comme exemple le paramètre « Premier hôte virtuel ». Cliquez avec le bouton droit sur le nom de l'hôte et sélectionnez « Propriétés » dans le menu contextuel :
Une boîte de dialogue « Propriétés du premier hôte virtuel » apparaît. Dans la boîte de dialogue, vous pouvez voir que l'utilisateur de l'hôte virtuel utilise le dossier « F:VHOST1 » :
Ignorez la boîte de dialogue "Propriétés du premier hôte virtuel" pour l'instant, passez à "Explorateur", recherchez le dossier "F:VHOST1", faites un clic droit, sélectionnez "Propriétés" → onglet "Sécurité", à ce moment vous pouvez voir que le paramètre de sécurité par défaut du dossier est le contrôle total "Tout le monde" (le contenu affiché n'est pas exactement le même selon la situation). Tout d'abord, modifiez l'option "Autoriser la propagation des autorisations héritées du parent à l'objet" en bas. Supprimez la coche :
À ce moment, un avertissement de « sécurité » comme indiqué ci-dessous apparaîtra, cliquez sur « Supprimer » :
À ce stade, tous les groupes et utilisateurs de l'onglet Sécurité seront effacés (s'ils ne sont pas effacés, veuillez utiliser « Supprimer » pour les effacer), puis cliquez sur le bouton « Ajouter ».
Ajoutez l'"Administrateur" comme indiqué sur l'image et le nouveau compte "IUSR_VHOST1" créé précédemment, qui donnera des autorisations de contrôle total. Vous pouvez également ajouter d'autres groupes ou utilisateurs en fonction des besoins réels, mais veillez à ne pas ajouter les "Invités". groupe, "IUSR_machine name" et ces comptes d'accès anonymes sont ajoutés !
Passez ensuite à la boîte de dialogue « Propriétés du premier hôte virtuel » ouverte précédemment, ouvrez l'onglet « Sécurité du répertoire » et cliquez sur « Modifier » dans Contrôle d'accès et d'authentification anonyme :
Dans la boîte contextuelle « Méthode de vérification » (comme indiqué ci-dessous), cliquez sur « Modifier » :
Le « Compte utilisateur anonyme » apparaît, la valeur par défaut est « IUSR_Machine Name », cliquez sur « Parcourir » :
Dans la boîte de dialogue « Sélectionner un utilisateur », recherchez le nouveau compte « IUSR_VHOST1 » créé précédemment et double-cliquez :
À ce stade, le nom d'utilisateur anonyme a été modifié. Dans la zone Mot de passe, saisissez le mot de passe défini pour le compte lorsque vous l'avez créé précédemment :

Confirmez à nouveau votre mot de passe :

OK, c'est fait, cliquez sur OK pour fermer ces boîtes de dialogue.
Après ce paramètre, les utilisateurs du « premier hôte virtuel » qui utilisent le composant FileSystemObject d'ASP ne peuvent accéder qu'au contenu de leur propre répertoire : F:VHOST1. Lorsqu'ils tentent d'accéder à un autre contenu, un message d'erreur tel que « Aucune autorisation » apparaît. . « Le disque dur n'est pas prêt », « 500 Erreur interne du serveur » et d'autres messages d'erreur s'affichent.
Autre : si l'utilisateur a besoin de lire la capacité de partition du disque dur et le numéro de série du disque dur, un tel paramètre rendra la lecture impossible. Si vous souhaitez lui permettre de lire le contenu lié à la partition entière, veuillez cliquer avec le bouton droit sur la partition (volume) du disque dur, sélectionner "Propriétés" → "Sécurité", ajouter le compte de cet utilisateur à la liste et donner à au moins "Lire" "Autorisations. Étant donné que les sous-répertoires de ce volume ont tous été définis sur « Interdire la propagation des autorisations héritées du parent vers cet objet », les paramètres d'autorisation des sous-répertoires suivants ne seront pas affectés.