различные настройки web.config для http и https - PullRequest
0 голосов
/ 03 февраля 2011

Можно ли настроить файл web.config вашего веб-сайта asp.net на использование различных настроек для пользователей, получающих доступ к сайту через HTTPS?

(например, мне нужно иметь атрибут validateRequest для набора доступа httpsв false, но для внутреннего доступа (с использованием http) установлено значение true ...)

спасибо!

Ответы [ 2 ]

1 голос
/ 03 февраля 2011

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

0 голосов
/ 03 февраля 2011

Отключить проверку запроса в файле Web.config:

<system.web>
    <pages validateRequest="false"/>
</system.web>

А в файле Global.asax добавьте обработчик событий для BeginRequest в виде:

public class Global : HttpApplication
{
    public override Init()
    {
        base.Init();
        BeginRequest += ToggleValidation;
    }

    void ToggleValidation(object sender, EventArgs e)
    {
        if (Request.IsSecureConnection)
            Request.ValidateInput();
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...