Мне нужно создать веб-приложение, которое обращается к базе данных SQL в локальной сети нашей компании. Это хороший / безопасный подход?
Создайте DMZ, в настоящее время ее нет.
Поместите веб-сервер (на котором запущен IIS) в DMZ, поместите его в его собственную рабочую группу и не делайте его членом корпоративного домена. Насколько я могу судить, нам понадобится только один ящик, поэтому нет необходимости создавать отдельный домен для DMZ.
Установите брандмауэр перед DMZ (между маршрутизатором и веб-сервером), который разрешает доступ к веб-серверу только по протоколам HTTP и / или HTTPS.
Поместите другой брандмауэр за DMZ (между веб-сервером и локальной сетью), который разрешает только SQL-соединения с веб-сервера на SQL-сервер в локальной сети и блокирует все остальное.
Для этой конфигурации, упомянутой выше, нам потребуется приобрести 2 брандмауэра и маршрутизатор, а также сервер для запуска IIS. Приложение представляет собой просто форму .Net, которая обращается к базе данных и по завершении создает сохраняемый .pdf. Я предполагаю, что нам следует изучить межсетевые экраны прикладного уровня, чтобы защитить себя от внедрения SQL / межсайтового скриптинга и т. Д.)?
Будет ли такая конструкция сети эффективной? Есть ли другие варианты компоновки, которые более рентабельны и / или безопаснее?
Ваша архитектура в основном здоровая, хотя обратите внимание, что вам, вероятно, понадобится только одно устройство межсетевого экрана с Правила DMZ для изоляции сервера приложений.
Рассмотрим следующее, которое показывает только входящий / исходящий трафик вашего теоретического сервера приложений.
Еще несколько случайных мыслей:
Посмотрите мой комментарий к вашему вопросу.
Спроси себя: Do I *need* to access my main SQL server at all?
- Если вы можете использовать извлеченные данные, отправленные в приложение DMZ, вместо того, чтобы позволить им проходить через брандмауэр и получать доступ к вашей корпоративной сети, вы будете в лучшем положении с точки зрения безопасности.
если ты ДОЛЖЕН прямой доступ к вашему серверу SQL убедитесь, что вы используете учетную запись с минимально возможными привилегиями.