Удаленная отладка IIS: Отлаживайте ваше приложение ASP.NET, размещенное на удаленном сервере IIS - Инструмент удаленной отладки

ОГЛАВЛЕНИЕ

Инструмент удаленной отладки

Инструмент, используемый для удаленной отладки приложения ASP.Net, называется "Msvsmon.exe". Инструмент удаленной отладки (Msvsmon.exe) – маленькое приложение на базе windows, которое Visual Studio 2005 применяет для удаленной отладки. Оно имеет очень простой пользовательский интерфейс, упрощающий настройку и конфигурирование. Во время удаленной отладки Visual Studio 2005 работает на одном компьютере, а инструмент удаленной отладки работает на удаленном компьютере вместе с приложением, которое вы отлаживаете. 

 

Рисунок: Блок-схема удаленной отладки приложения ASP.NET с помощью msvsmon

Если нужно отладить приложение, размещенное на удаленном IIS, необходимо запустить msvsmon.exe на удаленном сервере, и наша система разработки – хозяин отладчика, в котором мы будем отлаживать наш клуб.

Запуск msvsmon.exe

Пути к установленному Msvsmon.exe следующие:
•    Install path\Microsoft Visual Studio 8\Common7\IDE\Remote Debugger\x86

Сначала нужно запустить приложение из местоположения, и мы получим следующий экран,

Рисунок: Первый запуск msvsmon.exe

В момент запуска приложения окно покажет статусное сообщение "Msvsmon запустил новый сервер с именем '<имя_сервера>'. Ожидает новое подключение". Это значит, что инструмент контроля отладки готов подключиться к некоторому удаленному серверу. Теперь можно подключиться к данному удаленному серверу и получить список всех процессов, выполняющихся на сервере.

Конфигурирование режима проверки подлинности

Конфигурирование инструмента msvsmon очень простое. Главная конфигурация требует режим проверки подлинности (аутентификации). Msvsmon поддерживает два типа аутентификации
•    Аутентификация Windows
•    Без аутентификации

Аутентификация Windows

Msvsmon обеспечивает высокий уровень безопасности в режиме аутентификации windows. Пользователь, желающий отлаживать приложение удаленно, должен быть опознан, то есть он должен иметь достаточно разрешений на получение доступа к средству отладки из удаленной системы. Чтобы настроить режим аутентификации Windows, нужно перейти в "Инструмент" > "Параметры". Появится следующее окно,

 

Рисунок: Настройка и конфигурирование параметров безопасности

В нем есть кнопка разрешения наряду с переключателем аутентификации windows. Используя их, можно давать разрешения любому пользователю, являющемуся членом данной группы windows. Если нажать на кнопку разрешения, появится следующее окно:

 

Рисунок: Добавление пользователя для аутентификации windows

По умолчанию администратор должен иметь разрешение на удаленную отладку, можно использовать кнопку добавления, чтобы добавить нового пользователя, а также можно дать разрешение на доступ к отладке или запретить отладку любому пользователю. Например, я добавил себя, нажав на кнопку “Добавить” и получив контроль доступа.

 

Рисунок: Добавление пользователя для аутентификации windows

Теперь я дал себе разрешение на удаленную отладку (из хозяина (хоста) отладчика). 

 

Рисунок: Разрешение на отладку для выбранного пользователя

Аналогично можно выбрать любого пользователя из Active Directory и можно отклонить запрос на удаленную отладку, несмотря на то, что пользователь - прошедший проверку пользователь Windows.

Способ удаленной отладки при режиме аутентификации windows описан в разделе прикрепления процесса.

Без аутентификации

В данном режиме аутентификации отсутствует защита. Любой может отлаживать удаленно, если режим аутентификации установлен в "без аутентификации". Так как данный режим отладки абсолютно не защищен, поэтому он должен использоваться только в защищенной сети.

 

Рисунок: Конфигурирование режима без аутентификации

Режим без аутентификации поддерживает только собственную отладку. Вы можете угадать поведение из предупреждающего сообщения. Есть кнопка-флажок "Разрешить отладку любому пользователю". Если ее отметить, любой пользователь сможет отлаживать.

В следующем разделе описано, как прикреплять процесс для удаленной отладки в режимах Windows и без аутентификации.