Настройка брандмауэра Azure SQL Server - разрешает ли подключение всех IP-адресов красный флаг?

Я только что создал свой первый Azure SQL Server и базу данных и теперь пытаюсь настроить брандмауэр, чтобы мое веб-приложение могло подключаться и вносить изменения в единую базу данных на сервере.

Я вижу, что вы можете разрешить всем клиентам подключаться, разрешив такое правило:  введите описание изображения здесь

Однако это плохая практика? Я вижу, что мой IP-адрес клиента указан на портале Azure, могу ли я получить разъяснение, что сейчас я должен разрешить доступ только к этому единственному IP-адресу, а затем, когда я опубликую свое веб-приложение в Azure, мне будет предоставлен IP-адрес, в котором он веб-приложение живет и ограничивает доступ только к нему (при условии, что люди могут вносить изменения в базу данных только через мое внешнее приложение).

Спасибо


person Pipeline    schedule 24.03.2016    source источник


Ответы (1)


Да, это плохая практика. Есть и другие уровни, через которые им придется пройти (например, вход на сервер), но это открывает входную дверь и позволяет любому выбирать ее на досуге.

Если у вас есть веб-сервер, на котором размещено ваше веб-приложение на каком-то сервере (который у вас должен быть), внесите в белый список IP-адрес этого сервера (и, возможно, ваш собственный, для целей разработки / администрирования), но разрешение всех IP-адресов не считается хорошей практикой, нет.

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

person jleach    schedule 24.03.2016
comment
@Pipeline Рад помочь. Помните, что безопасность состоит из многих уровней, и для полной эффективности все они должны быть максимально ограничены. Хотя это само по себе не обязательно позволит людям легко взломать вашу базу данных, им придется пройти на один уровень меньше! - person jleach; 24.03.2016
comment
Служба приложений Azure имеет динамический IP-адрес - каким образом можно обновить брандмауэр при изменении IP-адреса или разрешить в Azure эту службу приложений? В настоящее время я просто использую строку подключения с пользователем / pw для доступа к базе данных. - person Squirrelkiller; 22.03.2020