2012-09-26 3 views
0

이렇게해야하는지 잘 모르겠습니다. 내가 xp_cmdshell 절차를 가지고 무엇인가를하려 할 때마다 거의 언제나 Access Denied이 나옵니다.SQL Server : xp_cmdshell에는 매우 제한된 권한이 있습니다.

예를 들어 새로운 .txt 파일을 만들 수 없으며 새 사용자를 만들 수없고 아무 것도 만들 수 없습니다. Windows 관리자 사용자로 로그인했습니다.

관리자 권한으로이 절차를 실행할 수있는 방법이 있습니까?

답변

0

XP_CmdShell은 SQL Server 서비스를 실행하는 서비스 계정의 컨텍스트에서 실행됩니다. 서비스 계정에는 외부 리소스에 대한 사용 권한이 필요합니다.

그러나 xp_cmdshell을 사용하도록 설정하는 것이 좋습니다. 보안 구멍이 많이 열립니다. 예를 들어 앱에 알 수없는 SQL 삽입 가능성이있는 경우 해커가 네트워크에서 여러 가지 일을 할 수 있습니다.

외부 리소스를 사용해야하는 경우 CLR 절차를 포함하거나 CMDEXEC 단계를 실행하는 작업을 호출하는 것이 좋습니다.

0

xp_cmdshell Windows 로그인이 실행되면서 가장 컨텍스트에서 실행됩니다. (예 : 공유에있는 파일에 액세스 할 때 사용자를 추가하는 것처럼 AD에서의 작업) 제한된 위임이 제한 될 수 있으므로 제한된 위임이 구성되지 않기 때문에 액세스가 거부 될 수 있습니다 모든 자원에.

관련 문제