SignByCert(Transact-SQL)
인증서를 사용하여 일반 텍스트에 서명하고 서명을 반환합니다.
구문
SignByCert ( certificate_ID , @cleartext [ , 'password' ] )
인수
certificate_ID
현재 데이터베이스에 있는 인증서 ID입니다. certificate_ID는 int입니다.@cleartext
서명될 데이터가 들어 있는 nvarchar, char, varchar 또는 nchar 형식의 변수입니다.'password'
인증서 개인 키를 암호화할 때 사용한 암호입니다. password는 nvarchar(128)입니다.
반환 형식
최대 크기가 8,000바이트인 varbinary
주의
인증서에 대한 CONTROL 권한이 필요합니다.
예
다음 예에서는 ABerglundCert07 인증서를 사용하여 @SensitiveData 의 텍스트에 서명합니다. 이 인증서는 먼저 암호 "pGFD4bb925DGvbd2439587y"를 사용하여 해독해야 합니다. 그런 다음 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