Je suis en train de copier des fichiers à partir d'un ordinateur distant sur l'hôte local, mais le message d'erreur suivant est lancé:Copie de fichiers à partir d'un ordinateur distant sur l'hôte local en utilisant PowerShell
[remoteHost_IP] Connecting to remote server <IP> failed with the following error message : Access is denied. For more information, see the
about_Remote_Troubleshooting Help topic.
+ CategoryInfo : OpenError: (<remoteHost_IP>:String) [], PSRemotingTransportException
+ FullyQualifiedErrorId : AccessDenied,PSSessionStateBroken
Dans des fins de test, je me sers du script suivant:
Param([string] $username, [string] $password)
$credentials = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $username,(ConvertTo-SecureString $password -AsPlainText -Force)
$storage = "\\localhost's_IP\D$\testfile"
Invoke-Command -ComputerName <remote_comp'sIP> -Credential $credentials{ Copy-Item -Path "C:\Users\<localuser_memberOFlocalAdministratorsGroup>\desktop\testfile\asd.txt" -Destination $storage -Force -Recurse}
l'option Activer PSRemoting a été exécuté sur les deux hôtes ainsi que chaque hôte fait partie de la liste TrustedHosts de l'autre hôte.
En tant que système d'exploitation, j'utilise WS2012R2 et la version actuelle de Powershell est 4.0.
Pouvez-vous s'il vous plaît me donner quelques idées sur la façon dont je peux résoudre ce problème? Merci!
[Modifier]
Comme je l'ai dit, je travaille avec PowerShell 4.0 (une mise à niveau vers la dernière version est pas encore possible dans mon cas). De toute façon, j'ai essayé @vonPryz suggestion et maintenant je ne peux pas voir un message d'erreur, mais le fichier n'est toujours pas copié sur le localhost. Voici mon code [partie Add-Content fonctionne très bien]:
$sessiona = New-PSSession -Name sesegnon -ComputerName "10.bla-bla" -Credential $credentials
$any_error = Invoke-Command -Session $sessiona -ScriptBlock {
Add-Content -Path "D:\path\int.txt" -Value "message"
Copy-Item -Path "D:\path\asd.txt" -Destination $storage -Force
$x = $error[0] | Out-String
return $x
}
Write-Host $any_error
Est interactif 'Enter-PSSession' travail? – vonPryz
Lorsque vous utilisez Invoke-Command pour accéder aux ressources réseau, vous devez utiliser l'authentification CredSSP au lieu de Default. "ATTENTION: l'authentification du fournisseur de prise en charge de sécurité Credential, dans laquelle les informations d'authentification de l'utilisateur sont transmises à un ordinateur distant, est destinée aux commandes nécessitant l'authentification sur plusieurs ressources, par exemple l'accès à une télécommande. partage réseau.Ce mécanisme augmente le risque de sécurité de l'opération à distance . " TechNet complet [link] (https://technet.microsoft.com/it-it/library/hh849719.aspx) –