Conservation des listes de contrôle d’accès, des attributs et des horodatages de fichiers avec Azure Data Box

Azure Data Box vous permet de conserver les listes de contrôle d’accès (ACL, access-control list), les horodatages et les attributs de fichier lors de l’envoi de données à Azure. Cet article décrit les métadonnées que vous pouvez transférer lors de la copie de données vers Data Box via le protocole SMB (Server Message Block) pour les charger sur Azure Files.

Métadonnées transférées

Les listes de contrôle d’accès, les timestamps et les attributs de fichiers sont les métadonnées transférées lorsque les données de Data Box sont chargées dans Azure Files. Dans cet article, les listes de contrôle d’accès, les timestamps et les attributs de fichiers sont désignés collectivement sous le nom de métadonnées.

Les métadonnées peuvent être copiées avec les outils de copie de données Windows et Linux. Les métadonnées ne sont pas conservées lors du transfert de données vers Stockage Blob. Les métadonnées ne sont pas transférées lors de la copie de données sur NFS.

Les sections suivantes de l’article décrivent en détail comment les timestamps, les attributs de fichiers et les listes de contrôle d’accès sont transférés lorsque les données de Data Box sont chargées dans Azure Files.

Horodatages

Les horodatages suivants sont transférés :

  • CreationTime
  • LastWriteTime

L’horodatage suivant n’est pas transféré :

  • LastAccessTime

Attributs de fichier

Sauf indication contraire, les attributs de fichier des fichiers et des répertoires sont transférés.

Les attributs de fichier suivants sont transférés :

  • FILE_ATTRIBUTE_READONLY (fichier uniquement)
  • FILE_ATTRIBUTE_HIDDEN
  • FILE_ATTRIBUTE_SYSTEM
  • FILE_ATTRIBUTE_DIRECTORY (répertoire uniquement)
  • FILE_ATTRIBUTE_ARCHIVE
  • FILE_ATTRIBUTE_TEMPORARY (fichier uniquement)
  • FILE_ATTRIBUTE_NO_SCRUB_DATA

Les attributs de fichier suivants ne sont pas transférés :

  • FILE_ATTRIBUTE_OFFLINE
  • FILE_ATTRIBUTE_NOT_CONTENT_INDEXED

Les attributs de lecture seule sur les répertoires ne sont pas transférés.

Autres flux de données et attributs étendus

Les autres flux de données et attributs étendus ne sont pas pris en charge dans le stockage Azure Files, d’objets blob de pages ou d’objets blob de blocs. Ils ne sont donc pas transférés lors de la copie des données.

listes de contrôle d'accès

Selon la méthode de transfert utilisée et si vous utilisez un client Windows ou Linux, certaines ou toutes les listes de contrôle d’accès (ACL) discrétionnaires et par défaut des fichiers et dossiers peuvent être transférées pendant la copie des données vers Azure Files.

Le transfert des ACL est activé par défaut. Vous pouvez désactiver ce paramètre dans l’interface utilisateur web locale de Data Box. Pour plus d’informations, consultez Utiliser l’interface utilisateur web locale pour administrer vos instances Data Box et Data Box Heavy.

Remarque

Les fichiers dont les ACL contiennent des chaînes d’entrée de contrôle d’accès conditionnel (ACE) ne sont pas copiés. Il s'agit d'un problème connu. Pour le contourner, copiez ces fichiers dans le partage Azure Files manuellement en montant le partage, puis en utilisant un outil de copie qui prend en charge la copie des ACL.

Transfert des ACL sur SMB

Lors d’untransfert de fichiers SMB, les ACL suivantes sont transférées :

  • Listes de contrôle d’accès discrétionnaire (DACL) et listes de contrôle d’accès système (SACL) pour les répertoires et les fichiers que vous copiez dans votre Data Box.
  • Si vous utilisez un client Linux, seules les ACL Windows NT sont transférées.

Transfert de listes de contrôle d’accès via le service de copie de données

Lors d’un transfert de fichiers de service de copie de données, les listes de contrôle d’accès suivantes sont transférées :

  • Listes de contrôle d’accès discrétionnaire (DACL) et listes de contrôle d’accès système (SACL) pour les répertoires et les fichiers que vous copiez dans votre Data Box.

Pour copier des listes SACL à partir de vos fichiers, vous devez fournir des informations d’identification à un utilisateur avec SeBackupPrivilege. Les utilisateurs des groupes Administrateurs ou Opérateurs de sauvegarde disposent de ce privilège par défaut

Si vous ne disposez pas de SeBackupPrivilege :

  • Vous ne pourrez pas copier de listes SACL pour les travaux de service de copie Azure Files.
  • Vous pouvez rencontrer des problèmes d’accès et recevoir cette erreur dans le journal des erreurs : Impossible de lire les listes SACL du partage en raison de privilèges insuffisants.

Pour plus d’informations, apprenez-en plus sur SeBackupPrivilege.

Transfert des ACL sur NFS

Les listes ACL (et les attributs des métadonnées) ne sont pas transférées quand vous copiez des données sur NFS.

Transfert des ACL par défaut

Même si votre outil de copie des données ne copie pas les ACL, les ACL par défaut des répertoires et des fichiers sont transférées vers Azure Files lorsque vous utilisez un client Windows. Les ACL par défaut ne sont pas transférées lorsque vous utilisez un client Linux.

Les ACL par défaut suivantes sont transférées :

  • Autorisations du compte :

    • Compte Administrateur intégré
    • Compte SYSTÈME
    • Compte d’utilisateur partagé au sein d’une PME utilisé pour monter et copier des données dans le Data Box
  • Descripteurs de sécurité avec les propriétés suivantes : DACL, Propriétaire, Groupe, SACL

Copie de données et de métadonnées

Pour transférer les ACL, les horodatages et les attributs de vos données, utilisez les procédures suivantes pour copier des données dans Data Box.

Outil de copie de données Windows

Pour copier des données dans Data Box via SMB, utilisez un outil de copie de fichiers SMB, tel que robocopy. L’exemple de commande suivant copie tous les fichiers et répertoires, en transférant les métadonnées avec les données.

Lorsque vous utilisez l’option /copyall ou /dcopy:DAT, assurez-vous que les privilèges requis d’opérateur de sauvegarde ne sont pas désactivés. Pour plus d’informations, consultez Utiliser l’interface utilisateur web locale pour administrer vos instances Data Box et Data Box Heavy.

robocopy <Source> <Target> * /copyall /e /dcopy:DAT /B /r:3 /w:60 /is /nfl /ndl /np /MT:32 or 64 /fft /log+:<LogFile>

where

Option Description
/copyall Copie tous les attributs.
/e Copie les sous-répertoires, y compris les répertoires vides.
/dcopy:DAT Copie les données, les attributs et les horodatages. Remarque : l’option /dcopy :DAT doit être utilisée pour effectuer un transfert CreationTime sur des répertoires.
/B Copie les fichiers en mode de sauvegarde.
/r:3 Spécifie trois nouvelles tentatives en cas d’échec de la copie.
/w:60 Spécifie un temps d’attente de 60 secondes entre les nouvelles tentatives.
/is Inclut les mêmes fichiers.
/nfl Ne consigne pas les noms de fichiers.
/ndl Ne consigne pas les noms de répertoire.
/np N’affiche pas la progression de l’opération de copie.
/MT:32 or 64 Utilise le multithreading, avec 32 ou 64 threads.
/fft Réduit la granularité de l’horodatage pour n’importe quel système de fichiers.
/log+:<LogFile> Ajoute la sortie au fichier journal existant.

Pour plus d’informations sur ces paramètres robocopy, consultez Didacticiel : Copier des données sur Azure Data Box Disk par le biais de SMB

Remarque

Si vous utilisez /copyall pour copier vos données, les listes de contrôle d’accès sources des répertoires et des fichiers sont transférées vers Azure Files. Si vous disposez uniquement d’un accès en lecture à vos données sources et n’avez pas pu modifier les données sources, vous ne disposerez d’un accès en lecture que sur les données dans la Data Box. Utilisez /copyall uniquement si vous envisagez de copier toutes les listes de contrôle d’accès des répertoires et des fichiers avec les données.

Utilisez la commande robocopy pour répertorier, copier et modifier des fichiers sur Data Box

Voici quelques-uns des scénarios courants que vous utilisez lors de la copie de données à l’aide robocopyde .

  • Copier uniquement les données vers Data Box, pas les listes de contrôle d’accès des répertoires et des fichiers

    Utilisez l’option /dcopy:DAT pour copier uniquement les données, les attributs et les horodateurs. Les listes de contrôle d’accès sur les répertoires et les fichiers ne sont pas copiées.

  • Copier les données et les listes de contrôle d’accès des répertoires et des fichiers vers Data Box

    Utilisez /copyall pour copier toutes les données sources, y compris les listes de contrôle d’accès des répertoires et des fichiers.

  • Répertorier le système de fichiers sur Data Box à l’aide de la commande robocopy

    Pour répertorier le contenu du répertoire, utilisez la commande suivante :

    robocopy <source-dir> NULL /l /s /xx /njh /njs /fp /B

    Notez que l’Explorateur de fichiers ne vous autorise pas à répertorier ces fichiers.

  • Copier ou supprimer des dossiers et des fichiers sur Data Box

    Pour copier un seul fichier, utilisez la commande suivante :

    robocopy <source-dir> <destination-dir> <file-name> /B

    Pour supprimer un seul fichier, utilisez la commande suivante :

    robocopy <source-dir> <destination-dir> <file-name> /purge /B

    Dans la commande ci-dessus, <source-dir> ne doit pas contenir le fichier : <file-name> . Ensuite, la commande ci-dessus synchronise la destination avec la source, ce qui entraîne la suppression du fichier de la destination.

    Notez que l’Explorateur de fichiers peut ne pas vous autoriser à effectuer les opérations ci-dessus.

Pour plus d’informations, consultez Utilisation des commandes robocopy.

Outils de copie de données Linux

Le transfert de métadonnées sous Linux est un processus en deux étapes. Tout d’abord, vous copiez les données sources à l’aide d’un outil tel que rsync, qui ne copie pas les métadonnées. Après avoir copié les données, vous pouvez copier les métadonnées à l’aide d’un outil tel que smbcacls ou cifsacl.

Les exemples de commandes suivants effectuent la première étape, en copiant les données à l’aide de rsync.

cp -aR /etc /opt/ 
rsync -avP /etc /opt (-a copies a directory)

Étapes suivantes