Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Batch file 无法使用windows服务帐户访问pscp.exe_Batch File_Cmd_Service Accounts_Pscp - Fatal编程技术网

Batch file 无法使用windows服务帐户访问pscp.exe

Batch file 无法使用windows服务帐户访问pscp.exe,batch-file,cmd,service-accounts,pscp,Batch File,Cmd,Service Accounts,Pscp,我构建了一个windows批处理文件代码,它从FTP服务器获取文件列表,然后从该列表中提取相应的文件。批处理文件使用pscp.exe和psftp.exe的组合来实现此目的 如果我以管理员组的成员身份登录并手动执行此批处理文件(双击),则效果会很好,但当我计划windows任务从windows服务帐户(不在管理员组中)运行该批处理文件时,会出现问题 在windows服务帐户下运行的作业无法执行代码中使用的pscp.exe命令,而它执行批处理文件中之前的所有其他命令完全正常 下面是我在批处理文件中使

我构建了一个windows批处理文件代码,它从FTP服务器获取文件列表,然后从该列表中提取相应的文件。批处理文件使用pscp.exe和psftp.exe的组合来实现此目的

如果我以管理员组的成员身份登录并手动执行此批处理文件(双击),则效果会很好,但当我计划windows任务从windows服务帐户(不在管理员组中)运行该批处理文件时,会出现问题

在windows服务帐户下运行的作业无法执行代码中使用的pscp.exe命令,而它执行批处理文件中之前的所有其他命令完全正常

下面是我在批处理文件中使用的代码行:

pscp.exe-sftp-v-batch-pw%password%-ls%username%@ServerAddress:/outbox>F:\dirlist.txt

服务帐户是BatchAccountsLG和ServiceAccountsLG组的成员,作业需要这些组才能执行批处理文件代码。此外,服务帐户具有执行代码所需的任何文件/文件夹的所有必需访问权限

我不确定问题出在哪里,因为如果使用我的管理员凭据,批处理文件可以正常工作,而使用windows服务帐户计划作业时,批处理文件会失败

我曾试图通过谷歌寻找答案,但我已经画了一个空白,在这方面的任何帮助将不胜感激。如果我还有什么需要补充的,我将非常乐意这样做


感谢您提前提出的所有想法。

哪个windows服务帐户?LocalService帐户是预定义的本地帐户。它在本地计算机上具有最低权限,并在网络上提供匿名凭据。NetworkService帐户是预定义的本地帐户。它在本地计算机上具有最低权限,并充当网络上的计算机。LocalSystem帐户是一个预定义的本地帐户,它在本地计算机上具有广泛的权限,并充当网络上的计算机。它的令牌包括NT AUTHORITY\SYSTEM和BUILTIN\Administrators SID。@DavidCandy,它是一个网络服务帐户。我还注意到服务帐户在cmd.exe上没有权限,尽管我坚信问题在于服务帐户没有足够的权限成功执行pscp.exe命令,但我无法理解这些权限是什么。请在cmd中正常运行程序。和r/c流程-属性-安全选项卡。