У меня есть приложение (VBS), которое извлекает данные со стороннего веб-сайта через запросы REST xmlhttp.
Первый вызов REST этого приложения относится к URL-адресу входа в систему. также возвращает JSESSIONID cook ie (' Set-Cook ie: JSESSIONID = 7XYZD; Path = /; Secure; HttpOnly '). Вызываемый URL-адрес: «https://www.bullionvault.com/secure/j_security_check?j_username=XXX&j_password=YYY».
Второй запрос , для которого требуется войти, извлекает актуальную информацию из другого URL-адреса этой сети. сайт, возвращая данные как XML ответ документа как ' .response XML'. Этот поток прекрасно работает, если я запускаю приложение во время работы на виртуальной машине (rdp) или также локально с моего ноутбука.
Теперь, когда я использую работу Azure Automation для вызвать то же самое приложение на виртуальной машине, когда второй (data) запрос больше не возвращает ожидаемый документ XML; Я получаю ' 200 OK ', но затем (бесполезную) страницу входа на сайт в виде HTTP-документа как ' .responseText '; ' .response XML' пусто.
Похоже, что использование задания автоматизации Azure предотвращает отправку JSESSIONID обратно на сервер REST при выполнении запроса данных. Следовательно, сервер больше не узнает меня и отправляет обратно свою страницу входа. Обратите внимание, что веб-браузер явно не задействован.
Вопрос: Является ли мое подозрение на использование Azure Автоматизация взлома приложения верным; и как решить эту проблему?