Partilhar via


SIGNBYCERT (Transact-SQL)

Aplica-se a: SQL Server Banco de Dados SQL do Azure Instância Gerenciada de SQL do Azure

Assina texto com um certificado e retorna a assinatura.

Convenções de sintaxe de 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, varchar ou nchar que contém os dados que serão assinados.

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

Tipos de retorno

varbinary com um tamanho máximo de 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". Em 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  

Consulte Também

VERIFYSIGNEDBYCERT (Transact-SQL)
CERT_ID (Transact-SQL)
CREATE CERTIFICATE (Transact-SQL)
ALTER CERTIFICATE (Transact-SQL)
DROP CERTIFICATE (Transact-SQL)
Hierarquia de criptografia