ClickOnce — безопасная альтернатива ActiveX для запуска локального приложения из IE?

#security #internet-explorer #activex #clickonce

#Безопасность #internet-explorer #activex #clickonce

Вопрос:

Необходимо иметь ASP.NET страница, запущенная в интрасети, запускает локальное приложение Windows (VB6 exe). Первоначально планировалось использовать элемент управления ActiveX, однако общие проблемы безопасности с элементами управления ActiveX (реальными и воспринимаемыми) привели нас к рассмотрению подхода ClickOnce к проблеме. Пользователь щелкнул бы по ссылке, которая запустила бы приложение ClickOnce (приложение ClickOnce было бы просто приложением .NET Windows для запуска приложения VB6). Является ли это лучшим решением с точки зрения безопасности?

Ответ №1:

Есть ли причина, по которой вы не могли просто опубликовать приложение, которое хотите запустить, как приложение ClickOnce?

Когда приложение ClickOnce публикуется, оно всегда проверяет сервер на наличие каких-либо обновлений и, если таковых нет, запускает кэшированную установку приложения. Это тот же эффект, что и ссылка «запустить» на странице установки ClickOnce по умолчанию, которая создается при публикации приложения. Вы могли бы опубликовать приложение, а затем скопировать URL из ссылки запуска на свой веб-сайт для того же эффекта.

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

В ответ на ваши опасения по поводу безопасности, я не эксперт по Active X, но я бы не подумал, что запуск компонента ActiveX будет проблемой, если он используется из вашей интрасети. На самом деле, я думаю, проблема с ActiveX заключается в том, что когда он включен, вредоносные веб-сайты могут внедрять вредоносные вирусы ActiveX. Я не эксперт по безопасности, поэтому могу ошибаться. Однако я был бы удивлен, что размещение службы ActiveX будет проблемой безопасности (при условии, что ваш код является законным 😉