Modifications au système de fichiers et à la pile de stockage pour restreindre l'accès direct au disque et l'accès direct de volume dans Windows Vista et Windows Server 2008

Traductions disponibles Traductions disponibles
Numéro d'article: 942448 - Voir les produits auxquels s'applique cet article
Agrandir tout | Réduire tout

Sommaire

INTRODUCTION

Cet article décrit les modifications apportées au système de fichiers et à la pile de stockage pour restreindre l'accès direct au disque et l'accès direct de volume dans Windows Server 2008 et dans Windows Vista.

Plus d'informations

Arrière-plan

Lorsqu'un programme ouvre un handle de fichier exclusif, le programme suppose que le contenu du fichier ne peut pas être modifié d'autres. Toutefois, le contenu du fichier peut être modifié si les conditions suivantes sont remplies :
  • Un autre programme ouvre le handle de fichier pour le volume sous-jacent ou sur le disque sous-jacent.
  • Le programme apporte des modifications à l'emplacement où réside le fichier.
Corruption ou à l'instabilité du système peut se produire lorsqu'un programme écrit directement sur un volume monté par un système de fichiers sans premier obtenir l'accès exclusif au volume. Cela est dû au fait que l'écriture au volume peut-être donc entrer en conflit avec les écritures de système de fichier. Lorsque ces collisions se produisent, le contenu du volume peut être laissé dans un état incohérent.

Pour réduire l'effet de ce problème, les modifications ont été apportées au système de fichiers et à la pile de stockage pour restreindre l'accès direct au disque ou sur un volume.

Détails de la modification pour le système de fichiers et à la pile de stockage

  • Un système de fichiers peut écrire dans un descripteur de volume uniquement si les conditions suivantes sont remplies :
    • Condition 1: les secteurs sont écrits dans sont des secteurs de démarrage.

      Remarque Cette condition existe pour prendre en charge des programmes tels que les programmes antivirus, de programmes d'installation et d'autres programmes à la mise à jour le code de démarrage du volume système. Impossible de verrouiller le volume système.
    • Condition 2: les secteurs sont écrits dans résident en dehors de l'espace du système de fichiers.

      Remarque La région entre la fin de l'espace du système de fichiers et la fin de l'espace disponible du volume n'est pas sous le contrôle du système de fichiers. Par conséquent, il n'y a aucune raison pour exiger le volume d'être verrouillés pour y écrire.
    • Condition 3: le volume a été verrouillé implicitement en demandant un accès en écriture exclusif.
    • Condition 4: le volume a été verrouillé explicitement en effectuant une requête de verrou ou une demande de démontage.
    • Condition 5: la demande d'écriture a un indicateur SL_FORCE_DIRECT_WRITE indique que la condition 2 doit être ignorée.

      Remarque Il existe des filtres du système de fichiers qui écrivent dans la zone d'espace libre d'un volume sans première verrouiller le volume. Si les filtres du système de fichiers pour ce faire, les filtres du système de fichiers peuvent définir un indicateur sur la demande d'écriture qui informe le système de fichiers pour permettre l'écriture se produisent. Cet indicateur peut uniquement être défini à partir de dans le mode noyau.
  • Les modifications apportées au système de fichiers et à la pile de stockage ne s'appliquent pas si le volume n'est pas monté ou si le volume ne dispose d'aucun système de fichiers.
  • Le système de fichiers UDFS et le système de fichiers FASTFAT limitent les modifications sont apportées au système de fichiers et à la pile de stockage. Ces modifications sont limitées sur le média de type disque.

    Remarque La plupart des programmes de maîtrise des CD écrire directement sur le volume sans première verrouiller le volume. Certains programmes maîtrise des CD ignorent même la couche de système de fichier. Dans ces cas, ces programmes écrire directement dans la couche de stockage. Dans la mesure où le fichier d'échange peut uniquement être hébergé sur des lecteurs de disque, il n'y a aucune raison pour appliquer les modifications apportées au système de fichiers et à la pile de stockage pour les lecteurs optiques.
  • Les pilotes de stockage peuvent écrire dans un handle de disque si les conditions suivantes sont remplies :
    • Condition 1: les secteurs sont écrits n'appartenant ne pas à un volume.

      Remarque Les programmes utilisent les secteurs situés en dehors de volumes pour stocker des métadonnées. Les tables de partition se trouvent également dans les secteurs situés en dehors des volumes. Dans la mesure où ces secteurs ne sont pas sous le contrôle de n'importe quel système de fichiers, il n'y a aucune raison pour bloquer l'accès pour les secteurs.
    • Condition 2: les secteurs sont écrits appartenant à un volume monté qui est verrouillé explicitement.
    • Condition 3: les secteurs sont écrits appartenant à un volume qui n'est pas monté ou automne au sein d'un volume ne possède aucun système de fichiers.
  • Les modifications apportées au système de fichiers et à la pile de stockage s'appliqueront également aux blocs de parité d'un volume.
  • Les modifications au système de fichiers et à la pile de stockage s'appliquent aux systèmes 32 bits et pour systèmes 64 bits.
Outre les diverses API WriteFile, il existe les demandes de contrôle d'e/S de périphérique qui peuvent être utilisés pour émettre des écritures vers un volume ou vers un disque. Les modifications apportées au système de fichiers et à la pile de stockage s'appliqueront également pour les demandes de contrôle de périphérique d'e/S. Les demandes de contrôle de périphérique d'e/S incluent les commandes suivantes :
  • IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES
  • IOCTL_SCSI_PASS_THROUGH
  • IOCTL_SCSI_PASS_THROUGH_DIRECT
  • SCSIOP_WRITE6
  • SCSIOP_WRITE
  • SCSIOP_WRITE_VERIFY
  • SCSIOP_WRITE_SAME
  • SCSIOP_WRITE_LONG
  • SCSIOP_XDWRITE
  • SCSIOP_XPWRITE
  • SCSIOP_XDWRITE_READ
  • SCSIOP_WRITE12
  • SCSIOP_WRITE_VERIFY12
  • SCSIOP_WRITE16
  • SCSIOP_WRITE_VERIFY16
  • SCSIOP_WRITE_SAME16
  • SCSIOP_WRITE_LONG16
  • SCSIOP_WRITE_XDWRITE_EXTENDED16
  • SCSIOP_WRITE_COPY
  • SCSIOP_WRITE_COPY_COMPARE
Les commandes du groupe suivant échoue car ils sont obsolètes :
  • IOCTL_ATA_PASS_THROUGH
  • IOCTL_ATA_PASS_THROUGH_DIRECT
  • IDE_COMMAND_WRITE
  • IDE_COMMAND_WRITE_DMA
  • IDE_COMMAND_WRITE_DMA_QUEUED
  • IDE_COMMAND_WRITE_MULTIPLE
  • IDE_COMMAND_WRITE_EXT
  • IDE_COMMAND_WRITE_DMA_EXT
  • IDE_COMMAND_WRITE_DMA_FUA_EXT
  • IDE_COMMAND_WRITE_DMA_QUEUED_EXT
  • IDE_COMMAND_WRITE_DMA_QUEUED_FUA_EXT
  • IDE_COMMAND_WRITE_MULTIPLE_EXT
  • IDE_COMMAND_WRITE_MULTIPLE_FUA_EXT
Pour les commandes SCSI, les commandes de l'écriture de 32 octets ne sont pas filtrés, car il n'y a uniquement 16 octets dans le CDB. N'a pas pu le xdwrite étendue, la copie et les commandes de comparaison de copie.

Pour les commandes ATA, le bit LBA est interrogé pour déterminer si l'offset a été spécifié au format CHS ou au format LBA. Dans la mesure où le système ne peut pas obtenir la géométrie réelle, toutes les demandes sont envoyées au format CHS sont a échoué. Cela ne doit pas être un problème car tous les disques modernes s'attendent que l'offset est au format d'adresse du bloc logique.

Problèmes de compatibilité de programme et atténuations

Les modifications apportées au système de fichiers et à la pile de stockage peuvent empêcher certains programmes échec. Ces programmes échouent parce qu'ils utilisent un accès direct au disque ou au volume.

L'effet sur la compatibilité de programme sera minime pour les raisons suivantes :
  • Programmes de sauvegarde doivent démonter le volume avant de les écrivent sur le volume. Dans le cas contraire, les écritures de programme va entrent en conflit avec les écritures de système de fichier. Ces collisions entraînera une corruption ou une instabilité du système.
  • Programmes de partitionnement ciblent tables de partition qui résident dans des secteurs situés en dehors des régions de volume. Systèmes de fichiers ne contrôlent pas ces secteurs. Étant donné que l'accès à ces secteurs est activé, les programmes de partitionnement ne sont pas affectés.
  • Récupération des programmes susceptible de s'exécute sur les volumes du système de fichiers ne peut pas monter. Étant donné que les accès aux volumes RAW est activé, ces programmes de récupération ne sont pas affectés.
  • Programmes de cryptage au niveau du bloc ont généralement un pilote de filtre qui réside dans la pile du disque qui se situe sous le pilote de Gestionnaire de partition. Le pilote de filtre des filtres d'entrée sortie (e/S) qui émet le pilote de Gestionnaire de partition. Par conséquent, les modifications apportées au système de fichiers et à la pile de stockage n'affectent pas les programmes de cryptage au niveau du bloc. Si le pilote de filtre se trouve dans la pile de volume, le pilote de filtre sera sous les systèmes de fichiers. Par conséquent, les modifications apportées au système de fichiers et à la pile de stockage n'affectent pas les programmes de cryptage au niveau du bloc.
  • Maîtrise des CD de programmes ne sont pas affectés car le système de fichiers UDFS et le système de fichiers FAT32 n'effectue pas les vérifications lorsque le système de fichiers est monté sur lecteurs optiques. Toutefois, les programmes de maîtrise des CD peuvent être affectées dans le scénario suivant :
    • Un programme verrouille son fichier.
    • Le programme interroge les extensions du fichier.
    • Le programme utilise un descripteur de volume pour écrire directement dans les extensions du fichier.
    Toutefois, nous n'encourageons ce scénario, car ce scénario peut provoquer les métadonnées de fichier être désynchronisés. Lorsque les métadonnées de fichier ne sont pas synchronisée, la corruption des fichiers peut se produire.

Propriétés

Numéro d'article: 942448 - Dernière mise à jour: jeudi 31 janvier 2008 - Version: 2.1
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Windows Vista Édition Intégrale
  • Windows Vista Entreprise
  • Windows Vista Professionnel
  • Windows Vista Édition Familiale Premium
  • Windows Vista Édition Familiale Basique
  • Windows Vista Starter
  • Windows Server 2008 Datacenter without Hyper-V
  • Windows Server 2008 Enterprise without Hyper-V
  • Windows Server 2008 for Itanium-Based Systems
  • Windows Server 2008 Standard without Hyper-V
  • Windows Server 2008 Datacenter
  • Windows Server 2008 Enterprise
  • Windows Server 2008 Standard
  • Windows Web Server 2008
Mots-clés : 
kbmt kbexpertiseadvanced kbhowto kbinfo KB942448 KbMtfr
Traduction automatique
IMPORTANT : Cet article est issu du système de traduction automatique mis au point par Microsoft (http://support.microsoft.com/gp/mtdetails). Un certain nombre d?articles obtenus par traduction automatique sont en effet mis à votre disposition en complément des articles traduits en langue française par des traducteurs professionnels. Cela vous permet d?avoir accès, dans votre propre langue, à l?ensemble des articles de la base de connaissances rédigés originellement en langue anglaise. Les articles traduits automatiquement ne sont pas toujours parfaits et peuvent comporter des erreurs de vocabulaire, de syntaxe ou de grammaire (probablement semblables aux erreurs que ferait une personne étrangère s?exprimant dans votre langue !). Néanmoins, mis à part ces imperfections, ces articles devraient suffire à vous orienter et à vous aider à résoudre votre problème. Microsoft s?efforce aussi continuellement de faire évoluer son système de traduction automatique.
La version anglaise de cet article est la suivante: 942448
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.

Envoyer des commentaires

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com