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
Baza danych SQL w usłudze Microsoft Fabric
Funkcja ta wykorzystuje klucz prywatny certyfikatu do odszyfrowania zaszyfrowanych danych.
Transact-SQL konwencje składni
Składnia
DecryptByCert ( certificate_ID , { 'ciphertext' | @ciphertext }
[ , { 'cert_password' | @cert_password } ] )
Arguments
certificate_ID
ID certyfikatu w bazie danych.
certificate_ID ma typ danych int .
szyfrogram
Ciąg danych zaszyfrowany kluczem publicznym certyfikatu.
@ciphertext
Zmienna typu varbinary zawierająca dane zaszyfrowane certyfikatem.
cert_password
Hasło używane do szyfrowania klucza prywatnego certyfikatu.
cert_password musi mieć format danych Unicode.
@cert_password
Zmienna typu nchar lub nvarchar zawierająca hasło używane do szyfrowania klucza prywatnego certyfikatu.
@cert_password musi mieć format danych Unicode.
Typy zwracane
varbinary o maksymalnym rozmiarze 8000 bajtów.
Uwagi
Funkcja ta odszyfrowuje dane za pomocą klucza prywatnego certyfikatu. Transformacje kryptograficzne wykorzystujące klucze asymetryczne zużywają znaczne zasoby. Dlatego sugerujemy, aby deweloperzy unikali używania ENCRYPTBYCERT i DECRYPTBYCERT do rutynowego szyfrowania / deszyfrowania danych użytkowników.
Permissions
DECRYPTBYCERT wymaga uprawnienia CONTROL do certyfikatu.
Przykłady
Ten przykład wybiera wiersze z oznaczonych [AdventureWorks2022].[ProtectedData04] jako dane pierwotnie zaszyfrowane przez certyfikat JanainaCert02. Przykład najpierw odszyfrowuje klucz prywatny certyfikatu JanainaCert02 hasłem do certyfikatu pGFD4bb925DGvbd2439587y. Następnie przykład odszyfrowuje tekst zaszyfrowany tym kluczem prywatnym. Przykład konwertuje odszyfrowane dane z varbinary na nvarchar.
SELECT CONVERT(NVARCHAR(max), DecryptByCert(Cert_Id('JanainaCert02'),
ProtectedData, N'pGFD4bb925DGvbd2439587y'))
FROM [AdventureWorks2022].[ProtectedData04]
WHERE Description
= N'data encrypted by certificate '' JanainaCert02''';
GO
Zobacz też
ENCRYPTBYCERT (Transact-SQL)
UTWÓRZ CERTYFIKAT (Transact-SQL)
CERTYFIKAT ALTERA (Transact-SQL)
CERTYFIKAT DROP (Transact-SQL)
certyfikat kopii zapasowej (Transact-SQL)
Hierarchia szyfrowania