У меня есть две учетные записи A и B, зарегистрированные на сервере Windows Server 2008 R2. Есть скрипт, в котором я использую модуль шпатлевки pscp для передачи файлов с сервера.
Проблема в том, что команда успешно выполняется с использованием учетной записи пользователя A, но застревает с использованием учетной записи B. Команда не завершается с использованием учетной записи пользователя B
Я должен вручную прекратить это.
Обе учетные записи имеют следующие привилегии в групповой политике и управлении компьютером.
Администратор Войдите в систему как пакетный Замените токен уровня процесса Пожалуйста, помогите
Я разобрался в проблеме. Когда мы используем только pscp в командной строке, мы получаем это приглашение
Ключ хоста сервера не кэшируется в реестре. У вас нет гарантии, что сервером является именно тот компьютер, который вы думаете. Отпечаток ключа rsa2 сервера: ssh-rsa 1024 cc: 78: 13: a3: 68: a6: 59: 7e: b8: 23: 2d: 13: 3e: 66: 9b: b9 Если вы доверяете этому хосту, введите " y ", чтобы добавить ключ в кеш PuTTY и продолжить соединение. Если вы хотите продолжить подключение только один раз, не добавляя ключ в кеш, введите «n». Если вы не доверяете этому хосту, нажмите Return, чтобы разорвать соединение. Хранить ключ в кеше? (да / нет) Соединение прервано.
Нам нужно нажать y / n, и после этого команда продолжится.
Пока эта команда выполнялась в сценарии, приглашение не получало никаких данных от пользователя и поэтому никогда не заканчивалось.
Чтобы смягчить это
можно сделать что-то вроде этого https://stackoverflow.com/questions/7576700/how-to-pass-value-to-psftp-prompt