Megosztás a következőn keresztül:


ALTER SZIMMETRIKUS KULCS (Transact-SQL)

A következőkre vonatkozik:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsSQL-adatbázis a Microsoft Fabricben

Módosítja a szimmetrikus kulcs tulajdonságait.

Transact-SQL szintaxis konvenciók

Note

Ezt a szintaxist az Azure Synapse Analytics kiszolgáló nélküli SQL-készlete nem támogatja.

Syntax

ALTER SYMMETRIC KEY Key_name <alter_option>  
  
<alter_option> ::=  
   ADD ENCRYPTION BY <encrypting_mechanism> [ , ... n ]  
   |   
   DROP ENCRYPTION BY <encrypting_mechanism> [ , ... n ]  
<encrypting_mechanism> ::=  
   CERTIFICATE certificate_name  
   |  
   PASSWORD = 'password'  
   |  
   SYMMETRIC KEY Symmetric_Key_Name  
   |  
   ASYMMETRIC KEY Asym_Key_Name  

Arguments

Key_name
Az a név, amellyel a módosítandó szimmetrikus kulcs ismert az adatbázisban.

TITKOSÍTÁS HOZZÁADÁSA A KÖVETKEZŐ SZERINT:
Titkosítás hozzáadása a megadott módszerrel.

TITKOSÍTÁS CSÖKKENTÉSE
A megadott módszerrel elveti a titkosítást. Szimmetrikus kulcsból nem távolíthatja el az összes titkosítást.

TANÚSÍTVÁNY Certificate_name
Megadja a szimmetrikus kulcs titkosításához használt tanúsítványt. Ennek a tanúsítványnak már léteznie kell az adatbázisban.

JELSZÓ = 'jelszó'
Megadja a szimmetrikus kulcs titkosításához használt jelszót. a jelszónak meg kell felelnie az SQL Server-példányt futtató számítógép Windows jelszóházirend-követelményeinek.

SZIMMETRIKUS KULCS SYMMETRIC_KEY_NAME
Megadja a módosítandó szimmetrikus kulcs titkosításához használt szimmetrikus kulcsot. Ennek a szimmetrikus kulcsnak már léteznie kell az adatbázisban, és nyitva kell lennie.

ASZIMMETRIKUS KULCS ASYM_KEY_NAME
Megadja a módosítandó szimmetrikus kulcs titkosításához használt aszimmetrikus kulcsot. Ennek az aszimmetrikus kulcsnak már léteznie kell az adatbázisban.

Remarks

Caution

Ha egy szimmetrikus kulcsot jelszóval titkosít a rendszer az adatbázis főkulcsának nyilvános kulcsa helyett, a rendszer a TRIPLE_DES titkosítási algoritmust használja. Emiatt az erős titkosítási algoritmussal, például az AES-sel létrehozott kulcsokat egy gyengébb algoritmus védi.

A szimmetrikus kulcs titkosításának módosításához használja az ADD ENCRYPTION és a DROP ENCRYPTION kifejezéseket. Soha nem lehetséges, hogy egy kulcs teljes mértékben titkosítás nélkül legyen. Ezért ajánlott az új titkosítási formát hozzáadni, mielőtt eltávolítaná a régi titkosítási formát.

A szimmetrikus kulcs kulcsanyagának védelme érdekében az SQL Server és az Azure SQL titkosított formában tárolja a kulcsanyagot. Korábban ez a titkosítás a PKCS#1 v1.5 párnázási módot használja; A 170-es adatbáziskompatibilitási szinttől kezdve a titkosítás OAEP-256 párnázási módot használ a tanúsítvány vagy aszimmetrikus kulcs általi titkosításhoz.

Szimmetrikus kulcs tulajdonosának módosításához használja az ALTER AUTHORIZATION parancsot.

Note

Az RC4 algoritmus csak a visszamenőleges kompatibilitás érdekében támogatott. Az új anyagok csak RC4 vagy RC4_128 használatával titkosíthatók, ha az adatbázis kompatibilitási szintje 90 vagy 100. (Nem ajánlott.) Használjon helyette egy újabb algoritmust, például az egyik AES-algoritmust. Az SQL Server 2012 (11.x) RC4 vagy RC4_128 használatával titkosított anyagai bármilyen kompatibilitási szinten visszafejthetők.

Permissions

Alter engedély szükséges a szimmetrikus kulcshoz. Ha tanúsítványsal vagy aszimmetrikus kulccsal ad hozzá titkosítást, a tanúsítványhoz vagy az aszimmetrikus kulcshoz VIEW DEFINITION engedély szükséges. Ha tanúsítványsal vagy aszimmetrikus kulccsal ejti el a titkosítást, control engedélyt kell kérnie a tanúsítványon vagy az aszimmetrikus kulcson.

Examples

Az alábbi példa megváltoztatja a szimmetrikus kulcsok védelmére használt titkosítási módszert. A szimmetrikus kulcs JanainaKey043 tanúsítvány Shipping04 használatával van titkosítva a kulcs létrehozásakor. Mivel a kulcs soha nem tárolható titkosítatlanul, ebben a példában a titkosítást jelszóval adja hozzá, majd a titkosítást a tanúsítvány eltávolítja.

CREATE SYMMETRIC KEY JanainaKey043 WITH ALGORITHM = AES_256   
    ENCRYPTION BY CERTIFICATE Shipping04;  
-- Open the key.   
OPEN SYMMETRIC KEY JanainaKey043 DECRYPTION BY CERTIFICATE Shipping04  
    WITH PASSWORD = '<enterStrongPasswordHere>';   
-- First, encrypt the key with a password.  
ALTER SYMMETRIC KEY JanainaKey043   
    ADD ENCRYPTION BY PASSWORD = '<enterStrongPasswordHere>';  
-- Now remove encryption by the certificate.  
ALTER SYMMETRIC KEY JanainaKey043   
    DROP ENCRYPTION BY CERTIFICATE Shipping04;  
CLOSE SYMMETRIC KEY JanainaKey043;  

Lásd még:

SZIMMETRIKUS KULCS LÉTREHOZÁSA (Transact-SQL)
SZIMMETRIKUS KULCS MEGNYITÁSA (Transact-SQL)
SZIMMETRIKUS KULCS BEZÁRÁSA (Transact-SQL)
SZIMMETRIKUS BILLENTYŰ (Transact-SQL)
Titkosítási hierarchia