gpt4 book ai didi

Powershell,拒绝对网络资源的远程脚本访问

转载 作者:行者123 更新时间:2023-12-04 11:29:14 26 4
gpt4 key购买 nike

我正在尝试使用调用命令远程执行 powershell 脚本。该脚本依赖于可通过本地网络获得的配置文件。该脚本以下列方式调用:

Invoke-Command -ComputerName 192.168.137.181 -FilePath c:\scripts\script.ps1 -ArgumentList \\192.168.137.1\share\config.xml

如您所见,配置是一个 xml 文件,它使用以下方式加载:
$xml = New-Object XML
$xml.Load(args[0])

当在机器上本地调用脚本时,它会在没有任何问题的情况下运行并读取配置文件。但是,当我使用调用命令从不同的机器上运行它时,我得到了

"Access to the path '\\192.168.137.1\share\config.xml' is denied"



执行Load方法时抛出的异常。

具有读写权限的每个人都可以访问该文件。
应该运行脚本的机器 (.181) 和物理上运行它的机器都具有相同的凭据,因此我不会在调用命令 cmdlet 中传递它们。
共享机器 (.1) 具有不同的凭据,但从 .181 本地调用脚本时,这绝不是问题。

你能指出我正确的方向吗?我坚持这一步,无法自己找到解决方案。我尝试使用 WebClient#DownloadString 方法下载 xml 字符串并为共享机器传递凭据,但它没有帮助。

提前致谢

最佳答案

可能是 double hop问题。您必须使用 CredSSP 将您的凭据委托(delegate)给远程计算机。

试试这里提到的解决方案:http://blogs.msdn.com/b/clustering/archive/2009/06/25/9803001.aspx

关于Powershell,拒绝对网络资源的远程脚本访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7794206/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com