ASP.NET - использовать веб-сервис - только https - как? - PullRequest
2 голосов
/ 07 мая 2010

У меня есть веб-сервисы, созданные с использованием клиентов ASP.NET и ASP.NET. Когда я использую веб-сервисы, как заставить клиентов использовать https?

Я не хочу заставлять весь сайт использовать https, включив в IIS требование SSL.

Можно ли использовать модуль перезаписи URL IIS7 для перенаправления http-запросов на https?

Ответы [ 2 ]

3 голосов
/ 07 мая 2010

Есть ли шанс, что вы сможете добавить свои веб-сервисы в виртуальный каталог и просто заставить виртуальный каталог использовать SSL? Наряду с проверкой внутри вызовов веб-службы, как предлагает Федор, вы можете добавить проверку в Application_BeginRequest в global.asax, хотя это не очень аккуратно:

void Application_BeginRequest(object sender, EventArgs e)
{
     if (!Request.IsSecureConnection && Request.Url.ToString().Contains(".asmx"))
     {
        string secureUrl = Request.Url.ToString().Replace("http:", "https:");
        Response.Redirect(secureUrl);
     }
}
3 голосов
/ 07 мая 2010

Нет, вы не можете использовать перезапись URL для изменения протокола.

Вместо этого вы можете просто установить проверку в своем веб-сервисе и выдать исключение, если протокол HTTP.

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