Szy*_*iak 7 powershell powershell-remoting
我正在尝试使用invoke-command远程执行powershell脚本.该脚本依赖于可通过本地网络获得的配置文件.脚本以下列方式调用:
Invoke-Command -ComputerName 192.168.137.181 -FilePath c:\scripts\script.ps1 -ArgumentList \\192.168.137.1\share\config.xml
Run Code Online (Sandbox Code Playgroud)
您可以看到的配置是一个xml文件,它使用以下命令加载:
$xml = New-Object XML
$xml.Load(args[0])
Run Code Online (Sandbox Code Playgroud)
当在机器上本地调用脚本时,它运行没有任何问题并读取配置文件.但是,当我使用invoke命令从不同的机器运行它时,我得到了
"访问路径'\\ 192.168.137.1\share\config.xml'被拒绝"
异常,在执行Load方法时抛出.
具有读写权限的每个人都可以访问该文件.应该运行脚本的机器(.181)和运行它的机器都具有相同的凭据,因此我不会在invoke-command cmdlet中传递它们.共享计算机(.1)具有不同的凭据,但从.181本地调用脚本时,这从来不是问题.
你能指点我正确的方向吗?我坚持这一步,自己无法找到解决方案.我尝试使用WebClient#DownloadString方法下载xml字符串并传递共享计算机的凭据,但它没有帮助.
提前致谢
这可能是一个double hop问题.您必须使用CredSSP将凭据委派给远程计算机.
尝试这里提到的解决方案:http://blogs.msdn.com/b/clustering/archive/2009/06/25/9803001.aspx
| 归档时间: |
|
| 查看次数: |
13447 次 |
| 最近记录: |