Aller au contenu principal

Guide de démarrage rapide

Mettez DuoKey SQL EKM en service et chiffrez votre première base de données

S'applique à :
SQL Server 2016+Installation en 30 à 45 minAccès administrateur requis

Vue d'ensemble

Ce guide de démarrage rapide vous accompagne dans le chiffrement de votre première base de données SQL Server avec DuoKey EKM. À la fin, vous disposerez de :

Application DuoKey

Application SQL EKM configurée dans la plateforme DuoKey

Fournisseur EKM

Fournisseur cryptographique installé sur SQL Server

Identifiants

SQL Server configuré avec l'authentification DuoKey

Base de données chiffrée

Base de données de test chiffrée avec TDE

Prérequis

Prérequis

  • SQL Server 2016+ (édition Enterprise, Standard ou Developer)
  • Windows Server 2012 R2+ ou Windows 10/11
  • Accès administrateur à la machine SQL Server
  • Compte de plateforme DuoKey avec autorisations de création d'application
  • Accès réseau à DuoKey (HTTPS port 443)
  • SQL Server Management Studio (SSMS) installé
Attention
L'édition SQL Server Express ne prend pas en charge l'Extensible Key Management. Vérifiez votre édition de SQL Server avant de continuer.

Phase 1 : Configuration de la plateforme DuoKey

1

Configuration de la plateforme DuoKey

~5 minutes
1

Se connecter à la plateforme DuoKey

Accédez à la plateforme cloud DuoKey et connectez-vous avec vos identifiants.

2

Créer l'application SQL EKM

Accédez à Apps → Create New APP → Sélectionnez DuoKey for SQL → Cliquez sur Install Now

3

Configurer l'application

  • Saisissez un nom d'application (par ex. « Production-SQL-EKM »)
  • Ajoutez une description (facultatif)
  • Attribuez des rôles pour le contrôle d'accès
  • Sélectionnez ou créez un vault pour vos clés
4

Enregistrer les identifiants

Téléchargez le fichier d'installation et notez de manière sécurisée :

  • Client ID - Identifiant unique de l'application
  • Client Secret - Clé secrète pour l'authentification
  • Mot de passe - Mot de passe d'application supplémentaire
Important
Stockez vos identifiants en toute sécurité ! Le Client Secret et le mot de passe ne peuvent pas être récupérés ultérieurement depuis la plateforme DuoKey. Vous en aurez besoin pour la configuration de SQL Server.

Guide détaillé : Créer l'application SQL EKM

Phase 2 : Installation sur SQL Server

2

Installer le fournisseur EKM

~10 minutes
1

Extraire les fichiers d'installation

Extrayez le fichier ZIP d'installation téléchargé vers un emplacement temporaire.

2

Exécuter le programme d'installation

Cliquez avec le bouton droit sur setup.exe → Run as Administrator

Remarque
Windows peut afficher une boîte de dialogue de protection. Cliquez sur « Informations complémentaires » puis sur « Exécuter quand même ».
3

Terminer l'assistant d'installation

  • Acceptez le contrat de licence
  • Choisissez le dossier d'installation (celui par défaut est recommandé)
  • Sélectionnez le niveau de journalisation (Info recommandé pour la configuration initiale)
  • Cliquez sur Installer et attendez la fin de l'opération
4

Vérifier l'installation

Vérifiez que ces fichiers DLL existent dans C:\Windows\System32 :

  • DuoKeyCryptoProvider.dll
  • libcurl.dll
  • zlib1.dll
  • fmt.dll
Requête de vérificationSQL
-- Verify DLL is accessible by SQL Server
EXEC xp_fileexist 'C:\Windows\System32\DuoKeyCryptoProvider.dll';
GO

Guide détaillé : Installer le fournisseur EKM

Phase 3 : Configuration de SQL Server

3

Configurer SQL Server

~10 minutes

Ouvrez SQL Server Management Studio (SSMS), connectez-vous à votre instance et exécutez le script de configuration suivant. Remplacez tous les espaces réservés par vos valeurs réelles.

Script de configuration complet

T-SQLRemplacez les espaces réservés
-- =============================================
-- DuoKey SQL EKM Configuration Script
-- Replace <placeholders> with your values
-- =============================================

-- Step 1: Enable EKM
sp_configure 'show advanced', 1;
GO
RECONFIGURE;
GO
sp_configure 'EKM provider enabled', 1;
GO
RECONFIGURE;
GO

-- Step 2: Create Cryptographic Provider
CREATE CRYPTOGRAPHIC PROVIDER DuoKeyProvider
FROM FILE = 'C:\Windows\System32\DuoKeyCryptoProvider.dll';
GO

-- Step 3: Create Credentials
-- Format: client_secret<!COCKPITPW!>password<!COCKPITPW!>CockpitIntrospectPwd
CREATE CREDENTIAL DuoKeyCredential
WITH IDENTITY = '<your_client_id>',
SECRET = '<your_client_secret><!COCKPITPW!><your_password><!COCKPITPW!>CockpitIntrospectPwd'
FOR CRYPTOGRAPHIC PROVIDER DuoKeyProvider;
GO

-- Step 4: Map Credential to Login
ALTER LOGIN [sa]
ADD CREDENTIAL DuoKeyCredential;
GO

-- Step 5: Create Asymmetric Key
USE master;
GO
CREATE ASYMMETRIC KEY SQL_EKM_Key
FROM PROVIDER DuoKeyProvider
WITH ALGORITHM = RSA_2048,
PROVIDER_KEY_NAME = 'SQL_EKM_Key',
CREATION_DISPOSITION = CREATE_NEW;
GO

-- Step 6: Create Key Credentials
CREATE CREDENTIAL SQL_EKM_Key_Cred
WITH IDENTITY = '<your_client_id>',
SECRET = '<your_client_secret><!COCKPITPW!><your_password><!COCKPITPW!>CockpitIntrospectPwd'
FOR CRYPTOGRAPHIC PROVIDER DuoKeyProvider;
GO

-- Step 7: Create Key Login
CREATE LOGIN SQL_EKM_Key_Login
FROM ASYMMETRIC KEY SQL_EKM_Key;
GO

ALTER LOGIN SQL_EKM_Key_Login
ADD CREDENTIAL SQL_EKM_Key_Cred;
GO

PRINT 'Configuration complete. Enable Encrypt operation in DuoKey Cockpit.';
GO
Activer l'opération de chiffrement

Avant de passer à la phase 4, vous devez activer l'opération de chiffrement dans DuoKey :

  1. Connectez-vous à DuoKey Cockpit
  2. Accédez à Keys → Recherchez SQL_EKM_Key
  3. Dans les opérations cryptographiques, activez Encrypt
  4. Enregistrez les modifications

Guide détaillé : Configurer SQL Server

Phase 4 : Chiffrement de la base de données

4

Chiffrer votre première base de données

~5 minutes

Créons maintenant une base de données de test et chiffrons-la à l'aide de TDE avec DuoKey EKM.

Script de chiffrement de la base de donnéesSQL
-- Create test database
CREATE DATABASE TestEncryptedDB;
GO

-- Create Database Encryption Key
USE TestEncryptedDB;
GO
CREATE DATABASE ENCRYPTION KEY
WITH ALGORITHM = AES_256
ENCRYPTION BY SERVER ASYMMETRIC KEY SQL_EKM_Key;
GO

-- Enable encryption
ALTER DATABASE TestEncryptedDB
SET ENCRYPTION ON;
GO

-- Verify encryption status
SELECT
    DB_NAME(database_id) AS [Database],
    CASE encryption_state
        WHEN 0 THEN 'No encryption key'
        WHEN 1 THEN 'Unencrypted'
        WHEN 2 THEN 'Encryption in progress'
        WHEN 3 THEN 'Encrypted'
        WHEN 4 THEN 'Key change in progress'
        WHEN 5 THEN 'Decryption in progress'
    END AS [Status],
    percent_complete AS [Progress %]
FROM sys.dm_database_encryption_keys
WHERE DB_NAME(database_id) = 'TestEncryptedDB';
GO
Astuce
L'état de chiffrement 3 signifie que la base de données est entièrement chiffrée. L'état 2 signifie que le chiffrement est encore en cours : attendez qu'il se termine avant de continuer.

Guide détaillé : Chiffrement de la base de données

Vérification

Exécutez ces requêtes pour vérifier que votre configuration complète fonctionne correctement :

Requêtes de vérificationSQL
-- 1. EKM Provider Status
SELECT name, guid, version
FROM sys.cryptographic_providers;
GO

-- 2. Credentials Created
SELECT name, credential_identity, create_date
FROM sys.credentials
WHERE name LIKE '%DuoKey%' OR name LIKE '%EKM%';
GO

-- 3. Asymmetric Keys
SELECT name, algorithm_desc, key_length, thumbprint
FROM sys.asymmetric_keys;
GO

-- 4. Encrypted Databases
SELECT
    d.name AS DatabaseName,
    d.is_encrypted,
    dek.encryption_state
FROM sys.databases d
LEFT JOIN sys.dm_database_encryption_keys dek
    ON d.database_id = dek.database_id
WHERE d.is_encrypted = 1;
GO

Liste de vérification

Fournisseur EKMDuoKeyProvider visible dans sys.cryptographic_providers
IdentifiantsDuoKeyCredential et SQL_EKM_Key_Cred créés
Clé asymétriqueSQL_EKM_Key avec l'algorithme RSA_2048
Base de données chiffréeTestEncryptedDB avec encryption_state = 3

Aide-mémoire de dépannage

Problèmes courants et solutions

ProblèmeCauseSolution
EKM non activéÉdition ou configuration de SQL ServerVérifiez l'édition ; exécutez les commandes sp_configure
Impossible de créer le fournisseurDLL introuvableVérifiez la présence de DuoKeyCryptoProvider.dll dans System32
Erreur de format des identifiantsFormat SECRET invalideVérifiez les délimiteurs <!COCKPITPW!>
La création de la clé échoueChiffrement non activéActivez l'opération de chiffrement dans DuoKey Cockpit
Délai de connexion dépasséProblème réseauVérifiez l'accès HTTPS 443 à la plateforme DuoKey

Guide de dépannage complet

Étapes suivantes

Félicitations ! Vous avez configuré DuoKey SQL EKM et chiffré votre première base de données avec succès. Voici ce qu'il reste à explorer :