Meilleures pratiques pour sécuriser l’adaptateur SQL
Meilleures pratiques que vous devez suivre pour protéger plus complètement les données sensibles lorsque vous utilisez ou développez des applications qui utilisent l’adaptateur Microsoft BizTalk pour SQL Server.
Meilleures pratiques de sécurité pour la connexion entre l’adaptateur SQL et la base de données SQL Server
L’adaptateur SQL ne prend pas en charge la sécurisation de la communication entre elle et la base de données SQL Server. Vous devez fournir un mécanisme pour garantir un niveau de sécurité adéquat pour les données échangées entre l’adaptateur et la base de données SQL Server.
Pour des raisons de sécurité, l’adaptateur SQL ne vous permet pas de fournir des informations d’identification de mot de passe de nom d’utilisateur pour la base de données SQL Server dans l’URI de connexion. Consultez le reste de cette rubrique pour connaître les autres méthodes permettant de fournir des informations d’identification à l’adaptateur SQL.
L’adaptateur SQL vous permet également d’utiliser l’authentification Windows lors de la connexion à SQL Server pour générer des métadonnées et effectuer des opérations, via Visual Studio ou BizTalk Server. Avant d’utiliser l’authentification Windows, vous devez ajouter l’utilisateur Windows en tant qu’utilisateur dans SQL Server Management Studio. Pour plus d’informations, consultez Se connecter à SQL Server à l’aide de l’authentification Windows avec l’adaptateur SQL.
Pour plus d’informations, consultez Sécurité entre le SQL Server et l’adaptateur.
Meilleures pratiques de sécurité pour l’utilisation de l’adaptateur SQL avec BizTalk Server
L’adaptateur SQL ne vous permet pas de fournir des informations d’identification de mot de passe de nom d’utilisateur pour la base de données SQL Server dans l’URI de connexion.
Lorsque vous utilisez le complément Consommer le service d’adaptateur, entrez les informations d’identification du mot de passe du nom d’utilisateur pour la base de données SQL Server sous l’onglet Sécurité de la boîte de dialogue Configurer l’adaptateur.
Lorsque vous configurez l’adaptateur de WCF-Custom BizTalk pour l’adaptateur SQL sur un port d’envoi, entrez les informations d’identification du mot de passe de nom d’utilisateur pour la base de données SQL Server sous l’onglet Informations d’identification de la boîte de dialogue Propriétés de transport WCF-Custom.
Lorsque vous configurez l’adaptateur de WCF-Custom BizTalk pour l’adaptateur SQL sur un emplacement de réception, entrez les informations d’identification du mot de passe de nom d’utilisateur pour la base de données SQL Server à partir de l’onglet Autres de la boîte de dialogue Propriétés de transport WCF-Custom.
Lors de l’utilisation du complément Consume Adapter Service pour générer des métadonnées, de la configuration du port d’envoi ou de la configuration du port de réception, vous pouvez également utiliser l’authentification Windows. Avant d’utiliser l’authentification Windows, vous devez ajouter l’utilisateur Windows en tant qu’utilisateur dans SQL Server Management Studio. Pour plus d’informations, consultez Se connecter à SQL Server à l’aide de l’authentification Windows avec l’adaptateur SQL.
Pour plus d’informations, consultez Sécurité avec l’adaptateur SQL et BizTalk Server.
Meilleures pratiques de sécurité pour l’utilisation de l’adaptateur SQL avec des solutions de programmation
Il est parfois nécessaire de fournir les informations d’identification du mot de passe du nom d’utilisateur pour la base de données SQL Server dans l’URI de connexion. Toutefois, si possible, vous devez éviter de le faire.
Lorsque vous utilisez le plug-in Visual Studio Add Adapter Service Reference, entrez les informations d’identification du mot de passe de nom d’utilisateur pour la base de données SQL Server sous l’onglet Sécurité de la boîte de dialogue Configurer l’adaptateur.
Dans la programmation du modèle de canal WCF, utilisez la propriété Credentials sur la fabrique de canal pour définir les informations d’identification du mot de passe de nom d’utilisateur pour la base de données SQL Server.
Dans la programmation du modèle de service WCF, utilisez la propriété ClientCredentials sur le client WCF pour définir les informations d’identification du mot de passe du nom d’utilisateur pour la base de données SQL Server.
Si une application qui consomme l’adaptateur SQL envoie des messages contenant des informations de base de données sensibles à un autre service ou client à un autre service ou client, assurez-vous que ces messages disposent de mesures de sécurité suffisantes pour fournir une protection des données adéquate dans votre environnement.
Lors de l’utilisation du plug-in Add Adapter Service Reference ou de la connexion à SQL Server à partir d’une application .NET, vous pouvez également utiliser l’authentification Windows. Avant d’utiliser l’authentification Windows, vous devez ajouter l’utilisateur Windows en tant qu’utilisateur dans SQL Server Management Studio. Pour plus d’informations, consultez Se connecter à SQL Server à l’aide de l’authentification Windows avec l’adaptateur SQL.
Pour plus d’informations, consultez Programmation sécurisée avec l’adaptateur SQL.
Meilleures pratiques de sécurité pour l’hébergement de l’adaptateur SQL dans IIS
L’hébergement de l’adaptateur SQL dans Microsoft Internet Information Services (IIS) en tant que service Web expose les opérations exposées par l’adaptateur SQL aux clients Web. Ces opérations peuvent impliquer l’échange de données sensibles sur Internet. Vous devez donc prendre des mesures pour vous assurer que ces données sont aussi sécurisées que possible.
WCF fournit deux liaisons standard pour le transport HTTP : BasicHttpBinding fournit un transport HTTP de base sans mécanisme de sécurité ; WSHttpBinding prend en charge les mécanismes de sécurité au niveau du transport et au niveau du message.
Vous pouvez utiliser basicHttpBinding via une connexion HTTPS ou utiliser WSHttpBinding pour protéger vos données. Le Kit de développement logiciel (SDK) de l’adaptateur LOB WCF inclut l’Assistant Développement du service d’adaptateur métier WCF pour générer le service WCF pour les artefacts métier. Cet Assistant prend uniquement en charge l’utilisation de BasicHttpBinding.
Vous pouvez également développer une liaison HTTP personnalisée pour tirer parti des mécanismes de sécurité supplémentaires fournis par votre environnement. Pour plus d’informations sur les fonctionnalités de sécurité fournies par WCF, consultez Sécurisation des services et des clients.
Lors de l’hébergement de l’adaptateur SQL en tant que service Web, les développeurs web doivent prendre des mesures pour empêcher les chaînes tapées par les utilisateurs d’être transmises directement à la base de données SQL Server. Par exemple, si un site Web permet à l’utilisateur d’entrer une valeur qui fera partie d’une clause WHERE dans une instruction SELECT, la chaîne d’entrée doit être analysée pour empêcher l’ajout d’autres commandes à l’instruction.
Meilleures pratiques de sécurité pour le suivi des diagnostics WCF et la journalisation des messages
WCF prend en charge le suivi des diagnostics et la journalisation des messages. Vous configurez le suivi des diagnostics et la journalisation des messages par le biais de fichiers de configuration ou à l’aide de Windows Management Instrumentation (WMI). Selon les options de configuration que vous définissez, le suivi des diagnostics WCF ou la journalisation des messages peuvent émettre des informations sensibles aux fichiers journaux, où elles peuvent être exposées à l’observation par des utilisateurs non autorisés.
Suivez les recommandations fournies dans la documentation WCF pour atténuer les menaces de sécurité potentielles exposées en activant ces fonctionnalités. Au minimum, vous devez observer les meilleures pratiques suivantes pour le suivi des diagnostics et la journalisation des messages :
N’activez pas le suivi « détaillé » ou « information » dans un environnement de production. Cela peut entraîner une dégradation des performances. Toutefois, vous devez activer le suivi « avertissement » et « erreur » dans un environnement de production. Si vous activez le suivi, vous devez prendre les mesures de sécurité appropriées pour protéger vos données. Pour plus d’informations, consultez la documentation WCF.
Vérifiez que les fichiers journaux et les fichiers de configuration sont protégés par des listes de contrôle d’accès (ACL).
Les avertissements suivants s’appliquent spécifiquement aux messages échangés entre une application cliente et l’adaptateur SQL :
Le suivi de diagnostic WCF peut enregistrer l’en-tête (mais pas le corps) des messages échangés avec l’adaptateur SQL. Étant donné que l’action de message se trouve dans l’en-tête du message, cela révèle les opérations appelées sur l’adaptateur SQL par le client.
Si la journalisation des messages WCF est activée et
logMessagesAtServiceLevel
a la valeurtrue
, l’en-tête de message (mais pas le corps du message) des messages échangés entre le client de l’adaptateur et l’adaptateur SQL est journalisé. Étant donné que l’action de message se trouve dans l’en-tête du message, cela révèle les opérations que le client a appelées sur l’adaptateur SQL. SilogEntireMessage
a égalementtrue
la valeur , le corps du message est journalisé. Cela peut révéler des informations de base de données sensibles.Pour plus d’informations sur l’amélioration de la sécurité lorsque vous activez le suivi de diagnostic, consultez Problèmes de sécurité et Conseils utiles pour le suivi. Pour plus d’informations sur l’amélioration de la sécurité lorsque vous activez la journalisation des messages, consultez Problèmes de sécurité pour la journalisation des messages.