Чтобы контролировать, какие компоненты ActiveX разрешено устанавливать пользователям, я рассматривал возможность настройки машины в качестве хранилища объектов, а затем настройку пути поиска в Интернете для перенаправления запросов на установку ActiveX из Интернета в хранилище объектов, находящееся под моим контролем.
Мне было интересно, знаете ли вы кого-нибудь, кто успешно это настроил, и есть ли какое-нибудь руководство по настройке машины в качестве хранилища объектов?
Спасибо.
Путь поиска в Интернете описан здесь:
http://msdn.microsoft.com/en-us/library/aa741211(v=vs.85).aspx#Internet_Search_Path
Функциональность восходит к 1996 году, но я никогда не видел, чтобы кто-либо реализовал часть системы «хранилище объектов». Я также не знаю, выпустила ли Microsoft эталонную реализацию.
Это было бы несложно написать. Ему просто нужно получать запросы POST и возвращать перенаправление на «лучший» URL-адрес объекта (на основе запрошенного типа MIME, CLSID и с учетом языка и типов MIME, которые, по словам клиента, он ожидает).
Однако я не уверен, что вижу преимущества в использовании этой функции. Что вы ищете?
Дополнительная гарантия честности? В любом случае вам следует разрешить установку только подписанных элементов управления, поэтому не похоже, что наличие собственного репозитория даст вам дополнительную меру обеспечения целостности.
Снижение использования полосы пропускания клиентами? Загрузка элементов управления выполняется через HTTP, поэтому кэширующий HTTP-прокси минимизирует полосу пропускания, используемую при загрузке кода, так же эффективно, как перенаправление клиентов в центральное хранилище объектов.
Использование центрального хранилища объектов на самом деле ничего не делает с правами пользователя клиента, что я считаю основной проблемой, связанной с установкой элемента управления.
Предположительно у ваших пользователей нет прав «Администратор», поэтому они в любом случае не могут устанавливать произвольный код (для всей машины). Если у вас «современные» версии Windows, вы можете использовать Служба установщика ActiveX в «белый список» компонент ActiveX, устанавливаемый пользователем без прав администратора. Вы можете сделать это без центрального хранилища объектов.
IE 8 позволяет установки элементов управления ActiveX без прав администратора (установка на HKEY_CURRENT_USER вместо HKEY_CLASSES_ROOT), но пользователь сможет испортить только свою собственную среду этими установками (при условии, конечно, что у них нет прав «Администратор»). Эта функция также может быть отключена групповой политикой.