Provisionner des clés Always Encrypted avec SQL Server Management Studio
S’applique à : SQL Server Base de données Azure SQL Azure SQL Managed Instance
Cet article fournit les étapes nécessaires pour provisionner des clés principales de colonne et des clés de chiffrement de colonne Always Encrypted avec SQL Server Management Studio (SSMS). Assurez-vous d’installer la dernière version à disponibilité générale (GA) de SSMS lors de l’approvisionnement des clés de chiffrement.
Pour obtenir une vue d’ensemble de la gestion des clés Always Encrypted, notamment des recommandations sur les bonnes pratiques et des considérations importantes sur la sécurité, consultez Vue d’ensemble de la gestion des clés pour Always Encrypted.
Provisionner des clés principales de colonne avec la boîte de dialogue Nouvelle clé principale de colonne
La boîte de dialogue Nouvelle clé principale de colonne vous permet de générer une clé principale de colonne ou de choisir une clé existante dans un magasin de clés, puis de créer des métadonnées de clé principale de colonne pour la clé créée ou sélectionnée dans la base de données.
À l’aide de l’Explorateur d’objets, accédez au nœud Sécurité -> Clés Always Encrypted sous votre base de données.
Cliquez avec le bouton droit sur le nœud Clés principales de colonne et sélectionnez Nouvelle clé principale de colonne....
Dans la boîte de dialogue Nouvelle clé principale de colonne , entrez le nom de l’objet de métadonnées de clé principale de colonne.
Sélectionnez un magasin de clés :
Magasin de certificats - Utilisateur actuel : indique l’emplacement du magasin de certificats de l’utilisateur actuel dans le magasin de certificats Windows, qui est votre magasin personnel.
Magasin de certificats - Ordinateur local : indique l’emplacement du magasin de certificats de l’ordinateur local dans le magasin de certificats Windows.
Azure Key Vault : vous devez vous connecter à Azure (cliquez sur Se connecter). Une fois que vous vous êtes connecté, vous pouvez choisir l’un de vos abonnements Azure et un coffre de clés ou un HSM managé (nécessite SSMS 18.9 ou une version ultérieure).
Remarque
L’utilisation de clés principales de colonne stockées dans un HSM managé dans Azure Key Vault nécessite SSMS 18.9 ou une version ultérieure.
Fournisseur du magasin de clés (KSP) : indique un magasin de clés accessible via un fournisseur du magasin de clés (KSP) qui implémente l’API de chiffrement nouvelle génération (CNG). En règle générale, ce type de magasin est un module de sécurité matériel. Après avoir sélectionné cette option, vous devez choisir un fournisseur KSP. Lefournisseur de stockage de clés des logiciels Microsoft est sélectionné par défaut. Si vous souhaitez utiliser une clé principale de colonne stockée dans un module de sécurité matériel, sélectionnez un fournisseur KSP pour votre appareil (il doit être installé et configuré sur l’ordinateur avant d’ouvrir la boîte de dialogue).
Fournisseur de services de chiffrement (CSP) : un magasin de clés accessible via un fournisseur de services de chiffrement (CSP) qui implémente l’API de chiffrement (CAPI). En règle générale, un tel magasin est un module de sécurité matériel. Après avoir sélectionné cette option, vous devez choisir un fournisseur CSP. Si vous souhaitez utiliser une clé principale de colonne stockée dans un module de sécurité matériel, sélectionnez un fournisseur CSP pour votre appareil (il doit être installé et configuré sur l’ordinateur avant d’ouvrir la boîte de dialogue).
Remarque
CAPI étant une API déconseillée, l’option Fournisseur de services de chiffrement (CAPI) est désactivée par défaut. Vous pouvez l’activer en créant la valeur DWORD Fournisseur CAPI activé sous la clé [HKEY_CURRENT_USER\Software\Microsoft\Microsoft SQL Server\sql13\Tools\Client\Always Encrypted] dans le Registre Windows et en lui affectant la valeur 1. Vous devez utiliser CNG au lieu de CAPI, sauf si votre magasin de clés ne prend pas en charge CNG.
Pour plus d’informations sur les magasins de clés ci-dessus, consultez Créer et stocker des clés principales de colonne pour Always Encrypted.
Si vous utilisez SQL Server 2019 (15.x) et que votre instance SQL Server est configurée avec une enclave sécurisée, vous pouvez cocher la case Autoriser les calculs d’enclave pour que la clé principale soit activée pour l’enclave. Pour plus d’informations, consultez Always Encrypted avec enclaves sécurisées.
Remarque
La case à cocher Autoriser les calculs d’enclave n’apparaît pas si votre instance SQL Server n’est pas configurée correctement avec une enclave sécurisée.
Choisissez une clé existante dans votre magasin de clés, ou cliquez sur le bouton Générer une clé ou Générer un certificat pour créer une clé dans le magasin de clés.
Cliquez sur OK et la nouvelle clé apparaît dans la liste.
Une fois que vous en avez terminé avec la boîte de dialogue, SQL Server Management Studio crée des métadonnées pour votre clé principale de colonne dans la base de données. La boîte de dialogue génère et émet une instruction CREATE COLUMN MASTER KEY (Transact-SQL).
Si vous configurez une clé principale de colonne activée pour les enclaves, SSMS signe également les métadonnées en utilisant la clé principale de colonne.
Autorisations pour le provisionnement d’une clé principale de colonne
Vous avez besoin de l’autorisation de base de données ALTER ANY COLUMN MASTER KEY dans la base de données pour que la boîte de dialogue crée une clé principale de colonne. Vous devez également disposer d’autorisations de magasin de clés pour accéder à votre clé principale de colonne clé et l’utiliser. Pour plus d’informations sur les autorisations requises pour les opérations de gestion des clés, consultez Créer et stocker des clés principales de colonne pour Always Encrypted et passez en revue la section correspondant à votre magasin de clés.
Provisionner des clés de chiffrement de colonne avec la boîte de dialogue Nouvelle clé de chiffrement de colonne
La boîte de dialogue Nouvelle clé de chiffrement de colonne vous permet de générer une clé de chiffrement de colonne, de la chiffrer avec une clé principale de colonne et de créer des métadonnées de clé de chiffrement de colonne dans la base de données.
- À l’aide de l’Explorateur d’objets, accédez au dossier Sécurité/Clés Always Encrypted sous votre base de données.
- Cliquez avec le bouton droit sur le dossier Clés de chiffrement de colonne et sélectionnez Nouvelle clé de chiffrement de colonne….
- Dans la boîte de dialogue Nouvelle clé de chiffrement de colonne , entrez le nom de l’objet de métadonnées de clé de chiffrement de colonne.
- Sélectionnez un objet de métadonnées qui représente votre clé principale de colonne dans la base de données.
- Cliquez sur OK.
Une fois la boîte de dialogue fermée, SQL Server Management Studio (SSMS) génère une nouvelle clé de chiffrement de colonne. SSMS récupère ensuite les métadonnées de la clé principale de colonne que vous avez sélectionnée à partir de la base de données. SSMS utilise ensuite les métadonnées de la clé principale de colonne pour contacter le magasin de clés qui contient votre clé principale de colonne et pour chiffrer la clé de chiffrement de colonne. Enfin, SSMS crée les données des métadonnées pour le chiffrement de la nouvelle colonne dans la base de données en générant et en émettant une instruction CREATE COLUMN ENCRYPTION KEY (Transact-SQL).
Remarque
L’utilisation de clés principales de colonne stockées dans un HSM managé dans Azure Key Vault nécessite SSMS 18.9 ou une version ultérieure.
Autorisations pour l’approvisionnement d’une clé de chiffrement de colonne
Vous avez besoin des autorisations de base de données ALTER ANY COLUMN ENCRYPTION KEY et VIEW ANY COLUMN MASTER KEY DEFINITION dans la base de données pour que la boîte de dialogue crée les métadonnées de la clé de chiffrement de colonne et accède aux métadonnées de la clé principale de colonne. Vous devez également disposer d’autorisations de magasin de clés pour accéder à votre clé principale de colonne et l’utiliser. Pour obtenir des informations détaillées sur les autorisations de magasin de clés nécessaires pour les opérations de gestion de clés, accédez à Créer et stocker des clés principales de colonne pour Always Encrypted, puis recherchez une section pertinente pour votre magasin de clés.
Provisionner des clés Always Encrypted avec l’Assistant Always Encrypted
L’Assistant Always Encrypted est un outil de chiffrement, de déchiffrement et de rechiffrement de colonnes de base de données sélectionnées. Bien qu’il puisse utiliser des clés déjà configurées, il vous permet également de générer une nouvelle clé principale de colonne et un nouveau chiffrement de colonne.
Étapes suivantes
- Configurer le chiffrement de colonne à l’aide de l’Assistant Always Encrypted
- Configurer le chiffrement de colonne en utilisant Always Encrypted avec un package DAC
- Effectuer une rotation des clés Always Encrypted avec SQL Server Management Studio
- Développer des applications avec Always Encrypted
- Migrer des données à partir ou à destination de colonnes à l’aide d’Always Encrypted avec l’Assistant Importation et exportation SQL Server
Voir aussi
- Always Encrypted
- Vue d’ensemble de la gestion des clés pour Always Encrypted
- Créer et stocker des clés principales de colonne pour Always Encrypted
- Configurer Always Encrypted à l’aide de SQL Server Management Studio
- Provisionner des clés Always Encrypted en utilisant PowerShell
- CREATE COLUMN MASTER KEY (Transact-SQL)
- DROP COLUMN MASTER KEY (Transact-SQL)
- CREATE COLUMN ENCRYPTION KEY (Transact-SQL)
- ALTER COLUMN ENCRYPTION KEY (Transact-SQL)
- DROP COLUMN ENCRYPTION KEY (Transact-SQL)
- sys.column_master_keys (Transact-SQL)
- sys.column_encryption_keys (Transact-SQL)