Ce script est utile lorsque l’on souhaite copier des données en utilisant robocopy, depuis un PC qui n’est pas dans le domaine vers un autre qui lui est membre du domaine. Nous effectuons l’ authentification via la communication inter-processus en utilisant NET USE.
Le script possède malheureusement un défaut, le mot de passe est en clair.
# COMPUTER FROM
$IPCHost = "COMPUTER_A" # Host name to create IPC$ share with
$IPCUser = "COMPUTER_A\administrator" # Authentication
$IPCPwd = "thepassword" # for IPC$ share
$SrcDir = "c$\folder\" + (get-date).year # Source Directory Path
# COMPUTER TO
$DstHost = "COMPUTER_B" # Destination Host Name
$DstDir = "c$\folder\" + (get-date).year # Destination Directory Path
# Parameters (robocopy keys) #
$Params = "/E" # Specify needed robocopy.exe parameters here
# Action Block #
NET USE \\$IPCHost\IPC$ /u:$IPCUser $IPCPwd
robocopy.exe \\$IPCHost\$SrcDir\ \\$DstHost\$DstDir\ $Params /LOG:$LogPath
NET USE \\$IPCHost\IPC$ /D