使用与用户A运行代理的相同(本地)代理服务器在云中从VSTS运行完全相同的操作失败,并显示错误消息:"The background process reported an error with the following message: ."我已经进行了更多的调试,并且在任何地方都没有其他错误消息.它似乎与Start-Job的-Cred参数有关,因为它与脚本块运行没有什么区别,而且如果我删除了-Cred参数,也很好.用户A在运行代理的服务器上的管理员"组中代理以用户A身份运行有什么想法吗?解决方案例如,使用Invoke-Command进行尝试(输出当前用户名):$mypwd = ConvertTo-SecureString -String "[password, could use variable]" -Force -AsPlainText$Cred = New-Object System.Management.Automation.PSCredential('[user name]',$mypwd)$scriptToExecute = {$VerbosePreference='Continue'Write-Output "$env:UserName"# Write-Verbose "Verbose" 4>&1}$b = Invoke-Command -ComputerName localhost -ScriptBlock $scriptToExecute -Credential $CredWrite-Output "Content of variable B"Write-Host $bI am trying to develop a custom task using Powershell which needs to use Start-Job -Cred to switch to another user in places. Agent is running as user A and I need to switch to user B. Logging in to the server running the agent as user A and then running the script works fine - the Start-Job switches credentials and runs a scriptblock as user B.Running exactly the same thing from VSTS in the cloud using the same (on-prem) agent server running the agent as user A fails with the uninformative error:"The background process reported an error with the following message: ."I have done more debugging and there is no other error message anywhere. It seems to be related to the -Cred parameter of Start-Job as it makes no difference what is in the script block run and if I remove the -Cred parameter, it's also fine.User A is in the Adminstrators group on the server running the agentAgent runs as user AAny ideas? 解决方案 Try it with Invoke-Command, for example (output current user name):$mypwd = ConvertTo-SecureString -String "[password, could use variable]" -Force -AsPlainText$Cred = New-Object System.Management.Automation.PSCredential('[user name]',$mypwd)$scriptToExecute = {$VerbosePreference='Continue'Write-Output "$env:UserName"# Write-Verbose "Verbose" 4>&1}$b = Invoke-Command -ComputerName localhost -ScriptBlock $scriptToExecute -Credential $CredWrite-Output "Content of variable B"Write-Host $b 这篇关于在自定义任务问题中具有凭据的开始作业的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!
09-17 22:42