Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Cet article décrit FIPS 140-2 et explique comment utiliser SQL Server 2008 en mode compatible FIPS 140-2.
Version du produit d’origine : SQL Server
Numéro de la base de connaissances d’origine : 955720
Introduction
Cet article décrit les instructions fiPS (Federal Information Processing Standard) 140-2 et comment utiliser Microsoft SQL Server 2008 en mode conforme à FIPS 140-2.
Note
Les termes « Conformité FIPS 140-2 », « Conformité FIPS 140-2 » et « Mode conforme FIPS 140-2 » sont définis ici pour une utilisation et une clarté. Ces termes ne sont pas reconnus ou définis par le gouvernement. Les États-Unis et les gouvernements canadiens reconnaissent la validation des modules de chiffrement par rapport aux normes comme FIPS 140-2 et non l’utilisation de ces modules de manière spécifiée ou conforme. Dans cet article, nous définissons le « mode conforme FIPS 140-2 », « conformité FIPS 140-2 » et « mode conforme à FIPS 140-2 » pour signifier que SQL Server 2008 utilise uniquement les instances validées FIPS 140-2 d’algorithmes et de hachage dans toutes les instances dans lesquelles les données chiffrées ou hachées sont importées ou exportées vers SQL Server 2008. En outre, ces termes signifient que SQL Server 2008 gère les clés de manière sécurisée selon les besoins des modules de chiffrement validés par FIPS 140-2. Le processus de gestion des clés inclut également les fonctionnalités de génération de clés et de stockage de clés.
Qu’est-ce que FIPS ?
FIPS signifie les normes fédérales de traitement de l’information. La FIPS est des normes développées par deux organismes gouvernementaux. Il s’agit de l’Institut national des normes et de la technologie dans le États-Unis. L’autre est l’établissement de sécurité des communications au Canada. La FIPS est des normes qui sont recommandées ou autorisées à être utilisées dans les systèmes informatiques fédéraux (États-Unis ou canadiens) gérés par le gouvernement.
Qu’est-ce que FIPS 140-2
FIPS 140-2 est une instruction des « Exigences de sécurité pour les modules de chiffrement ». Il spécifie quels algorithmes de chiffrement et quels algorithmes de hachage peuvent être utilisés et comment les clés de chiffrement doivent être générées et gérées. Certains matériels, logiciels et processus peuvent être validés par un laboratoire de validation approuvé FIPS 140-2. Certains d’entre eux peuvent également être décrits comme conformes à FIPS 140-2, car le terme est défini dans cet article.
Quelle est la différence entre une application qui est « conforme à FIPS 140-2 » et une application « FIPS 140-2-validated »
Vous pouvez configurer SQL Server 2008 pour qu’il s’exécute en tant qu’application compatible FIPS 140-2. Pour ce faire, vous devez exécuter SQL Server 2008 sur un système d’exploitation qui utilise un fournisseur de services de chiffrement validé fiPS 140-2 ou qui fournit un module de chiffrement qui a été validé. La différence entre la conformité et la validation n’est pas subtile. Les algorithmes peuvent être validés. Sachez qu’il est insuffisant d’utiliser des algorithmes des listes approuvées dans FIPS 140-2. Vous devez utiliser des instances d’algorithmes qui ont été validés FIPS 140-2. La validation nécessite un test et une vérification par un laboratoire d’évaluation approuvé par le gouvernement. Windows Server 2008, Windows Server 2003 et Windows XP contiennent les modules de chiffrement approuvés, ainsi que les modules, y compris les instances spécifiques des algorithmes, ont été testés en laboratoire et validés par le gouvernement.
Quelles applications peuvent être conformes à FIPS 140-2
Toutes les applications qui effectuent le chiffrement ou le hachage et qui s’exécutent sur une version validée d’un fournisseur de services de chiffrement Windows peuvent être conformes s’ils utilisent uniquement les instances validées des algorithmes approuvés. Ces applications doivent également se conformer aux exigences de génération de clés et de gestion des clés à l’aide d’une fonction de clé Windows ou en répondant aux exigences de génération et de gestion des clés dans l’application. En outre, dans certains cas, les algorithmes non conformes ou les processus sont autorisés dans une application compatible FIPS 140-2. Par exemple, les données peuvent être chiffrées à l’aide d’un algorithme non conforme si, dans ce formulaire chiffré, les données restent dans l’application, autrement dit, les données ne sont pas exportées dans ce formulaire, ou si les données sont chiffrées (encapsulées) à l’aide d’un algorithme conforme FIPS.
Cela signifie que SQL Server 2008 est toujours conforme à FIPS 140-2
Non. Cela signifie que SQL Server 2008 peut être configuré pour s’exécuter en mode compatible FIPS 140-2.
Comment configurer SQL Server 2008 pour utiliser un module de chiffrement validé FIPS 140-2
Système d'exploitation requis
Vous devez installer SQL Server 2008 sur un ordinateur Windows Server 2008, un ordinateur Windows Vista, un ordinateur Windows Server 2003 ou un ordinateur Windows XP.
Configuration requise pour l’administration système Windows
Vous devez activer le mode FIPS avant de démarrer SQL Server 2008. Cela est dû au fait que SQL Server 2008 lit le paramètre FIPS au démarrage. Pour activer FIPS, procédez comme suit.
Pour Windows Server 2008 et Windows Vista
- Utilisez les informations d’identification d’administration pour vous connecter à l’ordinateur.
- Si vous utilisez Windows Server 2008, cliquez sur Démarrer, sur Exécuter, tapez gpedit.msc, puis appuyez sur Entrée. L’Éditeur de stratégie de groupe local s’ouvre. Si vous utilisez un ordinateur Windows Vista, cliquez sur Démarrer, tapez gpedit.msc dans la zone Démarrer la recherche , puis appuyez sur Entrée.
- Dans l’Éditeur de stratégie de groupe local, double-cliquez sur Paramètres Windows sous le nœud Configuration de l’ordinateur, puis double-cliquez sur Paramètres de sécurité.
- Sous le nœud Paramètres de sécurité, double-cliquez sur Stratégies locales, puis sur Options de sécurité.
- Dans le volet d’informations, double-cliquez sur Chiffrement système : utilisez des algorithmes conformes à FIPS pour le chiffrement, le hachage et la signature.
- Dans le chiffrement système : utilisez des algorithmes compatibles FIPS pour le chiffrement, le hachage et la boîte de dialogue de signature, cliquez sur Activé, puis cliquez sur OK pour fermer la boîte de dialogue.
- Fermez l’Éditeur de stratégie de groupe local.
Pour Windows Server 2003 et Windows XP
- Utilisez les informations d’identification d’administration pour vous connecter à l’ordinateur.
- Cliquez sur Démarrer, sur Exécuter, tapez gpedit.msc, puis appuyez sur Entrée.
- Dans la fenêtre Stratégie de groupe, double-cliquez sur Paramètres Windows sous le nœud Configuration de l’ordinateur, puis double-cliquez sur Paramètres de sécurité.
- Sous le nœud Paramètres de sécurité, double-cliquez sur Stratégies locales, puis sur Options de sécurité.
- Dans le volet d’informations, double-cliquez sur Chiffrement système : utilisez des algorithmes conformes à FIPS pour le chiffrement, le hachage et la signature.
- Dans le chiffrement système : utilisez des algorithmes compatibles FIPS pour le chiffrement, le hachage et la boîte de dialogue de signature, cliquez sur Activé, puis cliquez sur OK pour fermer la boîte de dialogue.
- Fermez la fenêtre stratégie de groupe.
Notes d’administrateur SQL Server 2008
Lorsque le service SQL Server 2008 détecte que le mode FIPS est activé au démarrage, SQL Server 2008 enregistre le message suivant dans le journal des erreurs SQL Server :
Le transport Service Broker s’exécute en mode de conformité FIPS
En outre, le message suivant peut être enregistré dans le journal des applications :
Le transport de mise en miroir de bases de données s’exécute en mode de conformité FIPS
Pour vérifier que le serveur s’exécute en mode FIPS, recherchez ces messages.
Pour obtenir la sécurité des dialogues entre les services, le processus de chiffrement utilise l’instance certifiée FIPS de l’AES (Advanced Encryption Standard) si le mode FIPS est activé. Si le mode FIPS est désactivé, le processus de chiffrement utilise RC4.
Lorsque vous configurez un point de terminaison Service Broker en mode FIPS, vous devez spécifier AES pour Service Broker. Si le point de terminaison est configuré sur RC4, SQL Server génère une erreur. Par conséquent, la couche de transport ne démarre pas.
Fonctionnement de SQL Server 2008 en mode conforme FIPS 140-2
Si le mode FIPS dans Windows est activé et si l’utilisateur n’a pas le choix entre chiffrer ou hacher des données et la façon dont elles seront effectuées, SQL Server 2008 fonctionne en mode compatible FIPS 140-2. SQL Server 2008 utilise cryptoAPI et utilise uniquement les instances validées des algorithmes.
Si le mode FIPS est activé et si l’utilisateur a le choix entre utiliser le chiffrement, SQL Server 2008 autorise uniquement le chiffrement conforme à FIPS 140-2 ou n’autorise aucun chiffrement.
Informations importantes pour les développeurs
Si vous écrivez votre propre code pour le chiffrement ou le hachage, vous devez utiliser uniquement CryptoAPI. Vous devez spécifier uniquement les algorithmes autorisés par FIPS 140-2. Plus précisément, utilisez uniquement la norme Triple Data Encryption Standard (3DES) ou AES pour le chiffrement et uniquement SHA-1 pour le hachage. Vous pouvez utiliser les mots clés suivants dans SQL Server 2008 pour les algorithmes validés FIPS 140-2 respectifs :
- DESX(Triple DES trois clés)
- Triple-DES(TRIPLE DES À DEUX CLÉS)
- TRIPLE_DES_3KEY(Triple DES trois clés)
- TRIPLE_DES_2KEY(DES triple à deux clés)
Note
La sélection de DESX ne fournit pas d’algorithme DESX dans SQL Server 2005 ou dans SQL Server 2008. Dans les deux cas, la sélection de DESX fournit une instance validée du triple DES trois clés.
Informations importantes pour les développeurs
SQL Server 2008 prend en charge une fonctionnalité de gestion des clés d’entreprise (EKM) qui permet la gestion des clés de chiffrement sur un module de stockage matériel tiers distinct (HSM). Pour fonctionner en mode conforme FIPS 140-2 et pour utiliser EKM, l’une des deux conditions suivantes doit être vraie :
- Le module de chiffrement externe doit être validé FIPS 140-2.
- Certains algorithmes utilisés par le module de chiffrement doivent être validés FIPS 140-2. Utilisez uniquement ces instances d’algorithmes validés lorsque le chiffrement ou le déchiffrement basé sur FIPS 140-2 est requis pour l’importation ou l’exportation de données vers ou depuis SQL Server.
En outre, les données qui seront chiffrées ou déchiffrées par le module de chiffrement externe doivent être transmises sous forme chiffrée à l’aide d’une instance validée par FIPS 140-2.
Quel est l’effet de l’exécution de SQL Server 2008 en mode compatible FIPS 140-2
L’utilisation d’un chiffrement plus fort peut avoir un faible effet sur les performances de ces processus où le chiffrement moins fort est autorisé lorsque le processus ne fonctionne pas comme conforme à FIPS 140-2.
La sélection du chiffrement pour SSIS (UseEncryption=True) génère un message d’erreur indiquant que le chiffrement disponible n’est pas compatible avec la conformité FIPS et n’est pas autorisé. En d’autres termes, aucun chiffrement du processus de message n’est effectué.
L’utilisation du chiffrement avec DTS (Data Transformation Services) hérité n’est pas conforme à FIPS 140-2. Pour DTS, le mode FIPS dans Windows n’est pas activé. Pour rester conforme, vous ne devez pas sélectionner le chiffrement.
La plupart des processus de chiffrement et de hachage SQL Server 2008 utilisent déjà un module de chiffrement validé fiPS 140-2. Par conséquent, si vous exécutez une application en mode compatible FIPS 140-2 lorsque le mode FIPS est activé dans Windows, il n’y a pas ou peu d’effet sur l’utilisation ou les performances de l’application.
Exclusion de responsabilité tierce
Exclusion de responsabilité de tiers
Les produits tiers mentionnés dans le présent article sont fabriqués par des sociétés indépendantes de Microsoft. Microsoft exclut toute garantie, implicite ou autre, concernant les performances ou la fiabilité de ces produits.