Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A következőkre vonatkozik:SQL Server
Ez a cikk azt ismerteti, hogyan engedélyezheti a transzparens adattitkosítást (TDE) az SQL Serveren az adatbázistitkosítási kulcsok védelméhez egy bővíthető kulcskezelési (EKM) modulban tárolt aszimmetrikus kulcs használatával a Transact-SQL-vel.
A TDE egy teljes adatbázis tárolását titkosítja az adatbázis titkosítási kulcsának nevezett szimmetrikus kulccsal. Az adatbázistitkosítási kulcs tanúsítványsal is védhető, amelyet az adatbázis adatbázis-főkulcsa master (DMK) véd. Az adatbázis-titkosítási kulcs DMK használatával történő védelméről további információt a Transzparens adattitkosítás (TDE) című témakörben talál. A TDE azure-beli virtuális gépen való futtatásakor a TDE konfigurálásáról további információt az Azure Key Vault (SQL Server) használatával történő bővíthető kulcskezelés című témakörben talál. A TDE azure-kulcstartóban lévő kulcs használatával történő konfigurálásáról további információt Az SQL Server-összekötő használata SQL Encryption-funkciókkalcímű témakörben talál.
Korlátozások
Az adatbázis titkosítási kulcsának létrehozásához és az adatbázis titkosításához magas jogosultsági szintű felhasználónak (például rendszergazdának) kell lennie. Az EKM-modulnak képesnek kell lennie a felhasználó hitelesítésére.
Indításkor az adatbázismotornak meg kell nyitnia az adatbázist. Létre kell hoznia egy hitelesítő adatot, amelyet az EKM hitelesít, majd hozzáadja egy aszimmetrikus kulcson alapuló bejelentkezéshez. A felhasználók nem tudnak bejelentkezni ezzel a bejelentkezéssel, de az adatbázismotor hitelesítheti magát az EKM-eszközzel.
Ha az EKM modulban tárolt aszimmetrikus kulcs elveszik, az adatbázis nem nyitható meg az SQL Serverrel. Ha az EKM-szolgáltató lehetővé teszi az aszimmetrikus kulcs biztonsági mentését, létre kell hoznia egy biztonsági másolatot, és biztonságos helyen kell tárolnia.
Az EKM-szolgáltató által igényelt beállítások és paraméterek eltérhetnek az alábbi kód példában megadott lehetőségektől. További információért forduljon az EKM-szolgáltatójához.
Engedélyek
Ez a cikk a következő engedélyeket használja:
A konfigurációs beállítás módosításához és az
RECONFIGUREutasítás futtatásához meg kell adni aALTER SETTINGSkiszolgálószintű engedélyt. AALTER SETTINGSengedélyt implicit módon a sysadmin és serveradmin rögzített kiszolgálói szerepkörök birtokolják.Engedélyre van szükség
ALTER ANY CREDENTIAL.Engedélyre van szükség
ALTER ANY LOGIN.Engedélyre van szükség
CREATE ASYMMETRIC KEY.Az adatbázis titkosításához engedélyre van szükség
CONTROLaz adatbázisban.
Használd a Transact-SQL-t
Másolja az EKM-szolgáltató által megadott fájlokat az SQL Server-számítógép megfelelő helyére. Ebben a példában a
C:\EKM_Filesmappát használjuk.Telepítse a tanúsítványokat a számítógépre az EKM-szolgáltató igényei szerint.
Jegyzet
Az SQL Server nem biztosít EKM-szolgáltatót. Minden EKM-szolgáltató különböző eljárásokkal rendelkezhet a felhasználók telepítésére, konfigurálására és engedélyezésére. A lépés végrehajtásához tekintse meg az EKM-szolgáltató dokumentációját.
Az Object Explorer-ben csatlakozzon az adatbázismotor egy példányához.
A Standard sávon válassza Új lekérdezéslehetőséget.
Másolja és illessze be a következő példát a lekérdezési ablakba, és válassza az Végrehajtás lehetőséget.
-- Enable advanced options. EXECUTE sp_configure 'show advanced options', 1; GO RECONFIGURE; GO -- Enable EKM provider EXECUTE sp_configure 'EKM provider enabled', 1; GO RECONFIGURE; GO -- Create a cryptographic provider, which we have chosen to call "EKM_Prov," based on an EKM provider CREATE CRYPTOGRAPHIC PROVIDER EKM_Prov FROM FILE = 'C:\EKM_Files\KeyProvFile.dll'; GO -- Create a credential that will be used by system administrators. CREATE CREDENTIAL sa_ekm_tde_cred WITH IDENTITY = 'Identity1', SECRET = '<password>' FOR CRYPTOGRAPHIC PROVIDER EKM_Prov; GO -- Add the credential to a high privileged user such as your -- own domain login in the format [DOMAIN\login]. ALTER LOGIN [Contoso\Mary] ADD CREDENTIAL sa_ekm_tde_cred; GO -- create an asymmetric key stored inside the EKM provider USE master; GO CREATE ASYMMETRIC KEY ekm_login_key FROM PROVIDER [EKM_Prov] WITH ALGORITHM = RSA_512, PROVIDER_KEY_NAME = 'SQL_Server_Key'; GO -- Create a credential that will be used by the Database Engine. CREATE CREDENTIAL ekm_tde_cred WITH IDENTITY = 'Identity2', SECRET = '<secret>' FOR CRYPTOGRAPHIC PROVIDER EKM_Prov; -- Add a login used by TDE, and add the new credential to the login. CREATE LOGIN EKM_Login FROM ASYMMETRIC KEY ekm_login_key; GO ALTER LOGIN EKM_Login ADD CREDENTIAL ekm_tde_cred; GO -- Create the database encryption key that will be used for TDE. USE AdventureWorks2022; GO CREATE DATABASE ENCRYPTION KEY WITH ALGORITHM = AES_128 ENCRYPTION BY SERVER ASYMMETRIC KEY ekm_login_key; GO -- Alter the database to enable transparent data encryption. ALTER DATABASE AdventureWorks2022 SET ENCRYPTION ON; GO
Kapcsolódó tartalom
- Transzparens adattitkosítás az SQL Database-hez, a felügyelt SQL-példányhoz és az Azure Synapse Analyticshez
- sp_configure (Transact-SQL)
- CREATE CRYPTOGRAPHIC PROVIDER (Transact-SQL)
- HITELESÍTŐ ADATOK LÉTREHOZÁSA (Transact-SQL)
- ASZIMMETRIKUS KULCS LÉTREHOZÁSA (Transact-SQL)
- HITELÉVÉ NYITÁS (Transact-SQL)
- ADATBÁZIS-TITKOSÍTÁSI KULCS LÉTREHOZÁSA (Transact-SQL)
- ALTER LOGIN (Transact-SQL)
- ADATBÁZIS MÓDOSÍTÁSA (Transact-SQL)