0
我遇到了無法解決的問題。我試圖在服務器上本地運行腳本,該腳本存在於遠程服務器上。它是我創建的一個腳本,它使用安全字符串和密鑰文件從文件中創建一系列域憑證。如果PS1文件本身就是我運行在系統上從遠程位置本地運行PowerShell腳本
腳本本地工作的罰款。如果ps1文件在另一臺機器上,我無法在本地運行腳本。
這裏是我試圖運行腳本...(這PS1文件是「服務器1」)
$creds = Import-Csv "\\server1\D$\Credentials\creds.csv"
$key = Get-Content "\\server1\D$\Resources\AES.key"
foreach ($cred in $creds) {
$user = $cred.User
$password = $cred.Hash | ConvertTo-SecureString -Key $key
#$password = "" | ConvertTo-SecureString -AsPlainText -Force
$i = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $user,$password
New-Variable -Name ($cred.Domain + "_Cred") -Value $i -Force -Verbose
}
我嘗試使用以下命令從服務器2運行...
& '\\server1\D$\Credentials\BuildCreds.ps1'
有什麼想法?這是範圍問題,還是我正在使用UNC加載文件?我試過了我能想到的一切。
錯誤消息將會有用。 – Robin
從未在('\\ server1:\ Credentials')之前的unc路徑中看到':',看起來像是一個錯誤。一直是'\\ server \ share \ folder \ file.txt' –
你也可能會遇到[Kerberos Double Hop問題](https://blogs.technet.microsoft.com/ashleymcglone/2016/08/ 30/powershell-remoting-kerberos-double-hop-resolved-safely /)「我在ServerA上,連接到ServerB,我需要到達ServerC,我有權訪問ServerC,但我仍然訪問拒絕。 ServerB將證書傳遞給ServerC「。 –