SignByCert (Transact-SQL)

Signe du texte avec un certificat et renvoie la signature.

Icône Lien de rubriqueConventions de la syntaxe de Transact-SQL

Syntaxe

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

Arguments

  • certificate_ID
    ID d'un certificat de la base de données active. certificate_ID est de type int.

  • @cleartext
    Variable de type nvarchar, char, varchar ou nchar qui contient des données qui seront signées.

  • 'password'
    Mot de passe avec lequel la clé privée du certificat a été chiffrée. password est de type nvarchar(128).

Types renvoyés

varbinary de 8 000 octets au maximum.

Notes

Nécessite l'autorisation CONTROL sur le certificat.

Exemples

L'exemple suivant signe le texte dans @SensitiveData avec le certificat ABerglundCert07, en ayant auparavant déchiffré le certificat avec le mot de passe « pGFD4bb925DGvbd2439587y ». Il insère ensuite le texte en clair et la signature dans la table SignedData04.

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