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 2016 (13.x) és újabb verziók
Azure SQL Database
Felügyelt Azure SQL-példány
Módosítja az adatbázis oszloptitkosítási kulcsát, hozzáad vagy elvet egy titkosított értéket. Az oszloptitkosítási kulcs legfeljebb két értékkel rendelkezhet, ami lehetővé teszi a megfelelő oszlop főkulcsának elforgatását. Oszloptitkosítási kulcsot használunk az oszlopok Always Encrypted vagy Always Encrypted biztonságos enklávékkal történő titkosításához. Az oszloptitkosítási kulcs értékének hozzáadása előtt meg kell adnia azt az oszlop főkulcsát, amelyet az SQL Server Management Studio vagy a CREATE MASTER KEY utasítással az érték titkosításához használtak.
Transact-SQL szintaxis konvenciók
Szemantika
ALTER COLUMN ENCRYPTION KEY key_name
[ ADD | DROP ] VALUE
(
COLUMN_MASTER_KEY = column_master_key_name
[, ALGORITHM = 'algorithm_name' , ENCRYPTED_VALUE = varbinary_literal ]
) [;]
Arguments
key_name
A módosított oszloptitkosítási kulcs.
column_master_key_name
Megadja az oszloptitkosítási kulcs (CEK) titkosításához használt fő oszlopkulcs (CMK) nevét.
algorithm_name
Az érték titkosításához használt titkosítási algoritmus neve. A rendszerszolgáltatók algoritmusának RSA_OAEP kell lennie. Ez az argumentum nem érvényes oszloptitkosítási kulcs értékének elvetésekor.
varbinary_literal
A megadott fő titkosítási kulccsal titkosított CEK BLOB. Ez az argumentum nem érvényes oszloptitkosítási kulcs értékének elvetésekor.
Figyelmeztetés
Ebben az utasításban soha ne adjon át egyszerű szöveges CEK-értékeket. Ennek a funkciónak az előnyei lesznek.
Megjegyzések
Az oszloptitkosítási kulcs általában csak egy titkosított értékkel jön létre. Ha egy oszlop főkulcsát el kell forgatni (az aktuális oszlop főkulcsát le kell cserélni az új oszlop főkulcsával), hozzáadhatja az oszloptitkosítási kulcs új értékét, amely az új oszlop főkulcsával van titkosítva. Ez a munkafolyamat lehetővé teszi, hogy az ügyfélalkalmazások hozzáférhessenek az oszloptitkosítási kulccsal titkosított adatokhoz, míg az új oszlop főkulcsa elérhetővé válik az ügyfélalkalmazások számára. Egy Always Encrypted-kompatibilis illesztőprogram egy olyan ügyfélalkalmazásban, amely nem rendelkezik hozzáféréssel az új főkulcshoz, a régi oszlop főkulcsával titkosított oszloptitkosítási kulcs értékét használhatja a bizalmas adatok eléréséhez. Az Always Encrypted által támogatott titkosítási algoritmusoknak 256 bites egyszerű szöveges értékre van szükségük.
Ajánlott olyan eszközöket használni, mint az SQL Server Management Studio (SSMS) vagy a PowerShell az oszlop főkulcsainak elforgatásához. Lásd: Always Encrypted kulcsok elforgatása az SQL Server Management Studióval és Az Always Encrypted kulcsok elforgatása a PowerShell használatával.
Titkosított értéket kell létrehozni egy kulcstároló-szolgáltatóval, amely az oszlop főkulcsát tartalmazó kulcstárolót foglalja magában.
Az oszlop főkulcsai a következő okokból vannak elforgatva:
- Előfordulhat, hogy a megfelelőségi előírások megkövetelik a kulcsok rendszeres elforgatását.
- Az oszlop főkulcsa sérült, és biztonsági okokból el kell forgatni.
- Az oszloptitkosítási kulcsok megosztásának engedélyezése vagy letiltása biztonságos enklávéval a kiszolgálóoldalon. Ha például az aktuális oszlop főkulcsa nem támogatja az enklávészámítást (nincs definiálva a ENCLAVE_COMPUTATIONS tulajdonsággal), és engedélyezni szeretné az enklávészámítást az oszloptitkosítási kulccsal védett oszlopokon, amelyet az oszlop főkulcsa titkosít, az oszlop főkulcsát az új kulcsra kell cserélnie az ENCLAVE_COMPUTATIONS tulajdonságra. Az Always Encrypted kulcskezelésének áttekintése és az Always Encrypted kulcsainak biztonságos enklávékkal történő kezelése.
A sys.columns (Transact-SQL), sys.column_encryption_keys (Transact-SQL) és sys.column_encryption_key_values (Transact-SQL) használatával megtekintheti az oszloptitkosítási kulcsokkal kapcsolatos információkat.
Permissions
Az adatbázis BÁRMELY OSZLOPTITKOSÍTÁSI KULCS engedélyének módosítása szükséges.
Példák
A. Oszloptitkosítási kulcs értékének hozzáadása
Az alábbi példa egy oszloptitkosítási MyCEKkulcsot módosít.
ALTER COLUMN ENCRYPTION KEY MyCEK
ADD VALUE
(
COLUMN_MASTER_KEY = MyCMK2,
ALGORITHM = 'RSA_OAEP',
ENCRYPTED_VALUE = 0x016E000001630075007200720065006E00740075007300650072002F006D0079002F0064006500650063006200660034006100340031003000380034006200350033003200360066003200630062006200350030003600380065003900620061003000320030003600610037003800310066001DDA6134C3B73A90D349C8905782DD819B428162CF5B051639BA46EC69A7C8C8F81591A92C395711493B25DCBCCC57836E5B9F17A0713E840721D098F3F8E023ABCDFE2F6D8CC4339FC8F88630ED9EBADA5CA8EEAFA84164C1095B12AE161EABC1DF778C07F07D413AF1ED900F578FC00894BEE705EAC60F4A5090BBE09885D2EFE1C915F7B4C581D9CE3FDAB78ACF4829F85752E9FC985DEB8773889EE4A1945BD554724803A6F5DC0A2CD5EFE001ABED8D61E8449E4FAA9E4DD392DA8D292ECC6EB149E843E395CDE0F98D04940A28C4B05F747149B34A0BAEC04FFF3E304C84AF1FF81225E615B5F94E334378A0A888EF88F4E79F66CB377E3C21964AACB5049C08435FE84EEEF39D20A665C17E04898914A85B3DE23D56575EBC682D154F4F15C37723E04974DB370180A9A579BC84F6BC9B5E7C223E5CBEE721E57EE07EFDCC0A3257BBEBF9ADFFB00DBF7EF682EC1C4C47451438F90B4CF8DA709940F72CFDC91C6EB4E37B4ED7E2385B1FF71B28A1D2669FBEB18EA89F9D391D2FDDEA0ED362E6A591AC64EF4AE31CA8766C259ECB77D01A7F5C36B8418F91C1BEADDD4491C80F0016B66421B4B788C55127135DA2FA625FB7FD195FB40D90A6C67328602ECAF3EC4F5894BFD84A99EB4753BE0D22E0D4DE6A0ADFEDC80EB1B556749B4A8AD00E73B329C95827AB91C0256347E85E3C5FD6726D0E1FE82C925D3DF4A9
);
GO
B. Oszloptitkosítási kulcs értékének elvetése
Az alábbi példa egy érték elvetésével megváltoztat egy oszloptitkosítási MyCEK kulcsot.
ALTER COLUMN ENCRYPTION KEY MyCEK
DROP VALUE
(
COLUMN_MASTER_KEY = MyCMK
);
GO
Lásd még:
OSZLOPTITKOSÍTÁSI KULCS LÉTREHOZÁSA (Transact-SQL)
DROP COLUMN ENCRYPTION KEY (Transact-SQL)
CREATE COLUMN MASTER KEY (Transact-SQL)
Always Encrypted (adatbázismotor)
sys.column_encryption_keys (Transact-SQL)
sys.column_encryption_key_values (Transact-SQL)
sys.columns (Transact-SQL)
Mindig titkosítva
Az Always Encrypted kulcskezelésének áttekintése
Always Encrypted kulcsainak kezelése biztonságos enklávékkal