SignByCert (Transact-SQL)
Assina texto com um certificado e retorna a assinatura.
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