Шрифт:
Интервал:
Закладка:
<script language="VBScript">
Function InputName
 InputName = InputBox("Введите Ваше имя:", "Окно ввода VBScript")
End Function
</script>
Затем в следующем разделе <script> приводится JScript-сценарий, в котором происходит вызов функции InputName и сохранение возвращаемого ею значения в переменной s:
var s;
s = InputName();
Значение полученной таким образом переменной s выводится затем на экран:
WScript.Echo("Здравствуйте, "+s+"!");
Таким образом, после запуска сценария multilang.wsf на экран выводится диалоговое окно для ввода имени пользователя, показанное на рис. 3.9.
Рис. 3.9. Окно ввода (функция InputBox языка VBScript)
После ввода информации на экран выводится окно, показанное на рис. 3.10.
Рис. 3.10. Стандартное окно вывода WSH
Листинг 3.12. Рспользование различных языков внутри РѕРґРЅРѕРіРѕ задания (файл multilang.wsf)<job id="Example">
В <runtime>
В <description>
В РРјСЏ: multilang.wsf
В РљРѕРґРёСЂРѕРІРєР°: Windows
 Описание: Рспользование функции InputBox РІ JScript-сценарии
В </description>
В </runtime>
В <script language="VBScript">
 Function InputName ' Описываем функцию на языке VBScript
  ' Вводим имя в диалоговом окне
  InputName = InputBox("Введите Ваше имя:", "Окно ввода VBScript")
В End Function
В </script>
В <script language="JScript">
В var s;
 s = InputName(); //Вызываем функцию InputName
 //Выводим значение переменной s на экран
 WScript.Echo("Здравствуйте, "+s+"!");
В </script>В
</job>В
Глава 4
Безопасность при работе со сценариями WSH
Одним из главных преимуществ WSH является возможность запуска программ-сценариев, которые хранятся в виде исходного текста, что максимально упрощает процессы написания и распространения программ — не нужны ни дополнительные компиляторы для создания исполняемого кода, ни специальные утилиты для установки и регистрации сценариев в операционной системе. Однако при использовании таких сценариев в силу той же простоты сразу возникает несколько проблем.
Во-первых, исходный код сценария является незащищенным — любой пользователь, запускающий сценарий, может модифицировать его и использовать в дальнейшем как свой собственный (нарушаются авторские права автора).
Во-вторых, простота распространения и выполнения сценариев открывает широкие возможности для написания вредоносных сценариев-вирусов, которые могут, например, рассылаться по электронной почте, как широко известный вирус "I Love You".
Поэтому при использовании сценариев WSH вопросы безопасности имеют весьма большое значение. В этой главе описано, каким образом можно создавать зашифрованные файлы сценариев и добавлять к сценариям цифровые подписи для указания автора сценария. Кроме этого, рассмотрен процесс организации политик безопасности для сценариев WSH, позволяющих, например, запретить выполнение неподписанных сценариев любого типа или вообще заблокировать WSH для определенных пользователей.
Шифрование сценариев
Начиная с версии 2.0, в WSH появилась возможность скрыть от пользователя исходный текст сценария, преобразовав (зашифровав) его с помощью программы Microsoft Script Encoder, которую можно свободно скачать по адресу http://msdn.microsoft.com/scripting/vbscript/download/x86/sce10en.exe.
Программа Script Encoder может применяться для шифрования сценариев JScript (файлы *.js), VBScript (файлы *.vbs) и WS-файлов (расширение wsf), а также сценариев, содержащихся в гипертекстовых файлах HTML.
ЗамечаниеВШифрование СЃ помощью Script Encoder РЅРµ следует рассматривать как надежное средство сохранения РІ тайне РёСЃС…РѕРґРЅРѕРіРѕ РєРѕРґР° сценария — программа просто преобразует текст сценария РІ РєРѕРґРёСЂРѕРІРєСѓ, непригодную для чтения, Рё профессионал сможет РёР· него восстановить первоначальное содержимое. Однако для защиты сценария РѕС‚ изменений обычными пользователями РїРѕРґРѕР±РЅРѕРіРѕ шифрования вполне достаточно.
Для запуска программы Script Encoder служит файл screnc.exe; по умолчанию установка исполняемого файла и файла помощи производится в каталог Program FilesWindows Script Encoder. Программа srcenc.exe запускается из командной строки, в качестве ее обязательных параметров указываются имена исходного файла сценария и файла, в котором будет содержаться этот сценарий в зашифрованном виде.
ЗамечаниеВ системе зарегистрированы специальные расширения для файлов с зашифрованными сценариями WSH: jse для сценариев JScript и vbe для сценариев VBScript
Рассмотрим пример. Пусть в файле ForEncode.js находится простой JScript-сценарий (листинг 4.1).
Листинг 4.1. Рсходный текст сценария ForEncode.js/*******************************************************************/
/* РРјСЏ: ForEncode.jsВ В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В */
/* Язык: JScript                                                  */
/* Описание: Рсходный текст сценария                              */
- Серверные технологии хранения данных в среде Windows® 2000 Windows® Server 2003 - Наик Дайлип - Программное обеспечение
- Изучаем Windows Vista. Начали! - Дмитрий Донцов - Программное обеспечение
- Создание и обслуживание сетей в Windows 7 - Александр Ватаманюк - Программное обеспечение
- Windows XP. От простого к сложному - Антон Белоусов - Программное обеспечение
- Реестр Windows XP. Трюки и эффекты - Алексей Гладкий - Программное обеспечение
- Ваш персональный компьютер: настраиваем в домашних условиях - Андрей Кашкаров - Программное обеспечение
- Виртуальные машины: несколько компьютеров в одном - Алексей Гультяев - Программное обеспечение
- Евгений Яворских Пингвиний BUNT - Евгений Яворских - Программное обеспечение
- Руководство по переходу на Ubuntu 10.04 LTS «Lucid Lynx» - Вадим Неворотин - Программное обеспечение
- Linux - Алексей Стахнов - Программное обеспечение