BCP/xp_cmdshell 访问被拒绝-但仅在从服务器外部运行过程时

BCP/xp_cmdshell 访问被拒绝-但仅在从服务器外部运行过程时

我一直在尝试将我团队的一些数据库部署代码运行到 Windows 7 测试箱上的 SQL 2014 服务器。此代码的一部分是使用 BCP 从另一台服务器上的文件共享中提取文件数据的过程。

当我远程桌面连接到服务器并通过 SQL 管理工作室运行该过程时,该过程成功。但是,当我从任何其他计算机上的 SQL 管理工作室运行该过程时(或通过通过 ADO 连接的部署工具),我得到:

无法批量加载,因为无法打开文件“\... ...”。操作系统错误代码 5(拒绝访问。)。

我检查了“显示高级选项”和“xp_cmdshell”设置,正如我所说,它确实有效。但只有当我登录到服务器时才有效,而不是其他机器。

有人知道这可能是什么原因造成的吗?

答案1

  1. 在两台服务器上,运行 XP_CMDSHELL“WHOAMI”并记录结果。
  2. 在两台服务器上以 1 所标识的帐户或帐户身份登录。
  3. 在两台服务器上,从命令提示符(cmd.exe)使用相同的 xp_cmdshell 字符串。
  4. 与您的 AD 人员讨论结果。

相关内容