Жизненный цикл страницы ASP.NET - в какой момент можно применять SSL? - PullRequest
0 голосов
/ 19 ноября 2009

Когда мне следует применять SSL для защищенных страниц в жизненном цикле страниц ASP.NET?

Я имею в виду, должен ли я сделать это внутри page_load? или OnInit? или какая-то другая функция?

Я использую следующий код для обеспечения SSL для определенных страниц, но где я должен поместить этот код? Ранее я поместил его в функцию OnInit, но это не сработало с мастерами ASP.NET. Нужно ли сначала проверять, является ли это обратной передачей или нет?

 if (!HttpContext.Current.Request.IsSecureConnection) {
                HttpContext.Current.Response.Redirect(SiteNavigation.ResolveAbsoluteUrl(true, HttpContext.Current.Request.Url.PathAndQuery));
            }

Ответы [ 2 ]

1 голос
/ 19 ноября 2009

Другой вариант заключается в том, чтобы вообще сделать это вне приложения и принудительно использовать SSL в IIS , если для всего сайта требуется SSL-соединение. Мы сделали это в IIS6, создав два сайта для одного доменного имени.

mysite.com: 80 имеет перенаправление HTTP 403 на SSL-версию сайта. MySite.com:443 имеет фактическое приложение, в котором применяется SSL.

Если SSL-соединение не требуется для всего сайта, а просто страница входа в систему или какая-либо другая изолированная часть сайта, чем программный метод в Global.asax (упомянутый Гонсало), вероятно, лучший путь это поймает это очень рано в жизненном цикле страницы.

0 голосов
/ 19 ноября 2009

Если вы собираетесь перенаправить пользователя, вы хотите сделать это как можно раньше на жизненном цикле, так как все процессоры, потраченные на жизненный цикл, будут потрачены впустую. Сделайте перенаправление в OnInit.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...