Web Farm Framework и MVC 3: как требовать Https для метода действия? - PullRequest
2 голосов
/ 05 октября 2011

Я знаю, что вы можете сделать это:

#if !DEBUG
    [RequireHttps] //apply to this action only
#endif

Что если вы используете Web Farm Framework, где сервер «Контроллер» получает внешний запрос SSL 443, расшифровывает его, а затем перенаправляет его на основной /Вторичные серверы, использующие http 80 (без ssl?)

В этой среде я попробовал атрибут [RequireHttps], но он ответил «Страница неправильно перенаправляет» в Firefox.Firefox обнаружил, что сервер перенаправляет запрос на этот адрес способом, который никогда не будет завершен.Он признает, что это не SSL, но поскольку он удаляет SSL, MVC никогда не увидит атрибуты SSL.

Как бы вы переписали определенные методы действий для использования https в MVC 3 в веб-ферме?Как вы можете сделать это с [RequireHttps] или вам нужно выбрать все URL-адреса на вашем веб-сайте, для которых требуется ssl и «URL Rewrite»?

EDIT:

Я изменил контроллер наопределите трафик порта 443 и перенаправьте его на https в веб-ферме.Я думал, что смогу обойтись только загрузкой сертификатов SSL на контроллере, но их нужно загружать также на основной и дополнительный (или только).

1 Ответ

2 голосов
/ 05 октября 2011

В вашем методе действий вы можете проверить безопасное соединение:

...