ADD SIGNATURE(Transact-SQL)

업데이트: 2006년 7월 17일

저장 프로시저, 함수, 어셈블리 또는 트리거에 디지털 서명을 추가합니다.

항목 링크 아이콘Transact-SQL 구문 표기 규칙

구문

ADD [ COUNTER ] SIGNATURE TO module_class::module_name 
    BY <crypto_list> [ ,...n ]

<crypto_list> ::=
    CERTIFICATE cert_name
    | CERTIFICATE cert_name [ WITH PASSWORD = 'password' ]
    | CERTIFICATE cert_name WITH SIGNATURE = signed_blob 
    | ASYMMETRIC KEY Asym_Key_Name
    | ASYMMETRIC KEY Asym_Key_Name [ WITH PASSWORD = 'password']
    | ASYMMETRIC KEY Asym_Key_Name WITH SIGNATURE = signed_blob

인수

  • module_class
    서명을 추가할 모듈의 클래스입니다. 스키마 범위 모듈에 대한 기본값은 OBJECT입니다.
  • module_name
    서명하거나 연대 서명할 저장 프로시저, 함수, 어셈블리 또는 트리거의 이름입니다.
  • CERTIFICATE cert_name
    저장 프로시저, 함수, 어셈블리 또는 트리거에 서명하거나 연대 서명하는 데 사용할 인증서의 이름입니다.
  • WITH PASSWORD ='password'
    인증서의 개인 키나 비대칭 키의 암호를 해독하는 데 필요한 암호입니다. 이 절은 개인 키가 데이터베이스 마스터 키로 보호되지 않는 경우에만 필요합니다.
  • SIGNATURE = signed_blob
    모듈의 서명된 BLOB(Binary Large Object)를 지정합니다. 이 절은 개인 키를 포함하지 않고 모듈을 제공하려는 경우 유용합니다. 이 절을 사용할 때는 모듈, 서명 및 공개 키만 있으면 서명된 BLOB(Binary Large Object)을 데이터베이스에 추가할 수 있습니다. signed_blob은 16진수 형식의 BLOB 자체입니다.
  • ASYMMETRIC KEY Asym_Key_Name
    저장 프로시저, 함수, 어셈블리 또는 트리거에 서명하거나 연대 서명하는 데 사용할 비대칭 키의 이름입니다.

주의

서명하거나 연대 서명할 모듈과 모듈에 서명하는 데 사용되는 인증서 또는 비대칭 키가 있어야 합니다. 모듈의 모든 문자는 서명 계산에 포함됩니다. 여기에는 캐리지 리턴과 줄 바꿈도 포함됩니다.

모듈에 서명하거나 연대 서명하는 데 사용되는 인증서와 비대칭 키의 수는 제한되지 않습니다.

모듈이 변경되면 모듈의 서명이 삭제됩니다.

모듈에 EXECUTE AS 절이 포함되어 있으면 보안 주체의 SID(보안 ID)도 서명 프로세스의 일부로 포함됩니다.

ms181700.Caution(ko-kr,SQL.90).gif주의:
모듈 서명은 사용 권한을 부여하기 위한 용도로만 사용해야 하며 사용 권한을 거부하거나 취소하기 위한 용도로는 사용하지 않아야 합니다.

서명 정보는 sys.crypt_properties 카탈로그 뷰에 표시됩니다.

사용 권한

개체에 대한 ALTER 권한과 인증서 또는 비대칭 키에 대한 CONTROL 권한이 필요합니다. 연결된 개인 키가 암호로 보호되어 있으면 사용자도 암호가 있어야 합니다.

다음 예에서는 HumanResourcesDP 인증서를 사용하여 HumanResources.uspUpdateEmployeeLogin 저장 프로시저에 서명합니다.

USE AdventureWorks;
ADD SIGNATURE TO HumanResources.uspUpdateEmployeeLogin 
    BY CERTIFICATE HumanResourcesDP;
GO

참고 항목

참조

sys.crypt_properties(Transact-SQL)
DROP SIGNATURE(Transact-SQL)

도움말 및 정보

SQL Server 2005 지원 받기

변경 내역

릴리스 내역

2006년 7월 17일

변경된 내용
  • 사용 권한 요구 사항 및 구문을 수정했으며 서명 가능한 엔티티 목록에 어셈블리를 추가했습니다.