授予SQL作业权限,以便能够访问/修改其他服务器上的文件夹和文件

时间:2013-01-31 19:47:11

标签: sql tsql permissions

我在SERVER01上有一个sql作业。

部分工作是访问位于不同服务器上的文件夹:

\\ SERVER02 \文件

我需要能够在其下创建文件夹和文件以及修改/删除文件。

正在与多个不同的帐户共享\\ SERVER02 \ Files文件夹。

如果我去SERVER02并尝试UNC路径到\\ SERVER02 \ Files,它会要求输入密码。

由于服务器位于两个不同的域中,因此我需要为该帐户指定域名:

DOMAIN \帐户

密码

问题:

我设置这个的正确方法是什么,以便作业可以访问其他服务器,以便它可以操作\\ SERVER02 \ Files中的文件?

这非常令人困惑,所以我试图把它弄好。任何帮助将不胜感激。

感谢。

1 个答案:

答案 0 :(得分:3)

我们在自己的环境中遇到同样的问题,因为我们有两个必须共享资源的域。技术上正确的解决方案是在两个域之间建立信任,以便跨域映射用户登录。如果您像我们一样且无法设置域信任,则可以尝试以下某些解决方案:

  1. SERVER01下运行SQL作业的帐户下登录,并使用Credential Manager创建一个使用其他域用户/密码登录SERVER02
  2. 在SQL作业运行的帐户下,使用嵌入的凭据创建网络共享到UNC路径:NET USE M: \\SERVER02\Files [password] /user:[domain\user]。您必须确保在作业运行之前始终映射此路径,并使用M:作为路径。
  3. 如果您需要运行特定进程/命令来访问网络路径,则可以使用runas启动该特定进程,以使用第二个域的凭据进行身份验证:runas /netonly /user:[domain\user] "/path/to/mytask.exe"。这会提示输入密码,但可以使用echo [password]|runas ...
  4. 进行管道传输