以系统管理员和XP_CMDSHELL的身份执行

时间:2018-10-26 15:04:17

标签: sql-server-2014

我有一个存储过程,在其中使用xp_cmdshell来检查远程目录中的文件。我的SQL Server服务帐户无权访问该文件夹,因此我试图使用EXECUTE AS在有权访问sql server和该文件夹的用户下运行xp_cmdshell。

EXECUTE AS LOGIN = 'domain\user1'
exec xp_cmdShell 'dir \\app01\d$\files\ /B'

user1是服务器sys管理员。因此,根据我的理解,我认为这应该可行,但出现错误:

Msg 15406, Level 16, State 1, Line 27
Cannot execute as the server principal because the principal "domain\user1" does not exist, this type of principal cannot be impersonated, or you do not have permission.

我是否需要使用非管理员帐户才能使用代理帐户?代理帐户是domain \ user1。

0 个答案:

没有答案