SIGNBYCERT (Transact-SQL)

Gilt für:SQL ServerAzure SQL-DatenbankAzure SQL Managed Instance

Signiert Text mit einem Zertifikat und gibt die Signatur zurück.

Transact-SQL-Syntaxkonventionen

Syntax

SignByCert ( certificate_ID , @cleartext [ , 'password' ] )  

Hinweis

Informationen zum Anzeigen der Transact-SQL-Syntax für SQL Server 2014 (12.x) und früher finden Sie unter Dokumentation zu früheren Versionen.

Argumente

certificate_ID
Die ID eines Zertifikats in der aktuellen Datenbank. certificate_ID ist vom Datentyp int.

@cleartext
Eine Variable vom Typ nvarchar, char, varcharoder nchar, die mit einem Zertifikat signierte Daten enthält.

'password'
Das Kennwort, mit dem der private Schlüssel des Zertifikats verschlüsselt wurde. password ist vom Datentyp nvarchar(128).

Rückgabetypen

varbinary mit einer maximalen Größe von 8.000 Bytes.

Hinweise

Erfordert die CONTROL-Berechtigung für das Zertifikat.

Beispiele

Im folgenden Beispiel wird der Text in @SensitiveData mit dem Zertifikat ABerglundCert07 signiert, nachdem zuvor das Zertifikat mit dem Kennwort "pGFD4bb925DGvbd2439587y" entschlüsselt wurde. Anschließend werden der Klartext und die Signatur in die SignedData04-Tabelle eingefügt.

DECLARE @SensitiveData NVARCHAR(max);  
SET @SensitiveData = N'Saddle Price Points are   
    2, 3, 5, 7, 11, 13, 17, 19, 23, 29';  
INSERT INTO [SignedData04]  
    VALUES( N'data signed by certificate ''ABerglundCert07''',  
    @SensitiveData, SignByCert( Cert_Id( 'ABerglundCert07' ),   
    @SensitiveData, N'pGFD4bb925DGvbd2439587y' ));  
GO  

Siehe auch

VERIFYSIGNEDBYCERT (Transact-SQL)
CERT_ID (Transact-SQL)
CREATE CERTIFICATE (Transact-SQL)
ALTER CERTIFICATE (Transact-SQL)
DROP CERTIFICATE (Transact-SQL)
Verschlüsselungshierarchie