Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Введение в корпоративные сети

.doc
Скачиваний:
33
Добавлен:
02.05.2014
Размер:
845.31 Кб
Скачать

Облегченное централизованное управление сервером и компьютерами-клиентами снижает вероятность допущения непреднамеренных ошибок пользователями, операторами и администраторами. Такие ошибки являются одной из основных угроз информационно-компьютерной безопасности и приводят к прямому ущербу. В качестве примера могут выступать непра­вильно введенные данные или ошибки в программе, вызвавшие остановку либо разрушение системы. Эти ошибки также создают слабые места, кото­рыми могут воспользоваться злоумышленники.

В архитектуре intranet распределенная обработка информации предполагает возможность выполнения на рабочих станциях программ, полученных с сервера. Такой вид распределенной обработки позволил сконцентрировать всю прикладную систему на сервере. Однако возможность выполнения на рабочих станциях программ с сервера порождает новые угрозы информаци­онно-компьютерной безопасности, например, появляется угроза подмены передаваемой с сервера программы. Соответственно возможность миграции программ предъявляет дополнительные требования по поддержа­нию безопасности сетевого взаимодействия.

1.2. Основы современных сетевых технологий.

1.2.1. Схема взаимодействия с Web-сервером Обобщенное описание. В настоящее время наиболее перспективной является архитектура "клиент-сервер", основанная на Web-технологии.

Обмен информацией по Web-технологии не отличается от информационного обмена, реализуемого по принципу "клиент-сервер", когда программа-сервер осуществляет обработку запросов, поступающих от программы-клиента.

Рис. 1.9. Обобщенная схема взаимодействия Web-навигатора с сервером

В качестве программ-клиентов выступают программы Web-навигации, рас­полагаемые на рабочих станциях сети, или служебные Web-приложения. Web-навигаторы используются для непосредственной визуализации и ин­терпретации Web-документов, хранящихся на сервере, а также для доступа к другим отдельным сервисам (рис. 1.9):

- сервису копирования файлов с сервера (FTP-сервису);

- сервису управления сервером (Telnet-сервису);

- сервису многоуровневых меню по доступу к компьютерным ресурсам (Gopher-сервису).

Доступ к другим отдельным сервисам возможен в связи с тем, что с самого начала программы навигации разрабатывались как мультипротокольные программы, обеспечивающие интерфейс доступа ко многим ресурсам сети.

К Web-навигаторам относятся такие известные продукты, как Netscape Navigator компании Netscape или Internet Explorer от Microsoft.

Служебные Web-приложения используются чаще всего для получения неко­торых статистических данных о Web-сервере или индексирования содержа­щейся там информации с целью пополнения базы данных поисковых систем.

При использовании Web-технологии в качестве основной программы-сервера выступает Web-сервер, который запускается на компьютере-сервере и осуществляет обработку запросов, приходящих от Web-клиентов. Взаимо­действие между Web-клиентом и Web-сервером осуществляется в соответст­вии с протоколом HTTP (HyperText Transfer Protocol — протокол передачи гипертекста). Будучи запущенным, Web-сервер контролирует логический порт, номер которого по умолчанию равен 80, и полагает, что любые сооб­щения, присланные к этому порту, предназначены для Web-сервера.

При получении запроса от Web-клиента Web-сервер устанавливает связь по протоколу TCP/IP и обменивается информацией в соответствии с протоко­лом HTTP. В случае запроса защищенной информации Web-сервер может потребовать от пользователя введения идентификатора и пароля. Защищен­ные Web-документы предоставляются только при наличии у пользователей соответствующих прав доступа.

Web-документы, получаемые навигатором от Web-сервера, представляют собой текстовые файлы, написанные на специальном языке, называемом языком HTML (HyperText Markup Language — гипертекстовый язык меток). Этот язык состоит из набора соглашений, в соответствии с которыми в тек­стовый файл помимо требуемого текста на любом языке мира вставляются метки, определяющие форматирование этого текста и его внешний вид в окне Web-навигатора, а также ссылки на любые объекты и отображаемые графические файлы. Кроме меток в Web-документ могут быть вставлены программы на языках JavaScript (Java Scripting) и VBScript (Visual Basic Scripting), интерпретируемые Web-навигатором при загрузке и просмотре Web-документа.

Для доступа к той информации, которая не может обрабатываться Web-сервером непосредственно, например для доступа к базам данных, использу­ется система программных шлюзов. Программный шлюз, получив запрос от Web-сервера, обрабатывает его сам или выступает в качестве посредника ме­жду сервером Web и каким-либо другим сервером, например, сервером СУБД (рис. 1.9). Программные шлюзы разрабатываются в соответствии с опреде­ленными стандартами, определяющими способы вызова Web-сервером при­кладных программ или функций динамических библиотек, а также способы обмена информацией с этими программными объектами. Одним из наиболее распространенных стандартов данного типа является интерфейс CGI (Common Gateway Interface — общий интерфейс шлюзов).

1.2.1.1. Обработка запроса от Web-клиента. Рассмотрим полную последовательность шагов, реализуемую Web-сервером при обработке запроса, поступившего от Web-клиента.

1. Web-навигатор или другой Web-клиент посылает Web-серверу запрос на получение от него какого-либо информационного ресурса. Запрос пере­дается в формате HTTP, а адрес ресурса указывается в формате URL.

2. После получения запроса Web-сервер определяет наличие запрашиваемо­го ресурса среди локальных ресурсов, т. е. среди ресурсов, которыми данный сервер управляет.

3. Если запрашиваемый ресурс имеется в наличии, то Web-сервер проверя­ет права доступа к этому ресурсу и, если права не нарушены, то возвра­щает содержимое ресурса Web-клиенту.

4. Если запрос Web-клиента нарушает права доступа к ресурсу, то Web-сервер отклоняет запрос и возвращает соответствующее предупреждение клиенту.

5. В случае, если запрашиваемый ресурс не относится к локальным ресур­сам Web-сервера, сервер определяет наличие в его файлах настройки информации о перемещении ресурса в сети. Если ресурс был размещен на сервере, но в данный момент перемещен в другое место, то сервер со­общает об этом клиенту (рис. 1.10).

Рис. 1.10. Схема перенаправления запроса

6. Если Web-сервер поддерживает виртуальное дерево другого Web-сервера, то запрос будет перенаправлен на нужный ресурс по аналогии с преды­дущим шагом (рис. 1.10).

7. Если Web-сервер используется в качестве сервера-посредника (proxy-сервера), то он выступает, с одной стороны, в качестве Web-сервера для клиента, пославшего запрос, а с другой стороны — в качестве Web-клиента, который посылает запрос к другому Web-серверу (рис. 1.11).

8. После возвращения информации клиенту сервер разрывает соединение с ним.

Рис. 1.11. Использование Web-сервера в качестве сервера-посредника

Web-сервер может использоваться для решения широкого круга задач. Наи­более типичными для современных серверов являются следующие функции:

- ведение иерархической базы данных документов, обработка запросов и контроль за доступом к информации со стороны программ-клиентов;

- предварительная обработка данных перед ответом на запрос;

- взаимодействие с внешними программами и другими серверами, напри­мер, с информационно-поисковыми системами.

Большинство современных Web-серверов, таких как Enterprise Server от корпорации Netscape и Internet Information Server от Microsoft, реализуют криптографический протокол SSL (Secure Sockets Layer), обеспечивающий поддержание конфиденциальности, целостности и подлинности передавае­мых по сети данных. Этот протокол реализован и в современных Web-навигаторах — Netscape Navigator и Internet Explorer. Данная особенность позволяет безопасно использовать Web-технологию в компьютерных сетях.

1.2.2. Распределенная обработка информации на основе мигрирующих программ. Одной из главных особенностей intranet-архитектуры является распределен­ная обработка информации на основе мигрирующих программ. Программа навигации, выполняемая на рабочей станции, может не только визуализировать Web-старницы и выполнять переходы к другим ресурсам, но и активизировать программы на сервере, а также интерпретировать и запускать на выполнение программы, относящиеся к Web-документу, которые передаются вместе с этим документом с сервера. Такой вид распределенной обработки информации позволяет сконцентрировать всю прикладную систему непосредственно на сервере.

Существует три основных вида программ, которые могут быть связаны с Web-документом и передаваться на рабочую станцию для выполнения:

- Java-аплеты, подготовленные и используемые по технологии Java;

- программы, написанные на языке сценариев JavaScript, VBScript (Visual Basic Scripting) или VRML;

- программные компоненты ActiveX Controls, соответствующие техноло­гии ActiveX.

Наличие нескольких разновидностей мигрирующих программ объясняется их различными возможностями, а также конкуренцией между ведущими корпорациями в области программных и сетевых технологий — корпора­циями Sun Microsystems, Netscape, Microsoft и другими.

1.2.2.1. Java-технология. Технология Java была разработана компанией Sun Microsystems в начале 90-х годов в связи с возникновением острой необходимости в компьютерных программах, ориентированных на использование в сетевой среде и интегра­цию с Web-сервисом. К таким программам изначально были предъявлены требования по мобильности, предполагающие независимость от аппаратных и операционных платформ, а также безопасность и надежность обработки информации.

В результате были разработаны язык программирования Java, а также цело­стная технология создания и использования мобильных программ, полу­чившая название Java-технологии.

Язык Java является простым объектно-ориентированным языком програм­мирования, построенным на основе языка C++, из которого убрали все лишнее и добавили новые возможности для обеспечения безопасности и надежности распределенных вычислений. Много полезных идей было заим­ствовано из языков Objective С и SmallTalk.

Для снижения сложности программирования и количества допускаемых ошибок в язык Java были внесены жесткая объектная ориентация описаний и строгая типизация данных. В этом языке нет данных, не входящих в объ­екты, и нет функций, не являющихся методами какого-либо объекта. Стро­гая типизация информационных элементов позволяет на стадии компиля­ции выявлять ошибки, связанные с несовместимостью типов данных.

Реализованный в языке модульный принцип построения программ и про­стота языка дают возможность не только быстро разрабатывать новые про­граммы, но и применять элементы уже написанных и проверенных про­грамм, а также эффективно модернизировать старые. Кроме того, в стандарт языка входит множество полезных библиотек, на основе которых можно строить вычислительные системы любой сложности. Этот стандарт­ный набор постоянно пополняется новыми важными функциями.

Независимость от аппаратно-операционных платформ, а также безопас­ность и надежность обработки информации были достигнуты разработкой виртуального Java-процессора, предназначенного для выполнения Java-программ путем их интерпретации. Определены его архитектура, представ­ление элементов данных и система команд.

Виртуальный Java-процессор обеспечивает среду для исполнения Java-программ. При этом любая Java-программа должна соответствовать специ­фикации этого абстрактного процессора, которая полностью определяет его машинно-независимую систему команд, типы обрабатываемых данных, а также регистры. Поэтому для возможности исполнения Java-программы виртуальным Java-процессором ее исходные тексты должны быть оттранс­лированы в высокоуровневые машинно-независимые коды этого абстракт­ного процессора, называемые байт-кодами.

Оттранслированные Java-программы, предназначенные для выполнения на рабочей станции в среде Web-навигатора, называют Java-аплетами или про­сто аплетами. По своей структуре каждый аплет представляет собой не­большую программку, в которой должно быть определено несколько обяза­тельных функций. Аплет загружается по сети с сервера и выполняется в среде Web-навигатора (рис. 1.12). Ссылки на аплеты располагаются в Web-документах, но непосредственно в состав Web-документов аплеты не входят. Они хранятся в отдельных файлах на сервере.

Рис. 1.12. Схема передачи и выполнения машинно-независимых

Java-программ

Независимость байт-кодов Java от аппаратно-операционных платформ дос­тигается программной реализацией для каждой из этих платформ только виртуального Java-процессора, который и предназначен для интерпретации аплетов.

Байт-коды Java-программ обладают следующими особенностями:

- они могут не только легко интерпретироваться, но и эффективно ком­пилироваться "на лету" непосредственно в машинные коды для любой современной аппаратной платформы;

- средняя длина команды в байт-кодах сокращена до минимума, что сни­зило сложность и объем Java-аплетов по сравнению с обычными испол­няемыми программами;

- байт-коды каждой программы содержат избыточную информацию, ко­торая позволяет проверить их на безопасность выполнения.

Под компиляцией "на лету" или, как ее еще называют, динамической ком­пиляцией понимается компиляция аплетов в машинные коды рабочей стан­ции, выполняемая сразу же после получения аплетов на этой рабочей стан­ции с целью их выполнения как обычных исполняемых программ. Вместо виртуального процессора при динамической компиляции предполагается использование специализированного компилятора. Динамическая компиля­ция байт-кодов и их дальнейшее выполнение повышает быстродействие Java-аплетов, которое при их интерпретации ниже скорости выполнения обычных исполняемых программ. Однако без принятия дополнительных мер при использовании динамической компиляции может быть снижена безопасность обработки информации. Поэтому динамическая компиляция Java-аплетов в Web-навигаторах пока не используется.

Байт-коды разрабатывались так, чтобы максимально сократить среднюю длину команды. Java-процессор имеет минимум регистров, стековую архи­тектуру и часто использует косвенную адресацию. Поэтому большинство из команд занимает всего один байт, к которому добавляется при необходимо­сти номер операнда. Кроме того, для обработки каждого типа данных Java-процессор имеет свой набор команд. В результате средняя длина Java-команды составляет всего 1,8 байта. Средняя длина команды для классиче­ских RISC-процессоров равна примерно 4 байтам.

Для высокой надежности и безопасности выполнения Java-аплетов преду­смотрены две важные функции:

- проверка байт-кодов перед их выполнением на целостность и правиль­ность инструкций;

- контроль и блокирование опасных действий в процессе интерпретации байт-кодов.

Первую функцию реализует загрузчик и верификатор байт-кодов, а вто­рую - диспетчер безопасности виртуального Java-процессора. Диспетчер безопасности запрещает аплетам осуществлять доступ к файлам и периферийным устройствам, а также выполнять системные функции, такие как распределение памяти.

Виртуальный Java-процессор обеспечивает выполнение и других функций, влияющих на надежность обработки информации, например, "сбор мусора", т. е. освобождение неиспользуемой оперативной памяти. Кроме того, язык Java содержит необходимые средства для корректной работы со всеми объ­ектами и ресурсами в случае возникновения исключительных ситуаций.

Технологический цикл подготовки Java-аплетов тот же, что и для программ на других языках программирования. Отличием является лишь то, что при редактировании внешних связей требуемые компоненты могут доставляться по сети. Процесс выполнения аплетов существенно отличается от аналогич­ного процесса для обычных программ (рис. 1.13).

Рис. 1.13. Схема подготовки и выполнения Java-аплетов

Поскольку аплеты и другие части прикладной системы хранятся на сервере, то за счет централизации облегчается сопровождение и администрирование системы. Это в свою очередь гарантирует, что пользователь всегда будет ис­пользовать самые последние версии программ.

Следует отметить, что на языке Java могут создаваться не только аплеты, яв­ляющиеся мигрирующими программами, но и стационарные программные приложения. Однако для высокого быстродействия исходный текст таких программ следует компилировать не в байт-коды, а в машинно-зависимые коды, обеспечивающие высокую скорость исполнения.

В настоящее время существует достаточное количество инструментальных средств для разработки как Java-аплетов, так и Java-приложений. Среди них - Microsoft Visual J++, Symantec Cafe, Borland Jbuilder, Sun Microsys­tems Java Workshop и ряд других.

1.2.2.2. Технологии, основанные на использовании языков сценариев. Параллельно с мощной Java-технологией появились технологии создания и применения мигрирующих программ, основанные на использовании языков сценариев. Наиболее важным отличием таких технологий от Java-технологии является покомандная интерпретация исходных текстов программ, исключаю­щая необходимость их компиляции перед выполнением. Вспомним, что в Java-технологии мобильная Java-программа для возможности выполнения должна быть откомпилирована в байт-коды. Функция интерпретации мобильных про­грамм, написанных на языке сценариев, возложена на Web-навигатор.

Языки сценариев часто называют еще языками скриптов (script — сценарий) или макроязыками. Их интерпретируемая природа упрощает отладку и созда­ние составленных на них программ. К основным представителям языков сце­нариев, предназначенных для написания мигрирующих программ, относятся:

- язык JavaScript, разработанный совместно компаниями Netscape и Sun Microsystems, а также подобный ему язык VBScript (Visual Basic Scripting) от Microsoft;

- язык VRML (Virtual Reality Modeling Language — язык моделирования виртуальной реальности), разработанный компанией Silicon Graphics.

Язык сценариев JavaScript впервые появился в Web-навигаторе Netscape Navigator 2.0 под названием LiveScript. Впоследствии Netscape отказалась от такого названия, начав работать вместе с Sun Microsystems и попав под влияние Java. JavaScript вовсе не представляет собой производную от Java. Хотя эти языки имеют некоторые общие атрибуты, но их можно назвать не более чем дальними родственниками.

JavaScript является упрощенным интерпретируемым языком с базовыми объ­ектно-ориентированными функциями. Свойство простоты объясняется отсут­ствием жесткой архитектуры типов и семантики. Объектно-ориентированная ориентация проявляется в возможностях работы с окнами, строкой состояния и другими элементами интерфейса Web-навигатора и сетевого окружения как с объектами в иерархии, к которым можно обращаться по имени.

JavaScript беднее языка Java, но гораздо удобнее и эффективнее для ряда за­дач, связанных с обработкой Web-документов и взаимодействием с пользова­телем при его просмотре. Он имеет большое число встроенных функций и команд. Программы, написанные с помощью JavaScript, могут выводить на экран диалоговые окна, производить математические вычисления, проигры­вать различные аудио- и видеофайлы, получать новые документы, обрабаты­вать нажатие на кнопки в формах и многое другое. С помощью JavaScript можно также устанавливать атрибуты и свойства бинарных библиотек Java, a также программных модулей (plug-ins), подключенных к Web-навигатору.

Команды JavaScript встраиваются непосредственно в Web-страницу и вы­полняются Web-навигатором во время загрузки этой страницы или во время определенных действий, производимых пользователем при работе с ней, например, при щелчке мышью на одном из объектов страницы, при пози­ционировании указателя в место расположения ссылки или при вводе ин­формации в поля HTML-формы.

Как и для любой другой технологии или языка, используемых в компью­терной сети, обеспечение безопасности обработки информации является первоочередной задачей. JavaScript, хотя его и нельзя назвать языком с са­мым высоким уровнем защиты, тем не менее, адекватен большинству тре­бований. В нем не реализованы некоторые возможности, поскольку они косвенно делают защиту более уязвимой. Программе на JaveScript, как и программе на языке Java, запрещено выполнять операции с локальными файлами. Поэтому программа не в состоянии изменять или получать доступ к пользовательским данным. Кроме того, язык JavaScript не поддерживает сетевые функции. Он не может, например, напрямую открыть порт TCP/IP, а способен только обеспечить загрузку объекта по заданному адресу и фор­мирование данных, передаваемых Web-серверам. Современные Web-навигаторы позволяют устанавливать уровни безопасности и управлять ими так, что программа на JavaScript может обратиться только к ограниченному кругу информации.

Быстрота создания программ, небольшие размеры программных модулей, удобный доступ ко всем внутренним функциям Web-навигатора, а также безопасность JavaScript-технологии привели к высокой популярности языка JavaScript, не уступающей популярности языка Java.

К недостаткам технологии JavaScript следует отнести невысокое быстродей­ствие JavaScript-программ, являющееся неотъемлемым атрибутом всех ин­терпретируемых языков программирования.

Нужно отметить, что реализации языка JavaScript компаний Netscape и Microsoft различаются. Эти несоответствия могут привести к несовместимо­сти при использовании Web-навигаторов Netscape Navigator и Internet Explorer. Поэтому при создании приложений на JavaScript необходима про­верка их работоспособности в среде различных программ навигации.

Язык сценариев VBScript (Visual Basic Scripting) от Microsoft во многом по­добен JavaScript. Он является подмножеством языка Visual Basic и также предназначен для программирования страниц Web. С его помощью можно заставить взаимодействовать разные объекты на Web-странице, включая программные компоненты другого типа, например, аплеты Java и про­граммные компоненты ActiveX Controls.

В отличие от макроязыков JavaScript и VBScript язык VRML разработан кор­порацией Silicon Graphics специально для создания интерпретируемых про­грамм, моделирующих трехмерные виртуальные миры. Интерпретаторы VRML подключаются к Web-навигаторам чаще всего в виде отдельных про­граммных модулей (plug-ins). Исходные тексты программ на языке VRML оформляются в виде отдельного VRML-файла и вызываются по ссылке с Web-документа при его просмотре Web-навигатором. Щелчок мышью по такой ссылке приводит к открытию отдельного окна, позволяю­щего пройтись по расположенному в нем фрагменту трехмерной реальности.

1.2.2.3. Технологии ActiveX. Под ActiveX понимается набор технологий от Microsoft, направленных на дополнение, интеграцию и унификацию существующих методов представ­ления и обработки информации в компьютерных сетях, построенных по Web-архитектуре. Основная идея ActiveX-технологий заключается в исполь­зовании одинакового способа доступа ко всем информационным ресурсам сети (рис. 1.14). В качестве основы такого унифицированного способа дос­тупа выбрана Web-технология.

Рис. 1.14. Схема единообразного доступа к информационным ресурсам сети

В соответствии с ActiveX Web-навигатор должен стать частью операционной системы. Более того, методы доступа к любой информации на собственном компьютере, на сервере локальной сети или в Internet должны быть совер­шенно одинаковы и прозрачны для пользователя. Данная концепция час­тично уже реализована в Web-навигаторе Microsoft Internet Explorer 4.0.

С точки зрения разработки мобильных программ набор технологий ActiveX с одной стороны выступает как альтернатива, а с другой — как существен­ное дополнение технологий Java и JavaScript. ActiveX обеспечивает не толь­ко разработку и выполнение мобильных программ, но и реализацию ряда дополнительных возможностей, например, вызов из среды Web-навигатора функций по просмотру и редактированию документов Word, Excel и Power­Point. В распоряжение программистов и авторов Web-документов ActiveX предоставляет набор функций API (Application Program Interface), реализо­ванный как для клиента, так и для сервера.

ActiveX поддерживает следующие типы мобильных программ, которые мо­гут быть связаны с Web-документом и передаваться на рабочую станцию для выполнения (рис. 1.15):

- программные компоненты ActiveX Controls;

- аплеты Java;

- программы, написанные на языках сценариев JavaScript, VBScript (Visual Basic Scripting) и VRML.

Технологии по созданию и использованию программных компонентов ActiveX Controls, а также программ, написанных на макроязыке VBScript, являются собственными разработками Microsoft.

Рис. 1.15. Миграция программ в технологии ActiveX

На сервере для действенности технологий ActiveX должны функционировать общесистемные программные средства от Microsoft: операционная система Windows NT Server и Web-сервер US (Internet Information Server). Взаимодейст­вие Web-сервера US с другими приложениями, например с системой управле­ния базами данных (СУБД), обеспечивается за счет реализованных в нем ин­терфейсов ISAPI (Internet Server API) и CGI (Common Gateway Interface).

Программные компоненты ActiveX Controls представляют собой обычные исполняемые программы, которые могут загружаться с сервера для испол­нения на рабочей станции. Как и при использовании Java-аплетов ссылки на эти программы располагаются в Web-документах. Непосредственно в со­став Web-документов программные компоненты ActiveX Controls не входят. Они хранятся в отдельных файлах на сервере.

Компоненты ActiveX Controls отличаются от Java-аплетов следующими осо­бенностями:

- программы ActiveX Controls включают исполняемый код, зависящий от аппаратно-операционной платформы: байт-коды же Java-аплетов явля­ются машинно-независимыми;

- загруженные элементы ActiveX Controls остаются в клиентской системе, тогда как аплеты Java необходимо каждый раз загружать заново;

- поскольку программы ActiveX Controls не работают подобно Java-аплетам под контролем диспетчера безопасности, они могут получать доступ к дискам и выполнять другие функции, характерные для тради­ционных приложений.

Учитывая, что программы ActiveX Controls по сути являются обычными программными приложениями, то их разработка может осуществляться с помощью любого языка программирования. Могут быть использованы та­кие инструментальные системы, как Visual C++, Visual Basic, Delphi, Visual J++ и ряд других. Разработан и комплексный инструментальный пакет Mi­crosoft ActiveX Development Kit (MADK).

Программные компоненты ActiveX Controls, а также программы, написан­ные на макроязыках JavaScript и VBScript, могут включать вызовы функций API ActiveX по предоставлению ряда сервисов, таких как:

- создание высококачественных мультимедийных эффектов;

- открытие и редактирование электронных документов путем обращения к приложениям, поддерживающим стандарт OLE (Object Linking and Embedding — связывание и встраивание объектов), например, к прило­жениям Microsoft Office;

- обращения к операционной системе для оптимальной настройки пара­метров выполнения полученных с сервера программ.

Программы, написанные на макроязыках JavaScript и VBScript, могут авто­матизировать взаимодействие между множеством объектов, включая аплеты Java, программные компоненты ActiveX Controls и другие программы на клиентском компьютере, позволяя им работать вместе как часть интегриро­ванного активного пространства Web. Можно написать свой макроязык и добавить его интерпретатор в Web-навигатор Internet Explorer с помощью динамически загружаемой библиотеки DLL.