Развертывание веб-сайта ASP.Net WebAPI и DMZ
У меня есть набор служб RESTful, разработанных с использованием ASP.Net WebAPI, который представляет собой единый проект. Я выполняю аутентификацию с помощью встроенного в ASP.Net механизма Forms Authentication (на основе файлов cookie), который также встроен в тот же проект. Службы должны быть публично представлены в Интернете, поскольку они будут использоваться мобильными приложениями.
Один из моих товарищей по команде предложил разделить аутентификацию и разместить ее в демилитаризованной зоне, в то время как проект сервисов размещается внутри брандмауэра, вот так
Модуль аутентификации (DMZ/ Интернет) |--FireWall--| (Безопасная зона) Балансировщик нагрузки -> Несколько серверов, на которых размещается веб-сайт служб.
- Почему и как это более безопасно?
- Каков наилучший способ сделать это? т.е. нужно ли создавать два проекта и размещать логику аутентификации в одном, чтобы быть помещенным в DMZ.
- Существуют ли какие-либо стандартные встроенные механизмы в IIS, с помощью которых я могу достичь этого (IIS 7)?
- Может ли модуль аутентификации масштабироваться и как? т.е. несколько серверов аутентификации в DMZ