2012-09-26 97 views
0

我不知道它应该是这样的。当我试图用xp_cmdshell程序做任何事情时,几乎每次都给我Access DeniedSQL Server:xp_cmdshell的权限非常有限

例如,我无法创建新的.txt文件,无法创建新用户,什么都没有。我使用Windows管理员用户登录。

有没有办法以管理员权限运行此过程?

回答

0

XP_CmdShell将在运行SQL Server服务的服务帐户的上下文中执行。服务帐户需要对外部资源的权限。

但是,我可以指出,启用xp_cmdshell不是一个好主意。它打开了很多安全漏洞。例如,如果您的应用程序对SQL注入具有未知的可变性,则黑客可以在您的网络上进行各种您希望避免的操作。

如果您必须使用外部资源,那么更好的方法将包括CLR过程或调用执行CMDEXEC步骤的作业。

0

xp_cmdshell由windows登录执行正在模拟上下文中执行。因为对远程资源的任何访问(例如,访问共享上的文件,对AD进行的操作(如添加用户))都会受到限制的委托限制,可能导致访问被拒绝,因为可能不会配置受限委派在所有这些资源上。