Comment utiliser l’utilitaire dtutil (Dtutil.exe) pour définir le niveau de protection d’un lot de packages SQL Server Integration Services (SSIS) dans SQL Server 2005


INTRODUCTION


Microsoft SQL Server 2005 Integration Services (SSIS) implémente la sécurité sur l’ordinateur client et sur l’ordinateur serveur lorsque vous déployez des packages SSIS. Vous pouvez chiffrer les packages pour préserver la confidentialité des valeurs de propriété des packages en définissant le niveau de protection des packages. Les packages incluent la propriété ProtectionLevel . Vous pouvez définir la propriété ProtectionLevel en fonction du niveau de protection requis par un package. Par exemple, dans un environnement de développement d’équipe, un package peut être chiffré à l’aide d’un mot de passe qui est connu pour les membres de l’équipe qui travaillent sur le package. Vous pouvez facilement définir un mot de passe à l’aide de SQL Server Business Intelligence Development Studio ou en utilisant l’utilitaire dtutil (dtutil. exe) pour un seul package. Toutefois, si vous devez gérer de nombreux packages, la meilleure méthode consiste à utiliser l’utilitaire dtutil pour définir le niveau de protection d’un lot de packages SSIS. En règle générale, vous pouvez placer une liste de commandes individuelles pour chaque package dans un fichier. bat ou dans un fichier. cmd, puis exécuter le fichier. Si les packages sont stockés dans le même dossier, vous pouvez utiliser des commandes courtes pour en boucler le lot de packages dans ce dossier.

Informations supplémentaires


Prenons l’exemple du scénario suivant :
  • Vous déployez des packages SSIS ayant le niveau de protection par défaut.
  • Vous devez envoyer les packages en utilisant un mot de passe pour tous les membres d’une équipe connaissant le mot de passe.
Dans ce scénario, vous pouvez utiliser la commande suivante pour définir le niveau de protection de ces packages à l’aide de l’utilitaire dtutil.
for %%f IN (*.dtsx) DO dtutil.exe /File %%f /encrypt file;%%f;3;<promissory password>
Remarques
  • Vous n’avez pas à déchiffrer les packages qui ont le niveau de protection par défaut, car le niveau de protection par défaut des packages SSIS est la valeur EncryptAllWithUserKey . Le niveau de protection par défaut chiffre les packages à l’aide d’une clé basée sur le profil utilisateur.
  • Ajoutez le commutateur /q pour éviter les invites supplémentaires.
  • Si vous tapez la commande suivante à l’invite de commandes, utilisez un pourcentage (%) symboli. Si vous utilisez cette commande au sein d’un fichier de commandes MS-DOS, utilisez deux pourcentages (%%) codes.
  • Dans cette commande, <mot de passe> du mot de passe est un espace réservé au mot de passe.
  • Cette commande exécute réellement une boucle pour la commande suivante.
    dtutil.exe /File %%f /encrypt file;%%f;3;<promissory password>
    Le niveau de protection est défini comme un paramètre dans la commande. Dans cet exemple, le niveau de protection a la valeur 3 avant le mot de passe. Utilisez l’un des niveaux de protection décrits dans le tableau ci-dessous en fonction de vos besoins.
NiveauDescription
0Répartition des informations sensibles.
1Les informations sensibles sont chiffrées à l’aide des informations d’identification de l’utilisateur local.
deuxièmeLes informations sensibles sont chiffrées en utilisant le mot de passe requis.
3DLe package est chiffré à l’aide du mot de passe requis.
n°4Le package est chiffré à l’aide des informations d’identification de l’utilisateur local.
n°5Le package utilise le chiffrement de stockage SQL Server.
Pour plus d’informations, tapez la commande suivante à l’invite de commandes :
dtutil/ ? Chiffrer
Lorsque les autres membres de l’équipe reçoivent ces packages, les membres de l’équipe peuvent être amenés à changer le mot de passe en un mot de passe que seuls les membres de l’équipe connaissent ou changent le niveau de protection. Les membres de l’équipe peuvent utiliser la commande suivante pour modifier le mot de passe de ces packages à l’aide de l’utilitaire dtutil.
for %%f IN (*.dtsx) DO dtutil.exe /File %%f /Decrypt <promissory password> /encrypt file;%%f;3;<new password>

Références


Pour plus d’informations sur l’utilisation de l’utilitaire dtutil pour définir le niveau de protection des packages SSIS, voir les rubriques suivantes dans les ouvrages en ligne SQL Server 2005 :
  • Définir le niveau de protection des packages
  • Considérations en matière de sécurité pour Integration Services
  • Niveau de protection de package
  • utilitaire dtutil