Я сделал предложение в вопросе StackOverflow, путь к выполняет пакетный файл в фоновом режиме (, никакие окна DOS не отобразились )
, Который должен ответить на Ваш вопрос.
Здесь это:
Из Вашего первого сценария, назовите свой второй сценарий со следующей строкой:
wscript.exe invis.vbs run.bat %*
На самом деле, Вы называете vbs сценарий с:
%*
) Затем invis.vbs, назовут Ваш сценарий с Windows Script Host Run () метод , который берет:
, Посмотрите вопрос для полного invis.vbs сценария:
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run """" & WScript.Arguments(0) & """" & sargs, 0, False
^
means "invisible window" ---|
Обновление после обратной связи Tammen:
, Если Вы находитесь на сессии DOS и Вы хотите запустить другой сценарий "в фоновом режиме", простое /b
(как детализировано в тот же вышеупомянутый вопрос ) может быть достаточно:
можно использовать
start /b second.bat
для запуска второго пакетного файла асинхронно от первого, которое совместно использует первое окно.
Вы можете упростить это, предоставив подрядчикам другой портал входа в систему /affiliates.
Я думаю, что здесь есть несколько уровней, каждый из которых имеет свой вопрос:
Как я могу получить доступ к веб-сервису в моей локальной сети из DMZ?
Это сложный вопрос, поскольку он действительно нарушает концепцию разделения DMZ / LAN. Как правило, соединения между LAN и DMZ разрешены (и на ограниченной основе) только со стороны LAN - таким образом, компримированная DMZ не может инициировать контакт с LAN и чрезвычайно ограничена в том, что она может делать (это не может быть проблемой произвольные запросы, отвечать только на запросы из локальной сети).
Как я могу использовать службу на другом компьютере для аутентификации имени пользователя / пароля?
Опять же, это сложная проблема - вы передаете пароли по сети - возможно ли их перехват. В AD это решается с помощью kerberos - системы запроса / ответа, которая гарантирует, что пароль никогда не передается. Конечно, Kerberos и подобные протоколы довольно сложны - вам никогда не следует пытаться использовать свои собственные, поскольку они, вероятно, будут менее безопасными, чем использование чего-то существующего - например, ваш веб-сервис может работать на https, так что, по крайней мере, пароли будут только открытым текстом на два сервера, а не канал связи между ними. Сертификаты также могут использоваться для предотвращения перенаправления трафика, предназначенного для веб-службы вашей локальной сети, на компилированную машину DMZ (компилированная машина DMZ не сможет подделать сертификат, и поэтому ваша система может определить, что она подключена к поддельному серверу, перед отправкой сведений для аутентификации)
По моему собственному опыту, эти проблемы приводят к тому, что AD вне локальной сети просто не выполняется. Компании предпочитают либо подключать внешних людей к локальной сети, используя VPN, аутентифицированные с помощью ключей RSA (те маленькие цепочки для ключей, которые показывают постоянно меняющийся набор чисел), либо они используют полностью отдельный набор учетных записей для служб зоны DMZ.
Возможно, вы захотите взглянуть на эти два ресурса. Первый предоставит вам все, что вы хотите знать об активном каталоге, а второй покажет вам, как подключиться.
Однако у вас могут возникнуть проблемы с подключением к удаленному серверу AD. Поэтому в качестве потенциального решения я бы рассмотрел возможность вызова веб-приложением веб-службы аутентификации, которая находится в корпоративной сети.