Функции безопасности База данных SQL Azure

База данных SQL Azure предоставляет реляционный сервис баз данных в Azure. Чтобы защитить данные клиентов и обеспечить надёжные функции безопасности, которые вы ожидаете от реляционного сервиса баз данных, SQL Database обладает собственным набором возможностей безопасности. Эти возможности основаны на элементах управления, которые предоставляет Azure.

Возможности безопасности

Использование протокола TDS

База данных SQL Azure поддерживает только протокол табличного потока данных (TDS), который требует, чтобы база данных была доступна только через стандартный порт TCP/1433.

Брандмауэр базы данных Azure SQL

Для защиты данных клиентов База данных SQL Azure включает функционал межсетевого экрана, который по умолчанию препятствует доступу к SQL Database.

База данных SQL Azure firewall

Файрвол шлюза может ограничивать количество адресов, что даёт детальный контроль над заданием допустимых диапазонов IP-адресов. Межсетевой экран предоставляет доступ на основе исходного IP-адреса каждого запроса.

Вы можете настроить межсетевой экран через портал управления или программно с помощью REST API управления База данных SQL Azure. Брандмауэр шлюза База данных SQL Azure по умолчанию препятствует всем клиентским TDS-доступам к База данных SQL Azure. Вы должны настроить доступ с помощью списков контроля доступа (ACL), чтобы разрешить подключения База данных SQL Azure по интернет-адресам источника и назначения, протоколам и номерам портов.

DoSGuard

DosGuard, сервис SQL Database Gateway, снижает атаки типа отказ в обслуживании (DoS). DoSGuard активно отслеживает неудачные входы по IP-адресам. Если в течение определённого периода времени происходит несколько неудачных попыток входа с IP-адреса, DoSGuard блокирует доступ IP-адреса к любым ресурсам сервиса на заранее определённый период времени.

Шлюз База данных SQL Azure также выполняет следующие действия:

  • Ведёт переговоры о возможностях безопасных каналов для реализации проверенных зашифрованных соединений TDS FIPS 140-2 при подключении к серверам базы данных
  • Проверяет состояние TDS-пакетов, принимая соединения от клиентов. Шлюз проверяет информацию о соединении и передаёт TDS-пакеты соответствующему физическому серверу на основе имени базы данных, указанного в строка подключения

Главный принцип сетевой безопасности База данных SQL Azure заключается в том, чтобы разрешать только те соединения и связь, которые необходимы сервису для работы. Azure по умолчанию блокирует все остальные порты, протоколы и соединения. Azure использует виртуальные локальные сети (VLAN) и ACL для ограничения сетевых коммуникаций по сетям источника и назначения, протоколам и номерам портов.

Одобренные механизмы реализации сетевых ACL включают ACL на маршрутизаторах и балансировщики нагрузки. Сеть Azure, брандмауэр гостевой виртуальной машины и настроенные клиентом правила брандмауэра шлюза База данных SQL Azure управляют этими механизмами.

Сегрегация данных и изоляция клиентов

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

Azure управляет всей общедоступной информацией внутри производственной сети Azure. Производственная сеть:

  • Подлежат двухфакторной аутентификации и механизмам защиты границ
  • Использует набор функций файрвола и безопасности, описанные в предыдущем разделе
  • Использует функции изоляции данных, отмеченные в следующих разделах

Неавторизованные системы и изоляция FC

Поскольку контроллер инфраструктуры (FC) является центральным координатором инфраструктуры Azure, для снижения угроз в его адрес, особенно со стороны потенциально скомпрометированных FA в клиентских приложениях, применяются строгие меры контроля. FC не распознаёт оборудование, чья информация о устройстве (например, MAC-адрес) не заранее загружена внутри FC. DHCP-серверы на FC хранят настроенные списки MAC-адресов узлов, загрузку которых им разрешено выполнять. Даже если несанкционированные системы подключаются, FC не включает их в инвентарный перечень фабрики и не подключает их и не разрешает им обмениваться данными ни с одной системой, входящей в инвентарный перечень фабрики. Это ограничение снижает риск несанкционированной связи систем с FC и доступа к VLAN и Azure.

Изоляция виртуальной локальной сети

Производственная сеть Azure логически разделена на три основных VLAN:

  • Основная VLAN: Соединяет недоверенные клиентские узлы.
  • FC VLAN: содержит доверенные FC и поддерживающие системы.
  • VLAN устройства: содержит доверенные сетевые и другие инфраструктурные устройства.

Фильтрация пакетов

IPFilter и программные межсетевые экраны на корневой и гостевой ОС узлов обеспечивают ограничения на подключение и предотвращают несанкционированный трафик между виртуальными машинами.

Гипервизор, корневая ОС и гостевые виртуальные машины

Гипервизор и корневая ОС управляют изоляцией корневой ОС от гостевых ВМ и гостевых ВМ друг от друга.

Типы правил на межсетевых экранах

Azure определяет правило как:

{IP-адрес источника, Порт источника, IP-адрес назначения, Порт назначения, Протокол назначения, Входящий/исходящий, С сохранением состояния/без сохранения состояния, Тайм-аут потока с сохранением состояния}.

Правила разрешают входящие или исходящие пакеты с символом синхронизации в режиме ожидания (SYN) только если это разрешено одним из правил. Для TCP Azure использует правила без сохранения состояния, согласно которым в виртуальную машину и из нее допускаются только пакеты без флага SYN. Предпосылка безопасности заключается в том, что любой хост-стек устойчив к игнорированию не-SYN, если ранее не видел SYN-пакет. Сам протокол TCP работает с сохранением состояния и в сочетании с не сохраняющим состояние правилом на основе SYN в целом обеспечивает поведение, характерное для реализации с сохранением состояния.

Для User Datagram Protocol (UDP) Azure использует правило состояния. Каждый раз, когда пакет UDP совпадает с правилом, Azure создаёт обратный поток в обратном направлении. Для этого процесса задан встроенный тайм-аут.

Вы отвечаете за настройку собственных межсетевых экранов поверх того, что предоставляет Azure. Вы можете определить правила для входящего и исходящего трафика.

Управление производственной конфигурацией

Соответствующие операционные команды в Azure и База данных SQL Azure поддерживают стандартные безопасные конфигурации. Центральная система отслеживания документирует и отслеживает все изменения конфигурации в производственных системах. Центральная система отслеживания отслеживает изменения в программном и аппаратном обеспечении. Сервис управления ACL отслеживает изменения в сети, связанные с ACL.

Команды разрабатывают и тестируют все изменения конфигурации Azure в среде staging, а затем внедряют их в производственной среде. Команды проверяют сборки программного обеспечения в процессе тестирования. Команды проверяют проверки безопасности и конфиденциальности в рамках критериев контрольного списка для допуска. Соответствующая команда развертывания вносит изменения в запланированные интервалы. Персонал соответствующих команд по развертыванию проверяет и одобряет разрешения перед развертыванием в производство.

Команды отслеживают изменения для успешного результата. В случае отказа команды возвращают изменение к прежнему состоянию или внедряют хотфикс для устранения сбоя с одобрения назначенного персонала. Source Depot, Git, TFS, Master Data Services (MDS), раннеры, мониторинг безопасности Azure, FC и платформа WinFabric централизованно управляют, применяют и проверяют настройки конфигурации в виртуальной среде Azure.

Аналогично, установленные этапы проверки оценивают изменения аппаратного и сетевого обеспечения на соответствие требованиям сборки. Координационный консультативный совет по изменениям (CAB), состоящий из представителей соответствующих групп на всех уровнях стека, рассматривает и утверждает релизы.

Дальнейшие действия

Чтобы узнать больше о том, что Microsoft делает для защиты инфраструктуры Azure, см.: