Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Van toepassing op:SQL Server
In dit artikel wordt beschreven hoe u de asymmetrische sleutel die door Transparent Data Encryption (TDE) wordt gebruikt, handmatig kunt roteren met Extensible Key Management (EKM) en Azure Key Vault.
Gebruik deze procedure nadat u TDE hebt geconfigureerd met Azure Key Vault. Zie Transparent Data Encryption instellen met Azure Key Vault voor SQL Server voor de eerste installatie-instructies.
Important
SQL Server rouleert de asymmetrische sleutel die voor TDE wordt gebruikt niet automatisch. Rotatie is een handmatige bewerking.
Het roteren van de logische TDE-beveiliging is een onlinebewerking en wordt meestal snel voltooid, omdat SQL Server alleen de DATABASEversleutelingssleutel (DEK) opnieuw versleutelt, niet de hele database.
Verwijder eerdere sleutelversies niet na rotatie. Eerdere versies zijn mogelijk nog steeds vereist om oudere back-ups, transactielogboeken of andere herstelartefacten te herstellen.
Voordat u begint
- Voltooi de eerste EKM- en TDE-installatie.
- Controleer of SQL Server momenteel toegang heeft tot de sleutelkluis.
- Zorg ervoor dat u gemachtigd bent om referenties, aanmeldingen en asymmetrische sleutels te maken in SQL Server.
- Controleer of uw verificatiemodel nog steeds geldig is:
- Service-principal: app-registratie en clientgeheim zijn geldig.
- Beheerde identiteit: de SQL Server beheerde identiteit is nog steeds ingeschakeld en heeft de vereiste sleutelmachtigingen.
De sleutel draaien
Kies uw verificatiemodel en volg de overeenkomende stappen.
Draai de sleutel in Azure Key Vault of Beheerde HSM:
- Maak een nieuwe versie van dezelfde sleutelnaam of
- Maak een nieuwe sleutelnaam.
Maak in SQL Server indien nodig een referentie voor de rotatiebewerking.
CREATE CREDENTIAL <new_credential_name> WITH IDENTITY = <key_vault_name_or_uri_without_https>, SECRET = '<client_id_without_hyphens><client_secret>' FOR CRYPTOGRAPHIC PROVIDER AzureKeyVault_EKM;Voeg het referentiegegeven toe aan de configuratie-principal die de volgende asymmetrische sleutel maakt.
ALTER LOGIN [<domain>\<login>] ADD CREDENTIAL [<new_credential_name>];Maak de nieuwe SQL Server asymmetrische sleutel op basis van Azure Key Vault.
Note
Voor handmatige rotatie ondersteunt SQL Server zowel een versieloze sleutelnaam als een verwijzing naar een versieloze sleutel:
- Versieloos: gebruik
<key_name>dit om SQL Server de hoogst beschikbare sleutelversie in Azure Key Vault te laten gebruiken. - Versiebeheer: hiermee
<key_name>/<version>kunt u versleutelingsbewerkingen vastmaken aan een specifieke sleutelversie.
U hoeft geen andere AKV-sleutelnaam aan te maken om te roteren. Roteer sleutels door een nieuwe sleutelversie te maken en vervolgens een nieuwe asymmetrische SQL Server-sleutel te maken die verwijst naar de versieloze of versiegebonden vorm.
Gebruik een versieloze sleutelnaam of een specifieke sleutelversie:
CREATE ASYMMETRIC KEY <new_ekm_key_name> FROM PROVIDER [AzureKeyVault_EKM] WITH PROVIDER_KEY_NAME = '<key_name_or_key_name/version>', CREATION_DISPOSITION = OPEN_EXISTING;- Versieloos: gebruik
Maak een nieuwe aanmelding vanaf de nieuwe asymmetrische sleutel.
CREATE LOGIN <new_login_name> FROM ASYMMETRIC KEY <new_ekm_key_name>;Verplaats de referentietoewijzing van de aanmelding bij de installatie naar de nieuwe asymmetrische-sleutelaanmelding.
ALTER LOGIN [<domain>\<login>] DROP CREDENTIAL [<new_credential_name>]; ALTER LOGIN <new_login_name> ADD CREDENTIAL [<new_credential_name>];Versleutel de databaseversleutelingssleutel (DEK) opnieuw met behulp van de nieuwe asymmetrische sleutel.
USE [<database_name>]; GO ALTER DATABASE ENCRYPTION KEY ENCRYPTION BY SERVER ASYMMETRIC KEY <new_ekm_key_name>;
Rotatie controleren
Controleer de versleutelingsmetagegevens voor de database.
SELECT encryptor_type, encryption_state_desc, encryptor_thumbprint FROM sys.dm_database_encryption_keys WHERE database_id = DB_ID('<database_name>');Controleer de vingerafdruk van de SQL Server asymmetrische sleutel.
SELECT name, algorithm_desc, thumbprint FROM sys.asymmetric_keys WHERE name = '<new_ekm_key_name>';Controleer of de vingerafdrukken overeenkomen.