Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Simetrik anahtarın özelliklerini değiştirir.
Transact-SQL söz dizimi kuralları
Note
Bu söz dizimi, Azure Synapse Analytics'teki sunucusuz SQL havuzu tarafından desteklenmez.
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
Değiştirilecek simetrik anahtarın veritabanında bilindiği addır.
ŞIFRELEME EKLEME ÖLÇÜTÜ
Belirtilen yöntemi kullanarak şifreleme ekler.
ŞIFRELEMEYI BıRAKMA ÖLÇÜTÜ
Belirtilen yöntemle şifrelemeyi bırakır. Simetrik anahtardan tüm şifrelemeleri kaldıramazsınız.
SERTIFIKA Certificate_name
Simetrik anahtarı şifrelemek için kullanılan sertifikayı belirtir. Bu sertifika veritabanında zaten mevcut olmalıdır.
PAROLA ='password'
Simetrik anahtarı şifrelemek için kullanılan parolayı belirtir.
parola , SQL Server örneğini çalıştıran bilgisayarın Windows parola ilkesi gereksinimlerini karşılamalıdır.
SIMETRIK ANAHTAR Symmetric_Key_Name
Değiştirilen simetrik anahtarı şifrelemek için kullanılan simetrik anahtarı belirtir. Bu simetrik anahtarın veritabanında zaten mevcut olması ve açık olması gerekir.
ASIMETRIK ANAHTAR Asym_Key_Name
Değiştirilen simetrik anahtarı şifrelemek için kullanılan asimetrik anahtarı belirtir. Bu asimetrik anahtar veritabanında zaten mevcut olmalıdır.
Remarks
Caution
Bir simetrik anahtar, veritabanı ana anahtarının ortak anahtarı yerine parolayla şifrelendiğinde, TRIPLE_DES şifreleme algoritması kullanılır. Bu nedenle, AES gibi güçlü bir şifreleme algoritmasıyla oluşturulan anahtarların güvenliği daha zayıf bir algoritmayla sağlanır.
Simetrik anahtarın şifrelemesini değiştirmek için ADD ENCRYPTION ve DROP ENCRYPTION tümceciklerini kullanın. Bir anahtarın tamamen şifreleme olmadan olması asla mümkün değildir. Bu nedenle en iyi yöntem, eski şifreleme biçimini kaldırmadan önce yeni şifreleme biçimini eklemektir.
Simetrik anahtarın anahtar malzemesini korumak için SQL Server ve Azure SQL anahtar malzemesini şifrelenmiş biçimde depolar. Geçmişte bu şifreleme PKCS#1 v1.5 doldurma modunu kullanmıştı; veritabanı uyumluluk düzeyi 170'den başlayarak şifreleme, sertifikaya veya asimetrik anahtara göre şifreleme için OAEP-256 doldurma modunu kullanır.
Simetrik anahtarın sahibini değiştirmek için ALTER AUTHORIZATION kullanın.
Note
RC4 algoritması yalnızca geriye dönük uyumluluk için desteklenir. Yeni malzemeler yalnızca veritabanı uyumluluk düzeyi 90 veya 100 olduğunda RC4 veya RC4_128 kullanılarak şifrelenebilir. (Önerilmez.) Bunun yerine AES algoritmalarından biri gibi daha yeni bir algoritma kullanın. RC4 veya RC4_128 kullanılarak şifrelenen SQL Server 2012 (11.x) malzemenin şifresi herhangi bir uyumluluk düzeyinde çözülebilir.
Permissions
Simetrik anahtar üzerinde ALTER izni gerektirir. Bir sertifika veya asimetrik anahtar tarafından şifreleme ekleniyorsa, sertifika veya asimetrik anahtar üzerinde VIEW DEFINITION izni gerekir. Şifreleme bir sertifika veya asimetrik anahtar tarafından bırakılıyorsa, sertifika veya asimetrik anahtar üzerinde CONTROL izni gerektirir.
Examples
Aşağıdaki örnek, simetrik anahtarı korumak için kullanılan şifreleme yöntemini değiştirir. Simetrik anahtar, anahtar JanainaKey043 oluşturulduğunda sertifika Shipping04 kullanılarak şifrelenir. Anahtar hiçbir zaman şifrelenmemiş olarak depolanamadığından, bu örnekte şifreleme parolayla eklenir ve ardından şifreleme sertifikayla kaldırılır.
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;
Ayrıca Bkz.
SIMETRİK ANAHTAR OLUŞTUR (Transact-SQL)
AÇIK SİMETRİK ANAHTAR (Transact-SQL)
SIMETRIK ANAHTARı KAPAT (Transact-SQL)
DROP SIMETRIK ANAHTAR (Transact-SQL)
Şifreleme Hiyerarşisi