Aracılığıyla paylaş


ENCRYPTBYCERT (Transact-SQL)

Şunlar için geçerlidir:SQL ServerAzure SQL VeritabanıAzure SQL Yönetilen ÖrneğiMicrosoft Fabric'te SQL veritabanı

Verileri bir sertifikanın açık anahtarıyla şifreler.

Transact-SQL söz dizimi kuralları

Sözdizimi

EncryptByCert ( certificate_ID , { 'cleartext' | @cleartext } )  

Arguments

certificate_ID
Veritabanındaki bir sertifikanın kimliği. Int.

Açık metin
Sertifika ile şifrelenecek bir veri dizisi.

@cleartext
Aşağıdaki türlerden birinden biriyle ve sertifikanın açık anahtarıyla şifrelenecek verileri içeren bir değişken:

  • nvarchar
  • char
  • varchar
  • binary
  • varbinary
  • nchar

Dönüş Türleri

varbinary , maksimum 8.000 bayt boyutunda.

Açıklamalar

Bu fonksiyon, verileri sertifikanın açık anahtarıyla şifreler. Şifreli metin yalnızca ilgili özel anahtarla çözülebilir. Bu asimetrik dönüşümler, simetrik anahtar kullanılarak şifreleme ve şifre çözme ile karşılaştırıldığında maliyetlidir. Bu nedenle, büyük veri setleriyle çalışırken asimetrik şifreleme önerilmez.

Örnekler

Bu örnek, sertifika ile JanainaCert02birlikte depolanan @cleartext düz metni şifreler. Şifrelenmiş veriler tabloya ProtectedData04eklenir.

INSERT INTO [AdventureWorks2022].[ProtectedData04]   
    VALUES ( N'Data encrypted by certificate ''Shipping04''',  
    EncryptByCert(Cert_ID('JanainaCert02'), @cleartext) );  
GO  

Ayrıca Bkz.

DECRYPTBYCERT (Transact-SQL)
SERTİFİKA OLUŞTUR (Transact-SQL)
SERTİFİKAYI DEĞİŞTİR (Transact-SQL)
DROP CERTİ (Transact-SQL)
YEDEKLEME SERTIFIKASI (Transact-SQL)
Şifreleme Hiyerarşisi