SMO (Windows 인증)를 사용하여 SQL Server에 연결하고 데이터베이스 백업을 생성하는 예약 된 작업 (Windows 작업 스케줄러)이 있습니다. 지금까지이 작업은 관리자 계정으로 실행 중이며 대신 SYSTEM 계정을 사용하도록 변경하려고했습니다.
나는 예정된 작업을 바꾸었고 놀랍게도 즉시 사용할 수있었습니다.
이것이 왜 그런지 이해하고 싶습니다 . 시스템은 Windows Server 2012 R2이고 데이터베이스는 SQL Server 2012 (SP1) Express Edition입니다. 하나의 SQL 인증 사용자가 추가 된 표준 설치입니다.
SSMS에서 로그인 및 관련 서버 역할은 다음과 같습니다.
MS_PolicyEventProcessingLogin ## (비활성화 됨)
MS_PolicyTsqlExecutionLogin ## (비활성화 됨)
- MyServer \ Administrator (공개, sysadmin)
- MySqlAuthUser (공개)
- BUILTIN \ Users (공개)
- NT AUTHORITY \ SYSTEM (공개)
- NT SERVICE \ MSSQLSERVER (공개, sysadmin)
- NT SERVICE \ SQLWriter (공개, sysadmin)
- NT 서비스 \ Winmgmt (공개, sysadmin)
- sa (공개, sysadmin)
데이터베이스 자체에는 다음과 같은 사용자 및 역할이 있습니다.
- MySqlAuthUser (로그인 MySqlAuthUser) (db_owner)
- dbo (로그인 sa) (db_owner)
- 손님 (비활성화 됨)
- INFORMATION_SCHEMA (사용 안함)
- sys (사용 안함)
사용자 NT AUTHORITY \ SYSTEM의 "유효 권한"을 보면 다음과 같은 결과가 나타납니다.
- 가용성 그룹 변경
- SQL 연결
- 가용성 그룹 생성
- 모든 데이터베이스보기
- 서버 상태보기
NT AUTHORITY \ SYSTEM에 데이터베이스 백업 권한이있는 이유는 무엇입니까? 나는 그것이 기쁘지만 왜 그런지 이해하고 싶습니다 ...