Déploiement sécurisé (Integration Services)

Comme dans chaque phase du cycle de vie d'un package Integration Services, vous pouvez améliorer la sécurité lorsque vous déployez des packages à partir d'ordinateurs de développement vers d'autres ordinateurs en implémentant les mesures suivantes :

  • Veillez à ouvrir et exécuter uniquement des packages provenant de sources approuvées.

    Pour ce qui est du déploiement des packages, cela consiste à identifier la source des packages en signant ces packages à l'aide de certificats numériques.

  • Veillez à ce que seuls les utilisateurs autorisés ouvrent et exécutent des packages.

    Pour ce qui est du déploiement des packages, cela signifie que vous devez utiliser les fonctionnalités de sécurité disponibles dans Integration Services, SQL Server et le système de fichiers pour atteindre les objectifs suivants :

    • protéger le contenu des packages en définissant le niveau de protection du package ;

    • contrôler l'accès aux packages et aux fichiers supplémentaires associés à ces packages en utilisant la sécurité du système de fichiers.

Identification de la source de packages à l'aide de signatures numériques

Vous pouvez signer un package à l'aide d'un certificat numérique qui identifie l'individu ou l'unité d'organisation qui a créé le package ou qui l'a modifié pour la dernière fois. Ensuite, les administrateurs peuvent spécifier des paramètres facultatifs dans le Registre ou dans la ligne de commande dtexec pour configurer Integration Services de façon à effectuer les tâches suivantes :

  • requérir une signature valide et approuvée pour le package ;

  • vérifier la signature lors de l'ouverture d'un package ;

  • signaler ou rejeter les packages non signés.

Pour plus d'informations sur les signatures numériques, consultez les rubriques suivantes :

Protéger le contenu de packages en définissant le niveau de protection

En définissant la propriété ProtectionLevel d'un package, vous pouvez chiffrer toutes les données sensibles que le package contient, telles que les mots de passe, ou tout le contenu du package. Par exemple, vous pouvez définir les niveaux de protection suivants :

  • Vous pouvez supprimer complètement les données sensibles en sélectionnant l'option DontSaveSensitive.

  • Vous pouvez faire en sorte que seuls les utilisateurs qui fournissent un mot de passe peuvent consulter les données sensibles en sélectionnant l'option EncryptSensitiveWithPassword.

  • Vous pouvez faire en sorte que seuls les utilisateurs qui fournissent un mot de passe peuvent charger et exécuter le package en sélectionnant l'option EncryptAllWithPassword.

  • Veillez à désactiver les options EncryptSensitiveWithUserKey et EncryptAllWithUserKey lorsque vous déployez un package sur d'autres ordinateurs. Pendant le développement, un développeur peut définir l'option EncryptSensitiveWithUserKey pour s'assurer d'être le seul à pouvoir consulter les données sensibles. De même, un développeur peut définir l'option EncryptAllWithUserKey pour s'assurer d'être le seul à pouvoir charger et exécuter le package. Toutefois, lorsque vous déployez un package sur d'autres ordinateurs, ces options empêchent tout utilisateur autre que le créateur du package de charger et d'exécuter le package. En outre, ces deux options vous empêcheront de planifier le package en utilisant l'Agent SQL Server.

Pendant le développement, un développeur peut utiliser un paramètre inférieur pour les niveaux de protection. Toutefois, lorsque vous déployez le package, la définition d'un niveau de protection plus élevé peut être appropriée.

Lorsque vous importez ou déployez des packages dans SQL Server, le niveau de protection ServerStorage devient disponible avec les rôles Integration Services. Pour plus d'informations sur ces rôles, consultez Utilisation des rôles Integration Services.

Pour plus d'informations, consultez Définition du niveau de protection des packages.

Contrôler l'accès aux packages déployés et aux fichiers créés ou utilisés par les packages

Lorsque vous déployez des packages, vous pouvez décider s'il convient de les stocker dans la base de données msdb dans SQL Server ou dans le système de fichiers.

  • Lorsque vous stockez des packages dans SQL Server. Vous pouvez utiliser les fonctionnalités de sécurité disponibles dans SQL Server et les rôles Integration Services fixes au niveau de la base de données pour contrôler l'accès aux packages stockés. Pour plus d'informations sur ces rôles, consultez Utilisation des rôles Integration Services.

  • Lorsque vous stockez des packages dans le système de fichiers. Vous pouvez utiliser les fonctionnalités de sécurité disponibles dans Microsoft Windows et les listes de contrôle d'accès (ACL) disponibles dans le système de fichiers pour contrôler l'accès aux packages stockés.

Lorsque vous déployez des packages, le déploiement peut inclure des fichiers supplémentaires tels que les fichiers de configuration. Ces fichiers peuvent également contenir des données sensibles. Pour plus d'informations sur la façon de contrôler l'accès à ces fichiers supplémentaires, consultez Contrôle de l'accès aux fichiers utilisés par des packages.

Icône Integration Services (petite) Rester à jour avec Integration Services

Pour obtenir les derniers téléchargements, articles, exemples et vidéos de Microsoft, ainsi que des solutions sélectionnées par la communauté, visitez la page Integration Services sur MSDN ou TechNet :

Pour recevoir une notification automatique de ces mises à jour, abonnez-vous aux flux RSS disponibles sur la page.