net use работает без имени пользователя и пароля, но когда я их определяю, это выдает Системная ошибка 87 произошла - PullRequest
0 голосов
/ 09 марта 2020

Я хотел бы использовать сетевое подключение следующим образом.

У меня есть пароль пользователя в кодировке base64, мой пользователь и местоположение общей сетевой папки. Я хотел бы открыть сеанс ps, потому что сетевой ресурс доступен только через pssession через пользователя, если я запустил его из приложения удаленного выполнения (rundeck).

$Securepassword = "password"
$User = ".\user"
$Password = [System.Text.Encoding]::Unicode.GetString([System.Convert]::FromBase64String($SecurePassword))
$Encpassword = $Password | ConvertTo-SecureString -asPlainText -Force
$Credential = New-Object System.Management.Automation.PSCredential($User,$Encpassword)
$pw = ConvertTo-SecureString $Password -AsPlainText -Force
$pp = new-object -typename System.Management.Automation.PSCredential -argumentlist $User,$pw
$session = New-PSSession -Credential $pp;

$Destination = "C:\Dest\"
New-Item -ItemType directory -Path $Destination -Force

$HK = "\\servername\d$\Share\Install\ISO\HP\SPP\latest\packages"

if($site -eq 'HKG1') {$Location = $HK}
elseif($site -eq 'AMS4') {$Location = $AM}

NET USE $Location /USER:$User $Password
Copy-Item -Path $Location -Destination $Destination -recurse -Force
net use * /delete /y
Remove-PSSession $session

Если я дам / USER: $ Пользователь $ Password выдал мне ошибку 87, если я ее не использую, она работает, НО только при локальном запуске на сервере. Если я бежал из rundeck, ему нужна аутентификация.

Итак, как мне создать правильный ps-сеанс или в чем проблема?

Спасибо

1 Ответ

0 голосов
/ 09 марта 2020

Кроме того, вы можете скопировать любой элемент, используя копировать файл шаг .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...