Compartilhar via


SignByCert (Transact-SQL)

Assina texto com um certificado e retorna a assinatura.

Ícone de vínculo de tópicoConvenções de sintaxe Transact-SQL

Sintaxe

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

Argumentos

  • certificate_ID
    É a ID de um certificado no banco de dados atual. certificate_ID é int.

  • @cleartext
    É uma variável do tipo nvarchar, char, varcharou nchar que contém os dados que serão assinados.

  • 'password'
    É a senha com que a chave particular do certificado foi criptografada. password é nvarchar(128).

Tipos de retorno

varbinary com no máximo 8.000 bytes.

Comentários

Requer a permissão CONTROL no certificado.

Exemplos

O exemplo a seguir assina o texto em @SensitiveData com o certificado ABerglundCert07, depois de descriptografar o certificado com a senha "pGFD4bb925DGvbd2439587y". Sem seguida, ele insere o texto não criptografado e a assinatura em tabela 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