Aller au contenu principal

Install EKM Provider

S'applique à :
Windows Server 2012 R2+SQL Server 2016+Administrateur requis

Vue d'ensemble​

Ce guide explique comment déployer le fournisseur DuoKey SQL EKM sur Microsoft SQL Server. Le fournisseur est une bibliothèque signée unique qui permet à SQL Server de déléguer les opérations sur les clés du chiffrement transparent des données (TDE) au service cloud de gestion des clés de DuoKey.

Le déploiement est une opération basée sur des fichiers : vous placez une bibliothèque de fournisseur signée et un fichier de configuration sur l'hôte SQL Server, vous confirmez que la signature est approuvée, puis vous vous assurez que le compte de service SQL Server peut les lire. Il n'y a aucun assistant d'installation, aucun MSI, et aucun fichier n'est copié dans C:\Windows\System32.

Prérequis

  • Application SQL EKM créée dans la plateforme DuoKey
  • Fichier d'installation téléchargé depuis la plateforme DuoKey (bibliothèque du fournisseur + modèle de configuration)
  • Microsoft SQL Server 2016 ou version ultérieure installé
  • Privilèges d'administrateur sur la machine SQL Server
  • Connectivité réseau vers la plateforme cloud DuoKey (HTTPS port 443)

Configuration requise​

SQL Server

  • SQL Server 2016 ou version ultérieure
  • Recommandé : SQL Server 2019+
  • Édition Enterprise ou Developer

Système d'exploitation

  • Windows Server 2012 R2 ou version ultérieure
  • Windows 10/11 (dév./test)
  • Architecture 64 bits

Espace disque

  • Minimum 100 Mo libres
  • Dossier du fournisseur pour la bibliothèque
  • Configuration et keystore sous ProgramData

Réseau

  • HTTPS (port 443) sortant
  • Accès à la plateforme DuoKey
  • TLS 1.2 ou version ultérieure
L'EKM est limité par édition

L'Extensible Key Management n'est disponible que sur les éditions Enterprise et Developer de SQL Server sous Windows. Il n'est pas disponible sur les éditions Standard, Web ou Express.

Organisation du déploiement​

Le fournisseur utilise deux emplacements sur l'hôte SQL Server :

CheminContenu
C:\Program Files\DKE\EKMLa bibliothèque de fournisseur signée dke_ekm_provider.dll (n'importe quel dossier lisible par le compte de service SQL Server).
C:\ProgramData\DKE\EKMconfig.toml (paramètres de connexion), keystore.json (mappage des clés, créé par le fournisseur) et dke-ekm.log (journal local).
Pourquoi pas System32

Le fournisseur est chargé par SQL Server via le chemin que vous enregistrez avec CREATE CRYPTOGRAPHIC PROVIDER ; il n'a donc pas besoin de résider dans un répertoire système. Le conserver dans un dossier applicatif dédié simplifie les mises à niveau et l'audit.

Étapes d'installation​

1

Extraire le fichier d'installation

  1. Localisez le fichier d'installation téléchargé depuis la plateforme DuoKey
  2. Extrayez l'archive dans un emplacement temporaire
  3. Vérifiez qu'elle contient la bibliothèque du fournisseur dke_ekm_provider.dll et un modèle config.toml
2

Placer la bibliothèque du fournisseur

Créez le dossier du fournisseur et copiez-y la bibliothèque signée.

Emplacement de la bibliothèque du fournisseurTEXT
C:\Program Files\DKE\EKM\dke_ekm_provider.dll
Astuce

N'importe quel dossier convient, tant que le compte de service SQL Server peut le lire. Évitez les chemins de profil utilisateur et les partages réseau.

3

Déployer le fichier de configuration

Créez le dossier ProgramData et copiez-y le modèle config.toml issu du fichier d'installation.

Emplacement du fichier de configurationTEXT
C:\ProgramData\DKE\EKM\config.toml

Vous renseignerez les valeurs de connexion dans le guide suivant. Le fournisseur écrit également keystore.json et dke-ekm.log dans ce même dossier au moment de l'exécution ; il doit donc être accessible en écriture par le compte de service SQL Server.

4

Confirmer que la signature est approuvée

La bibliothèque du fournisseur est signée avec Authenticode. SQL Server refuse de charger un fournisseur cryptographique dont la chaîne de signature n'est pas approuvée sur la machine ; vérifiez-la donc avant d'enregistrer le fournisseur.

Vérifier la signature AuthenticodePOWERSHELL
Get-AuthenticodeSignature "C:\Program Files\DKE\EKM\dke_ekm_provider.dll" |
Format-List Status, SignerCertificate, StatusMessage

Le Status doit être Valid. Si ce n'est pas le cas, installez la chaîne de certificats de signature DuoKey dans les magasins machine Autorités de certification racines de confiance et Éditeurs approuvés, puis relancez la vérification.

La confiance est obligatoire

Si la signature est absente, endommagée ou émise par une chaîne non approuvée, CREATE CRYPTOGRAPHIC PROVIDER échoue et SQL Server ne chargera pas la bibliothèque.

5

Accorder l'accès en lecture au compte de service

Assurez-vous que le compte qui exécute le service SQL Server peut lire le dossier du fournisseur et lire/écrire le dossier ProgramData. Identifiez d'abord le compte de service.

Trouver le compte de service SQL ServerPOWERSHELL
Get-CimInstance Win32_Service -Filter "Name='MSSQLSERVER'" |
Select-Object Name, StartName
Accorder l'accès au compte de servicePOWERSHELL
# Read + execute on the provider folder
icacls "C:\Program Files\DKE\EKM" /grant "NT SERVICE\MSSQLSERVER:(OI)(CI)RX"

# Read + write on the ProgramData folder (config, keystore, log)
icacls "C:\ProgramData\DKE\EKM" /grant "NT SERVICE\MSSQLSERVER:(OI)(CI)M"
Instances nommées

Pour une instance nommée, le compte de service est généralement NT SERVICE\MSSQL$InstanceName. Si le service s'exécute sous un compte de domaine, accordez plutôt les mêmes droits à ce compte.

Vérification après installation​

Confirmez que les deux fichiers sont présents et que la signature est approuvée avant de passer à la configuration.

Fichiers à vérifier

dke_ekm_provider.dllC:\Program Files\DKE\EKM\ — signature Valid
config.tomlC:\ProgramData\DKE\EKM\ — lisible par le compte de service
Clé de registre facultative

Le déploiement ne nécessite aucune modification du registre. Une clé facultative HKLM\SOFTWARE\DKE\EKM peut être présente pour des paramètres avancés, mais elle n'est pas nécessaire pour une installation standard.

Résolution des problèmes​

Étapes suivantes​