MSSQL 사용자 계정에 SQL Server Agent Job 권한 부여
DB Skill/MSSQL 2021. 8. 18. 23:19
원인
SQL Server Agent 서비스 제어는 SQL Server Agent Roles 권한이 부여되어 있거나 또는 sysadmin role 이 부여되어 있어야 합니다.
test_srv 계정은 SQL Sever Agent Roles 또는 sysadmin role 이 없습니다.
해결방법
방법1.
SSMS - Security - Logins - test_srv - User Mapping - msdb - SQLAgentUserRole 부여(필요에 따라 SQLAgentReaderRole, SQLAgentOperatorRole 부여 가능)
단, 운영체제 외부 리소스를 사용하기 위해서는 별도의 Credentials, SQL Server Proxy Accounts 를 설정할 수 있음.
test_srv 계정에 view database 권한 필요
USE [master] GO CREATE USER [test_srv] FOR LOGIN [test_srv] USE [msdb] GO CREATE USER [test_srv] FOR LOGIN [test_srv] ALTER ROLE [SQLAgentUserRole] ADD MEMBER [test_srv] |
만약 개체 존재 여부를 먼저 체크 하는 로직을 실행 한다면 아래 권한 추가
USE [msdb] GO GRANT SELECT ON sysjobs TO [test_srv] GRANT SELECT ON sysjobsteps TO [test_srv] |
방법2.
sysadmin role 부여 (권장하지 않음)
참고 : https://docs.microsoft.com/ko-kr/sql/ssms/agent/sql-server-agent-fixed-database-roles?view=sql-server-2017
'DB Skill > MSSQL' 카테고리의 다른 글
mssql table identity 확인 및 변경 ( DBCC CHECKIDENT 사용 ) (0) | 2021.08.18 |
---|---|
mssql sqlhandle기반 query plan 확인 (0) | 2021.08.18 |
mssql 메타 데이터 갱신 (sp_refreshsqlmodule) (0) | 2021.08.18 |
MSSQL에 MySQL Linked Server 등록 (0) | 2021.08.18 |
mssql procedure plan 이슈 확인 ( adhoc 쿼리가 plan을 재사용 하지 못하고 과도하게 단일 plan이 생성되어, 주기적 캐시 초기화 발생 ) (0) | 2021.08.18 |