Вопрос 17. А еще я слышал о каких-то ActiveX-объектах. Это что, надстройки типа Элемент ActiveX, которые мы уже встречали ранее?

Нет, объекты ActiveX (файлы с расширениями OCX, DLL или CAB) — это более глобальное понятие, чем надстройки браузера Internet Explorer. Скорее, объекты ActiveX — это целый класс программ для операционной системы Windows, которые могут работать как на локальном компьютере, так и на страницах Интернета. Они похожи на надстройки для операционной системы Windows. То есть, позволяют расширить ее возможности.

Объекты ActiveX также можно встретить в Интернете. Некоторые сайты используют их для тех или иных целей, и когда вы пытаетесь открыть такой сайт, браузер Internet Explorer отобразит панель информации с предложением установить элемент ActiveX (если он еще не установлен на вашей системе). То есть, если надстройки позволяют расширить возможности браузера, то объекты ActiveX позволяют расширить возможности конкретного сайта.

Необходимо осторожно относиться к объектам ActiveX и устанавливать их только в том случае, если вы полностью доверяете сайту, который предлагает установить объект. Дело в том, что элементы ActiveX могут работать с любым объектом вашей операционной системы: с файлами на вашем компьютере, с реестром операционной системы и т.д.

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

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

Включить и настроить возможность установки ActiveX-объектов обычными пользователями позволяет стандартный компонент операционной системы Windows Vista — СЛУЖБА УСТАНОВЩИКА ACTIVEX. По умолчанию данный компонент не устанавливается, поэтому вам придется самостоятельно установить его с помощью диалога КОМПОНЕНТЫ WINDOWS (файл optionalfeatures.exe). Также данный компонент можно установить с помощью команды pkgmgr.exe /iu:AxInstallService.

Данный компонент присутствует только в версиях Windows Vista Ultimate, Business и Enterprise.

После установки компонента СЛУЖБА УСТАНОВЩИКА ACTIVEX будет создана групповая политика ВЕБ-УЗЛЫ, РАЗРЕШЕННЫЕ ДЛЯ УСТАНОВКИ ЭЛЕМЕНТОВ УПРАВЛЕНИЯ ACTIVEX, расположенная в разделе КОНФИГУРАЦИЯ КОМПЬЮТЕРА/АДМИНИСТРАТИВНЫЕ ШАБЛОНЫ/КОМПОНЕНТЫ WINDOWS/СЛУЖБА УСТАНОВКИ ACTIVEX оснастки РЕДАКТОР ОБЪЕКТОВ ГРУППОВОЙ ПОЛИТИКИ. С помощью данной групповой политики как раз и определяются сайты Интернета, установка ActiveX-объектов с которых будет разрешена не только администраторам, но и обычным пользователям.

Чтобы указать нужный вам сайт, необходимо воспользоваться данной групповой политикой, и ввести название сайта (в поле ВВЕДИТЕ ИМЯ ДОБАВЛЯЕМОГО ЭЛЕМЕНТА), а также определить действия для установки ActiveX-объектов с этого сайта. Действия для установки ActiveX-объектов указываются в поле ВВЕДИТЕ ЗНАЧЕНИЕ ДОБАВЛЯЕМОГО ЭЛЕМЕНТА. В этом поле необходимо через запятую указать четыре числа, каждое из которых определяет поведение при загрузке ActiveX-объектов с соответствующего сайта.

Первые два числа определяют действие при установке подписанного элемента управления ActiveX. Они могут принимать следующие значения:

* 0 — запретить установку элемента управления с данного сайта; * 1 — отобразить запрос на установку элемента управления с данного сайта; * 2 — автоматически устанавливать элементы управления с данного сайта.

Третье число определяет действие при установке неподписанного элемента управления ActiveX. Оно может принимать следующие значения:

* 0 — запретить установку элемента управления с данного сайта; * 1 — отобразить запрос на установку элемента управления с данного сайта.

Последнее число определяет, какие проверки содержимого сертификата элемента управления ActiveX необходимо игнорировать перед установкой ActiveX. По умолчанию значение данного числа равно 0, что соответствует максимальной безопасности (то есть, сертификат элемента управления ActiveX проверяется на корректность всеми возможными способами). Оно представляет собой битовую маску, в которой могут быть установлены следующие биты.

* 0x00001000. Не выполнять проверку сертификатов на неверные канонические имена (CN). * 0x00000100. Не выполнять проверку сертификатов на неизвестные центры сертификации. * 0x00002000. Не выполнять проверку сертификатов на неверную дату сертификата. * 0x00000200. Не выполнять проверку сертификатов на факт неправильного использования.

Чаще всего в данном поле необходимо указывать значение 2,1,0,0.

После того, как вы измените групповую политику, выполните команду gpupdate /force. После этого настройки групповой политики вступят в силу.

Вопрос 19. Я установил стандартный компонент Служба установщика ActiveX, но у меня возник вопрос. Как же мне узнать, для каких сайтов пользователям необходимо устанавливать ActiveX-объекты? Неужели я должен спрашивать у каждого из пользователей?

Это не обязательно, хотя это и является одним из способов решения возникшей перед вами проблемы.

Интересной особенностью службы СЛУЖБА УСТАНОВЩИКА ACTIVEX является то, что после ее установки в журнале событий приложений (оснастки ПРОСМОТР СОБЫТИЙ, консоль eventvwr.msc) можно будет найти события с кодом 4097 и источником AXINSTALLSERVICE.

Данное событие возникает в том случае, если для отображения какой-либо страницы требовался ActiveX-объект, установка которого доступна только от имени администратора (то есть, возможность установки от имени пользователя с указанного сайта назначена не была).

То есть, с помощью события 4097 можно определить сайты, для работы которых необходима установка ActiveX-объектов, после чего легко назначить возможность пользовательской установки ActiveX-объектов с этих сайтов (если, конечно, эта возможность вам необходима).

Вопрос 20. С сайтами я разобрался. Но у меня возник еще один вопрос. Что такое подписанные и неподписанные ActiveX-объекты? Какая между ними разница?

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

То есть, желательно никогда не устанавливать неподписанные элементы ActiveX. Если браузер обнаружит на странице какой-либо неподписанный элемент ActiveX, он сообщит вам об этом. Советую никогда не устанавливать неподписанные элементы ActiveX, так как никто не может гарантировать, что именно они делают. Собственно, по умолчанию это у вас и не получится, так как браузер запрещает работу с неподписанными элементами ActiveX.

Вопрос 21. А можно ли как-нибудь запретить установку и выполнение определенного ActiveX-объекта?

Да, такое сделать можно. Однако, делается это не так просто, как хотелось бы.

Решение. Использование групповых политик Наиболее простой и наименее гибкий способ сделать это — воспользоваться групповыми политиками. Точнее, с их помощью вы сможете запретить установку и запуск всех элементов управления ActiveX, кроме указанных вами. Для этого вам необходимо сделать следующее.

На вкладке БЕЗОПАСНОСТЬ диалога СВОЙСТВА ОБОЗРЕВАТЕЛЯ необходимо выбрать зону ИНТЕРНЕТ и нажать кнопку ДРУГОЙ. Это приведет к отображению диалога ПАРАМЕТРЫ БЕЗОПАСНОСТИ — ЗОНА ИНТЕРНЕТ. В этом диалоге необходимо в положение ДОПУЩЕННЫХ АДМИНИСТРАТОРОМ установить переключатель ЗАПУСК ЭЛЕМЕНТОВ ACTIVEX И МОДУЛЕЙ ПОДКЛЮЧЕНИЯ, расположенный в разделе ЭЛЕМЕНТЫ ACTIVEX И МОДУЛИ ПОДКЛЮЧЕНИЯ.

После того, как вы сделаете это, можно запускать оснастку РЕДАКТОР ОБЪЕКТОВ ГРУППОВОЙ ПОЛИТИКИ. Перейдите в этой оснастке к разделу КОНФИГУРАЦИЯ ПОЛЬЗОВАТЕЛЯ/АДМИНИСТРАТИВНЫЕ ШАБЛОНЫ/КОМПОНЕНТЫ WINDOWS/INTERNET EXPLORER/ЭЛЕМЕНТЫ УПРАВЛЕНИЯ, ДОПУЩЕННЫЕ АДМИНИСТРАТОРОМ. В этом разделе находится ряд групповых политик, каждая из которых определяет, разрешено ли использовать определенный ActiveX-объект. То есть, с помощью групповых политик вы сможете разрешить использование только заранее заданных, наиболее популярных, элементов управления ActiveX. В частности, следующих элементов ActiveX.

Элемент управления ActiveMovie. Управление медиа. Элемент управления CarPoint AutoPicer. Элемент управления DHTML Edit. Shockwave Flash. Элемент управления MSN Investor Chart. Бегущая строка MS Investor. Элемент управления MSNBC News. Меню MCSiMenu. Объект всплывающего меню. Элемент управления меню значков. Элемент управления Microsoft Agent. Элемент управления MSChat. Элемент управления NetShow File Transfer. Компонент Microsoft Scriptlet. Элемент управления Microsoft Survey.

Чтобы разрешить работу одного из представленных ActiveX-объектов, просто включите нужную групповую политику, не забыв при этом установить флажок напротив нужного элемента управления.

Решение. Использование специального сценария Еще одним способом запретить запуск элемента управления ActiveX является использование сценария, представленного ниже. Единственным ограничением его использования является то, что вам необходимо знать GUID-номер ActiveX-объекта, работу которого необходимо запретить в браузере Internet Explorer.

Проще всего GUID-номер ActiveX-объекта узнать с помощью программы OleView.Exe, которая входит в поставку среды программирования Microsoft Visual Studio (каталог %programfiles%\Microsoft Visual Studio 8\Common7\Tools\Bin). Просто запустите данную программу и в разделе OBJECT CLASSES/ALL OBJECT найдите нужный вам ActiveX-объект. В контекстном меню найденного ActiveX-объекта выберите команду COPY CLSID TO CLIPBOARD.

Если же среда программирования Microsoft Visual Studio у вас не установлена, тогда можно воспользоваться сценарием, который можно найти на диске к книге. В данном сценарии необходимо ввести имя ActiveX-объекта, после чего он отобразит вам его GUID-номер.

Существует еще один способ узнать GUID-номер. Такой способ можно применять, если при загрузке страницы браузер отображает панель информации с сообщением о том, что элемент ActiveX, необходимый для работы страницы, заблокирован. Если вам необходимо узнать GUID-номер заблокированного элемента ActiveX, тогда просто откройте код загружаемой страницы и поищите в нем строку classid="clsid:, или просто clsid:. После двоеточия и будет идти GUID-номер нужного вам элемента ActiveX.

Итак, обещанный сценарий. С его помощью можно запретить браузеру Internet Explorer запускать определенный ActiveX-объект. Для этого необходимо просто указать GUID-номер неугодного вам ActiveX-объекта.

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