Helyreállítási adatok titkosítása az adatbázisban
A következőre vonatkozik: Configuration Manager (aktuális ág)
BitLocker felügyeleti szabályzat létrehozásakor Configuration Manager üzembe helyezi a helyreállítási szolgáltatást egy felügyeleti ponton. A BitLocker felügyeleti házirend Ügyfélkezelés lapján a BitLocker felügyeleti szolgáltatások konfigurálásakor az ügyfél biztonsági másolatot készít a kulcs-helyreállítási adatokról a helyadatbázisban. Ezek az információk tartalmazzák a BitLocker helyreállítási kulcsait, a helyreállítási csomagokat és a TPM-jelszókivonatokat. Ha a felhasználókat kizárják a védett eszközükből, ez az információ segíthet helyreállítani az eszközhöz való hozzáférést.
Az információk bizalmas jellegéből adódóan meg kell védenie őket. Configuration Manager https-kapcsolatot igényel az ügyfél és a helyreállítási szolgáltatás között az átvitt adatok hálózaton keresztüli titkosításához. További információ: Helyreállítási adatok titkosítása a hálózaton keresztül.
Érdemes lehet titkosítani ezeket az adatokat a helyadatbázisban való tároláskor is. Ha SQL Server tanúsítványt telepít, Configuration Manager titkosítja az adatokat az SQL-ben.
Ha nem szeretne BitLocker felügyeleti titkosítási tanúsítványt létrehozni, jelentkezzen be a helyreállítási adatok egyszerű szöveges tárolására. BitLocker felügyeleti házirend létrehozásakor engedélyezze a Helyreállítási adatok egyszerű szöveges tárolásának engedélyezése beállítást.
Megjegyzés:
Egy másik biztonsági réteg a teljes helyadatbázis titkosítása. Ha engedélyezi a titkosítást az adatbázison, a Configuration Manager nem okoz funkcionális problémákat.
Titkosítás körültekintően, különösen nagy léptékű környezetekben. A titkosított tábláktól és az SQL verziójától függően akár 25%-os teljesítménycsökkenést is tapasztalhat. Frissítse a biztonsági mentési és helyreállítási terveket, hogy sikeresen helyreállíthassa a titkosított adatokat.
Megjegyzés:
Configuration Manager soha nem távolítja el vagy törli az eszközök helyreállítási adatait az adatbázisból, még akkor sem, ha az ügyfél inaktív vagy törölve van. Ez a viselkedés biztonsági okokból történik. Segít olyan helyzetekben, amikor ellopnak egy eszközt, de később helyreállnak. Nagy méretű környezetek esetén az adatbázis méretére gyakorolt hatás titkosított kötetenként körülbelül 9 KB adat.
titkosítási tanúsítvány SQL Server
Használja ezt a SQL Server tanúsítványt a Configuration Manager számára a BitLocker helyreállítási adatainak titkosításához a helyadatbázisban. Önaláírt tanúsítványt hozhat létre egy szkripttel a SQL Server.
Másik lehetőségként saját folyamattal is létrehozhatja és üzembe helyezheti ezt a tanúsítványt, ha az megfelel a következő követelményeknek:
A BitLocker felügyeleti titkosítási tanúsítványának nevének a következőnek kell lennie
BitLockerManagement_CERT
: .A tanúsítvány titkosítása adatbázis-főkulccsal.
A következő SQL Server felhasználóknak vezérlési engedélyekre van szükségük a tanúsítványon:
- RecoveryAndHardwareCore
- RecoveryAndHardwareRead
- RecoveryAndHardwareWrite
Helyezze üzembe ugyanazt a tanúsítványt a hierarchia minden helyadatbázisában.
Hozza létre a tanúsítványt a SQL Server legújabb verziójával.
Fontos
- A SQL Server 2016-os vagy újabb verziójával létrehozott tanúsítványok kompatibilisek a 2014-SQL Server vagy korábbi verzióival.
- A 2014-SQL Server vagy korábbi verzióval létrehozott tanúsítványok nem kompatibilisek a SQL Server 2016-os vagy újabb verziójával.
Titkosítási tanúsítvány kezelése SQL Server frissítéskor
Ha a helyadatbázis a 2014-es vagy korábbi SQL Server van, a SQL Server 2016-os vagy újabb verziójára való frissítés előtt az alábbi eljárással forgassa el a tanúsítványt egy támogatott verzióra.
A legújabb elérhető verziót futtató SQL Server legalább 2016-os verzióján:
A frissíteni kívánt titkosított helyadatbázissal rendelkező SQL Server példányon:
Helyezze át a helyadatbázis-kiszolgáló meglévő tanúsítványát SQL Server példányt egy másik névre.
Forgassa el az új tanúsítványt a fájlban a meglévő tanúsítványhoz. A megadott SQL-függvény használata
[RecoveryAndHardwareCore].[RecryptKey]
Fontos
Ha a tanúsítvány rotálása előtt frissíti SQL Server, forduljon Microsoft ügyfélszolgálata a kerülő megoldáshoz.
Akkor is használhatja ezt a folyamatot, ha az üzleti követelmények megadják, hogy rendszeresen meg kell újítania ezt a tanúsítványt.
Példaszkriptek
Ezek az SQL-szkriptek példák egy BitLocker felügyeleti titkosítási tanúsítvány létrehozására és üzembe helyezésére a Configuration Manager helyadatbázisban.
Tanúsítvány létrehozása
Ez a példaszkript a következő műveleteket hajtja végre:
- Tanúsítvány létrehozása
- Az engedélyek beállítása
- Adatbázis főkulcsának létrehozása
Mielőtt éles környezetben használ ilyet, módosítsa a következő értékeket:
- Helyadatbázis neve (
CM_ABC
) - Jelszó a főkulcs létrehozásához (
MyMasterKeyPassword
) - Tanúsítvány lejárati dátuma (
20391022
)
USE CM_ABC
IF NOT EXISTS (SELECT name FROM sys.symmetric_keys WHERE name = '##MS_DatabaseMasterKey##')
BEGIN
CREATE MASTER KEY ENCRYPTION BY PASSWORD = 'MyMasterKeyPassword'
END
IF NOT EXISTS (SELECT name from sys.certificates WHERE name = 'BitLockerManagement_CERT')
BEGIN
CREATE CERTIFICATE BitLockerManagement_CERT AUTHORIZATION RecoveryAndHardwareCore
WITH SUBJECT = 'BitLocker Management',
EXPIRY_DATE = '20391022'
GRANT CONTROL ON CERTIFICATE ::BitLockerManagement_CERT TO RecoveryAndHardwareRead
GRANT CONTROL ON CERTIFICATE ::BitLockerManagement_CERT TO RecoveryAndHardwareWrite
END
Megjegyzés:
A tanúsítvány lejárati dátumát a SQL Server nem ellenőrzi vagy kényszeríti ki, ha a tanúsítványt adatbázis-titkosításra használják, ahogyan az itt is látható.
Ha az üzleti követelmények azt adják meg, hogy rendszeresen megújítja ezt a tanúsítványt, használja ugyanezt a folyamatot a titkosítási tanúsítvány SQL Server frissítéskor történő kezeléséhez.
Tanúsítvány biztonsági mentése
Ez a példaszkript egy tanúsítványról készít biztonsági másolatot. Amikor egy fájlba menti a tanúsítványt, visszaállíthatja azt a hierarchia más helyadatbázisaiba.
Mielőtt éles környezetben használ ilyet, módosítsa a következő értékeket:
- Helyadatbázis neve (
CM_ABC
) - Fájl elérési útja és neve (
C:\BitLockerManagement_CERT_KEY
) - Kulcsjelszó exportálása (
MyExportKeyPassword
)
USE CM_ABC
BACKUP CERTIFICATE BitLockerManagement_CERT TO FILE = 'C:\BitLockerManagement_CERT'
WITH PRIVATE KEY ( FILE = 'C:\BitLockerManagement_CERT_KEY',
ENCRYPTION BY PASSWORD = 'MyExportKeyPassword')
Fontos
Mindig biztonsági másolatot készít a tanúsítványról. Ha helyre kell állítania a helyadatbázist, előfordulhat, hogy vissza kell állítania a tanúsítványt a helyreállítási kulcsokhoz való hozzáférés helyreállításához.
Tárolja az exportált tanúsítványfájlt és a hozzá tartozó jelszót egy biztonságos helyen.
Tanúsítvány visszaállítása
Ez a példaszkript visszaállít egy tanúsítványt egy fájlból. Ezzel a folyamattal egy másik helyadatbázisban létrehozott tanúsítványt helyezhet üzembe.
Mielőtt éles környezetben használ ilyet, módosítsa a következő értékeket:
- Helyadatbázis neve (
CM_ABC
) - Főkulcs jelszava (
MyMasterKeyPassword
) - Fájl elérési útja és neve (
C:\BitLockerManagement_CERT_KEY
) - Kulcsjelszó exportálása (
MyExportKeyPassword
)
USE CM_ABC
IF NOT EXISTS (SELECT name FROM sys.symmetric_keys WHERE name = '##MS_DatabaseMasterKey##')
BEGIN
CREATE MASTER KEY ENCRYPTION BY PASSWORD = 'MyMasterKeyPassword'
END
IF NOT EXISTS (SELECT name from sys.certificates WHERE name = 'BitLockerManagement_CERT')
BEGIN
CREATE CERTIFICATE BitLockerManagement_CERT AUTHORIZATION RecoveryAndHardwareCore
FROM FILE = 'C:\BitLockerManagement_CERT'
WITH PRIVATE KEY ( FILE = 'C:\BitLockerManagement_CERT_KEY',
DECRYPTION BY PASSWORD = 'MyExportKeyPassword')
GRANT CONTROL ON CERTIFICATE ::BitLockerManagement_CERT TO RecoveryAndHardwareRead
GRANT CONTROL ON CERTIFICATE ::BitLockerManagement_CERT TO RecoveryAndHardwareWrite
END
Tanúsítvány ellenőrzése
Ezzel az SQL-szkripttel ellenőrizheti, hogy SQL Server sikeresen létrehozta-e a tanúsítványt a szükséges engedélyekkel.
USE CM_ABC
declare @count int
select @count = count(distinct u.name) from sys.database_principals u
join sys.database_permissions p on p.grantee_principal_id = u.principal_id or p.grantor_principal_id = u.principal_id
join sys.certificates c on c.certificate_id = p.major_id
where u.name in('RecoveryAndHardwareCore', 'RecoveryAndHardwareRead', 'RecoveryAndHardwareWrite') and
c.name = 'BitLockerManagement_CERT' and p.permission_name like 'CONTROL'
if(@count >= 3) select 1
else select 0
Ha a tanúsítvány érvényes, a szkript a értéket 1
adja vissza.
Lásd még
Ezekről az SQL-parancsokról az alábbi cikkekben talál további információt:
- SQL Server és adatbázis-titkosítási kulcsok
- Tanúsítvány létrehozása
- Biztonsági mentési tanúsítvány
- Főkulcs létrehozása
- Főkulcs biztonsági mentése
- Tanúsítványengedélyek megadása