Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
SQL database w usłudze Microsoft Fabric
Zmienia właściwości klucza symetrycznego.
Transact-SQL konwencje składni
Note
Ta składnia nie jest obsługiwana przez bezserwerową pulę SQL w usłudze Azure Synapse Analytics.
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
To nazwa, za pomocą której klucz symetryczny do zmiany jest znany w bazie danych.
DODAWANIE SZYFROWANIA WEDŁUG
Dodaje szyfrowanie przy użyciu określonej metody.
UPUŚĆ SZYFROWANIE WEDŁUG
Pomiń szyfrowanie przez określoną metodę. Nie można usunąć wszystkich szyfrowania z klucza symetrycznego.
CERTYFIKAT Certificate_name
Określa certyfikat używany do szyfrowania klucza symetrycznego. Ten certyfikat musi już istnieć w bazie danych.
HASŁO ='hasło'
Określa hasło używane do szyfrowania klucza symetrycznego.
hasło musi spełniać wymagania zasad haseł systemu Windows komputera z uruchomionym wystąpieniem programu SQL Server.
KLUCZ SYMETRYCZNY Symmetric_Key_Name
Określa klucz symetryczny używany do szyfrowania zmienianego klucza symetrycznego. Ten klucz symetryczny musi już istnieć w bazie danych i musi być otwarty.
ASYM_KEY_NAME KLUCZA ASYMETRYCZNEGO
Określa klucz asymetryczny używany do szyfrowania zmienianego klucza symetrycznego. Ten klucz asymetryczny musi już istnieć w bazie danych.
Remarks
Caution
Gdy klucz symetryczny jest szyfrowany przy użyciu hasła zamiast klucza publicznego klucza głównego bazy danych, używany jest algorytm szyfrowania TRIPLE_DES. W związku z tym klucze tworzone za pomocą silnego algorytmu szyfrowania, takiego jak AES, są zabezpieczone przez słabszy algorytm.
Aby zmienić szyfrowanie klucza symetrycznego, użyj fraz ADD ENCRYPTION i DROP ENCRYPTION. Nigdy nie jest możliwe, aby klucz był całkowicie bez szyfrowania. Z tego powodu najlepszym rozwiązaniem jest dodanie nowej formy szyfrowania przed usunięciem starej formy szyfrowania.
Aby chronić materiał klucza symetrycznego, program SQL Server i usługa Azure SQL przechowują materiał klucza w postaci zaszyfrowanej. W przeszłości to szyfrowanie korzystało z trybu wypełnienia PKCS#1 w wersji 1.5; Począwszy od poziomu zgodności bazy danych 170, szyfrowanie używa trybu wypełnienia OAEP-256 na potrzeby szyfrowania według certyfikatu lub klucza asymetrycznego.
Aby zmienić właściciela klucza symetrycznego, użyj polecenia ALTER AUTHORIZATION.
Note
Algorytm RC4 jest obsługiwany tylko w przypadku zgodności z poprzednimi wersjami. Nowy materiał można szyfrować tylko przy użyciu wersji RC4 lub RC4_128, gdy baza danych jest zgodna z poziomem zgodności 90 lub 100. (Niezalecane). Zamiast tego użyj nowszego algorytmu, takiego jak jeden z algorytmów AES. W programie SQL Server 2012 (11.x) materiał zaszyfrowany przy użyciu wersji RC4 lub RC4_128 można odszyfrować na dowolnym poziomie zgodności.
Permissions
Wymaga uprawnienia ALTER dla klucza symetrycznego. W przypadku dodawania szyfrowania przy użyciu certyfikatu lub klucza asymetrycznego wymagane jest uprawnienie WYŚWIETL DEFINICJĘ certyfikatu lub klucza asymetrycznego. W przypadku porzucania szyfrowania przy użyciu certyfikatu lub klucza asymetrycznego wymagane jest uprawnienie CONTROL certyfikatu lub klucza asymetrycznego.
Examples
Poniższy przykład zmienia metodę szyfrowania używaną do ochrony klucza symetrycznego. Klucz JanainaKey043 symetryczny jest szyfrowany przy użyciu certyfikatu Shipping04 podczas tworzenia klucza. Ponieważ klucz nigdy nie może być przechowywany niezaszyfrowany, w tym przykładzie szyfrowanie jest dodawane przez hasło, a następnie szyfrowanie jest usuwane przez certyfikat.
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;
Zobacz też
TWORZENIE KLUCZA SYMETRYCZNEGO (Transact-SQL)
OTWÓRZ KLUCZ SYMETRYCZNY (Transact-SQL)
ZAMKNIJ KLUCZ SYMETRYCZNY (Transact-SQL)
ZRZUĆ KLUCZ SYMETRYCZNY (Transact-SQL)
Hierarchia szyfrowania