У меня следующая установка.
1 хост-компьютер, расположенный в ДОМЕНЕ A 1 x PDC в виртуальной машине, работающей на сетевом адаптере только для хоста с собственным лесом AD (ДОМЕН B) 1 x сервер, работающий в DOMAIN B, он также находится на сетевом адаптере только для хоста, но имеет вторичный адаптер, который работает в режиме NAT через VirtualBox (PDC работает в том же экземпляре VirtualBox).
Мне нужно взять файлы в DOMAIN A и скопировать с помощью ROBOCOPY в DOMAIN B, где нет доверительных отношений, DOMAIN B полностью изолирован и никогда не может разговаривать с DOMAIN A каким-либо образом.
Один из способов сделать это - использовать PSEXEC из sysinternals и скопировать файлы, используя сетевой путь, к файлам ИЗ ДОМЕНА B, этот подход был полностью исключенпо разным причинам, одна из которых - время и доработка процесса, которая заняла бы слишком много времени (хотя это было бы возможно)
Я могу скопировать файлы с рунами с /netonly
переключиться без проблем вручную из строки cmd, дающей запуск в качестве пароля во время выполнения, все это работает.
Проблема в том, что я запускаю эту копию изнутри команды rake, которая вызывает Robocopy с использованием расширений MSBuild (просто выполняет Robocopy.exe).
Существует ли сторонняя компания runas или аналогичный инструмент, позволяющий /netonly
поведение runas с паролем, заданным как переключатель?
эквивалентный синтаксис для runas (если runas поддерживает такое поведение) будет следующим:
runas /user:user@domain.com /password:password /netonly "c:\system32\robocopy.exe C:\somedir \"\\TARGETSERVER\c$\somedir\" \"*.*\" /MIR /A-:R"
Вы можете просто подключиться к общему ресурсу назначения через другой контекст безопасности, используя net use \\targetserver\c$\somedir /USER:DOMAIN\user password
синтаксис.
Опуская букву диска в net use
вызов создает аутентифицированное SMB-соединение с удаленным общим ресурсом в заданном контексте безопасности ДОМЕН \ пользователь. После установления соединения вы можете использовать ссылки на \\targetserver\c$\somedir
в твоем robocopy
вызов.
Если вы можете использовать другой протокол, кроме SMB, я бы предложил (S) FTP (S).
вы можете просто ввести пароль для целевого сервера в диспетчере учетных данных Windows.
введите в окнах поиска «диспетчер учетных данных» или найдите его в панели управления. Этот способ самый простой.
для типа адреса адрес имени пользователя targetserveraddress должен быть в формате: targetdomain \ username password = password
Альт!