Поделиться через


Поток управления проверкой подлинности на основе форм

Обновлен: Ноябрь 2007

Поток управления для проверки подлинности на основе форм ASP.NET приведен в следующей таблице.

Операция обозревателя и HTTP

Ответ сервера

Запрашивает защищенный ресурс с сервера. Операция HTTP:

GET /default.aspx

При отсутствии файла Cookie для проверки подлинности перенаправляет запрос на страницу входа в систему для сбора учетных данных. Сведения об исходящей странице помещаются в строку запроса с использованием RETURNURL в качестве ключа. Ответ HTTP-сервера:

302 Found
Location: http://samples.microsoft.com/logon.aspx?RETURNURL=/default.aspx

Следует перенаправлению на страницу входа в систему. Операция HTTP:

GET /logon.aspx?RETURNURL=/default.aspx

Возвращает страницу входа в систему. Из соображений безопасности рекомендуется использовать протокол SSL для страницы входа в систему, чтобы избежать отправку учетных данных пользователя в виде простого текста. Ответ HTTP-сервера:

200 OK

После ввода пользователем учетных данных для входа в систему выполняет отправку страницы. Операция HTTP:

POST /logon.aspx?RETURNURL=/default.aspx

Выполняет проверку учетных данных пользователя и, если подлинность учетных данных удостоверена, перенаправляет обозреватель к исходному URL-адресу, указанному в QueryString в качестве переменной RETURNURL. По умолчанию билет проверки подлинности выдается в виде файла Сookie.

9fw3ef80.alert_note(ru-ru,VS.90).gifПримечание.
С помощью свойства CookieMode можно указать, что вместо файла Cookie билет проверки подлинности должен быть включен в URL-адрес.

Ответ HTTP-сервера:

302 Found
Location: /default.aspx

Следует перенаправлению и повторно запрашивает исходный ресурс. Операция HTTP:

GET /default.aspx

Если пользователь авторизован, разрешает доступ и выдает файл Cookie проверки подлинности, который содержит билет проверки подлинности. Подлинность будущих запросов до окончания того же сеанса обозревателя будет удостоверена, когда модуль проверит файл Cookie. Существует возможность создать файл Cookie длительного пользования, который может быть использован для будущих сеансов, но только до окончания срока действия файла Cookie. Ответ HTTP-сервера:

200 OK
Set-Cookie: ASPXTICKET=ABCDEFG12345;Path=/

Обратите внимание, что путь к файлу Cookie задан как «/». Поскольку в именах файлов Cookie учитывается регистр, это позволяет предотвратить использование несоответствующего регистра в URL-адресах данного веб-узла. Например, если путь задан как «/SavingsPlan» а в ссылке указывается «/savingsplan», пользователю придется повторно пройти проверку подлинности, потому что обозреватель не сможет отослать файл Сookie.

См. также

Другие ресурсы

Безопасность веб-приложений ASP.NET

Поставщик службы проверки подлинности форм