다음을 통해 공유


쿼리 알림 사용 권한

알림 구독 요청이 포함된 명령을 실행하는 데이터베이스 사용자에는 명령이 실행되는 데이터베이스에 대한 SUBSCRIBE QUERY NOTIFICATIONS 권한이 부여되어야 합니다. 다음 예에서는 GRANT 문에 대한 구문을 보여 줍니다.

use dbname
GRANT SUBSCRIBE QUERY NOTIFICATIONS TO database_principal

알림 구독은 구독 등록 명령을 실행한 데이터베이스 보안 주체에 소유됩니다. 데이터베이스에서 보안 주체를 삭제하면 알림 메시지를 생성하지 않고 이 보안 주체에 의해 소유되는 알림 구독이 제거됩니다. 하지만 삭제 작업은 DROP 명령의 결과로 삭제된 쿼리 알림 구독의 개수가 포함된 경고를 생성합니다.

알림을 만드는 보안 주체는 SqlDependency를 사용하여 알림을 성공적으로 만들기 위해 쿼리가 실행되는 데이터베이스에서 다음과 같은 사용 권한을 갖고 있어야 합니다.

  • CREATE SERVICE

  • CREATE QUEUE

  • CREATE PROCEDURE

알림을 받으려면 구독 사용자에게 구독 데이터베이스의 QueryNotificationErrorsQueue에 대한 RECEIVE 권한이 있어야 합니다.

GRANT RECEIVE ON QueryNotificationErrorsQueue TO login

또한 대상 서비스에 대한 SEND 권한이 필요합니다.

GRANT SEND ON SERVICE:://theservice to login

쿼리를 실행하는 사용자에게 알림을 위해 액세스하는 테이블에 대한 SELECT 권한이 있어야 합니다.

자세한 내용은 관리: 방법 도움말 항목(Service Broker)를 참조하십시오.