Вопросы безопасности для SQL Server на виртуальных машинах Azure

Применимо к:SQL Server на виртуальной машине Azure

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

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

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

Дополнительные сведения о рекомендациях для виртуальных машин SQL Server см. в других статьях этой серии: Контрольный список, Размер виртуальной машины, Конфигурация HADR, Сбор базовых показателей.

Контрольный список

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

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

  • Используйте Microsoft Defender для облака для оценки и принятия мер для повышения уровня безопасности среды данных. Такие возможности, как Azure Advanced Threat Protection (ATP), можно использовать в гибридных рабочих нагрузках для улучшения оценки безопасности и предоставления возможности реагировать на риски. Регистрация виртуальной машины SQL Server с помощью расширений агента IaaS SQL Microsoft Defender для облака оценки в ресурсе виртуальной машины SQL портал Azure.
  • Используйте Microsoft Defender для SQL для обнаружения и устранения потенциальных уязвимостей базы данных, а также обнаружения аномальных действий, которые могут указывать на угрозу для экземпляра SQL Server и уровня базы данных.
  • Оценка уязвимостей — это компонент Microsoft Defender для SQL, который может обнаруживать и помогать устранять потенциальные риски в среде SQL Server. Этот компонент предоставляет сведения о состоянии безопасности и предлагает практические действия для устранения проблем с безопасностью.
  • Используйте конфиденциальные виртуальные машины Azure для усиления защиты используемых данных и неактивных данных от доступа оператора узла. Конфиденциальные виртуальные машины Azure позволяют уверенно хранить конфиденциальные данные в облаке и соответствовать строгим требованиям соответствия.
  • Если вы находитесь в SQL Server 2022, попробуйте использовать проверку подлинности Microsoft Entra для подключения к экземпляру SQL Server.
  • Помощник по Azure анализирует конфигурацию ресурсов и данные телеметрии их использования и рекомендует решения, которые помогут повысить эффективность затрат и производительность, а также уровень доступности и безопасности ресурсов Azure. Используйте помощник по Azure на уровне виртуальной машины, группы ресурсов или подписки, чтобы определить и применить рекомендации по оптимизации развертываний Azure.
  • Используйте Шифрование дисков Azure, если потребности в безопасности и соответствии предусматривают использование сквозного шифрования данных с помощью ключей шифрования, включая шифрование временного (локально подключенного) диска.
  • Управляемые диски шифруются при хранении по умолчанию с помощью Шифрования службы хранилища Azure, и ключи шифрования являются управляемыми Майкрософт ключами, которые хранятся в Azure.
  • См. сравнение параметров шифрования управляемых дисков.
  • Порты управления должны быть закрыты на виртуальных машинах, так как открытые порты удаленного управления подвергают виртуальную машину высокому риску атак через Интернет. Эти атаки используют метод подбора учетных данных для получения доступа к компьютеру от имени администратора.
  • Включите JIT-доступ для виртуальных машин Azure.
  • Используйте Бастион Azure через протокол удаленного рабочего стола (RDP).
  • Заблокируйте порты и разрешите только необходимый трафик приложений с помощью Брандмауэра Azure — управляемого брандмауэра в качестве службы (FaaS), который предоставляет или запрещает доступ к серверу на основе исходного IP-адреса.
  • Используйте группы безопасности сети (NSG) для фильтрации трафика между ресурсами Azure в виртуальной сети Azure.
  • Используйте группы безопасности приложений, чтобы объединять в группы серверы с аналогичными требованиями к фильтрации портов и аналогичными функциями, такими как веб-серверы и серверы баз данных.
  • Для веб-серверов и серверов приложений используйте защиту от распределенных атак типа "отказ в обслуживании" (DDoS) Azure. Атаки DDoS используются для перегрузки и исчерпания сетевых ресурсов, чтобы приложения работали медленнее или стали недоступными. Часто атаки DDoS нацелены на пользовательские интерфейсы. Защита от атак DDoS Azure очищает нежелательный сетевой трафик, прежде чем он повлияет на доступность службы.
  • Используйте расширения виртуальной машины, чтобы помочь устранить вредоносные программы, требуемое состояние, обнаружение угроз, предотвращение и исправление угроз на уровне операционной системы, компьютера и сети:
  • Используйте Политика Azure для создания бизнес-правил, которые можно применить к вашей среде. Политики Azure оценивают ресурсы Azure, сравнивая свойства этих ресурсов с правилами, определенными в формате JSON.
  • Служба Azure Blueprints позволяет облачным архитекторам и центральным ИТ-группам определять воспроизводимый набор ресурсов Azure, который реализует стандарты, шаблоны и требования организации и полностью соответствует им. Решение Azure Blueprints отличается от Политик Azure.

Дополнительные сведения о рекомендациях по обеспечению безопасности см . в рекомендациях по обеспечению безопасности SQL Server и защите SQL Server.

Microsoft Defender для SQL на компьютерах

Microsoft Defender для облака — это единая система управления безопасностью, предназначенная для оценки и предоставления возможностей для повышения уровня безопасности среды данных. Microsoft Defender предлагает Microsoft Defender для SQL на компьютерах для защиты SQL Server на виртуальных машинах Azure. Используйте Microsoft Defender для SQL для обнаружения и устранения потенциальных уязвимостей базы данных и обнаружения аномальных действий, которые могут указывать на угрозу для экземпляра SQL Server и уровня базы данных.

Microsoft Defender для SQL предлагает следующие преимущества:

Управление порталом

После регистрации виртуальной машины SQL Server с расширением агента IaaS SQL можно настроить ряд параметров безопасности с помощью ресурса виртуальных машин SQL в портал Azure, например включения интеграции Azure Key Vault или проверки подлинности SQL.

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

Подробные сведения см. в статье об управлении виртуальной машиной SQL Server на портале.

Конфиденциальные виртуальные машины

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

Конфиденциальные виртуальные машины Azure используют процессоры AMD с технологией SEV-SNP , которая шифрует память виртуальной машины с помощью ключей, созданных процессором. Это помогает защитить данные во время его использования (данные, обрабатываемые внутри памяти процесса SQL Server) от несанкционированного доступа из хост-ОС. Диск ОС конфиденциальной виртуальной машины также можно зашифровать с помощью ключей, привязанных к микросхеме доверенного платформенного модуля (TPM) виртуальной машины, что усиливает защиту от неактивных данных.

Подробные инструкции по развертыванию см. в кратком руководстве по развертыванию: развертывание SQL Server на конфиденциальной виртуальной машине.

Рекомендации для шифрования дисков отличаются для конфиденциальных виртуальных машин, чем для других размеров виртуальных машин. Дополнительные сведения см. в разделе шифрования дисков.

Проверка подлинности Microsoft Entra

Начиная с SQL Server 2022, вы можете подключиться к SQL Server с помощью любого из следующих методов проверки подлинности с идентификатором Microsoft Entra (ранее Azure Active Directory):

  • Пароль обеспечивает проверку подлинности с помощью учетных данных Microsoft Entra
  • Универсальная с MFA добавляет многофакторную проверку подлинности
  • Интегрированные поставщики федерации, такие как службы федерации Active Directory (AD FS) (ADFS), позволяют включить единый вход (SSO)
  • Субъект-служба включает проверку подлинности из приложений Azure
  • Управляемое удостоверение включает проверку подлинности из приложений, назначенных удостоверениям Microsoft Entra

Чтобы приступить к работе, ознакомьтесь с настройкой проверки подлинности Microsoft Entra для виртуальной машины SQL Server.

Помощник по Azure

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

Интеграция с Azure Key Vault

Существует несколько функций шифрования SQL Server, например прозрачное шифрование данных (TDE), шифрование на уровне столбцов (CLE) и шифрование резервной копии. Эти формы шифрования требуют хранить используемые для шифрования ключи и управлять ими. Служба Azure Key Vault предназначена для обеспечения лучшей защиты этих ключей и управления ими в надежном и высокодоступном расположении. Соединитель SQL Server позволяет SQL Server использовать эти ключи из Azure Key Vault.

В частности, необходимо принимать во внимание следующее:

  • Azure Key Vault хранит секреты приложений в централизованном облаке для безопасного управления разрешениями на доступ и отдельного ведения журналов доступа.
  • При переносе собственных ключей в Azure рекомендуется хранить секреты и сертификаты в Azure Key Vault.
  • Шифрование дисков Azure использует Azure Key Vault, чтобы управлять секретами и ключами шифрования дисков.

Управление доступом

При создании виртуальной машины SQL Server с помощью образа из коллекции Azure доступен параметр Подключение SQL Server, позволяющий выбрать одно из трех значений: Локальное (в виртуальной машине), Частное (в виртуальной сети) или Общедоступное (Интернет).

Diagram showing SQL Server connectivity.

Чтобы обеспечить максимальную безопасность, выберите наиболее строгий вариант, подходящий для вашего сценария. Например, если приложение, которое обращается к серверу SQL Server, работает на той же виртуальной машине, то наиболее безопасным является локальное подключение. Если вы используете приложение Azure, которому требуется доступ к серверу SQL Server, частное подключение позволит защитить обмен данными с сервером SQL Server, осуществляя его только в пределах указанной виртуальной сети Azure. Если требуется общий доступ к виртуальной машине SQL Server (из Интернета), то обязательно придерживайтесь рекомендаций в этом разделе, чтобы уменьшить контактную зону для атак.

Выбранные параметры на портале используют правила безопасности для входящего трафика группы безопасности сети (NSG) виртуальной машины, чтобы разрешить или запретить сетевой трафик к виртуальной машине. Можно изменить существующие или создать новые правила входящего трафика NSG, чтобы разрешить трафик на порт SQL Server (по умолчанию — 1433). Можно также указать конкретные IP-адреса, которым разрешен обмен данными через этот порт.

Diagram showing network security group rules.

Помимо правил NSG, ограничивающих сетевой трафик, можно также использовать брандмауэр Windows на виртуальной машине.

Если применяются конечные точки в классической модели развертывания, удалите все неиспользуемые конечные точки в виртуальной машине. Инструкции по использованию списков ACL в конечных точках см. в разделе Управление ACL для конечной точки. Это не требуется для виртуальных машин, которые используют Azure Resource Manager.

Рассмотрите возможность включения шифрования подключений к экземпляру ядра СУБД SQL Server на виртуальной машине Azure. Настройте экземпляр SQL Server с подписанным сертификатом. Дополнительные сведения см. в статьях Включение шифрования соединений в ядре СУБД и Синтаксис строки подключения.

При обеспечении безопасности сетевого подключения или периметра учитывайте следующее:

  • Брандмауэр Azure — управляемый брандмауэр как услуга (FaaS) с отслеживанием состояния, который предоставляет или запрещает доступ к серверу на основе исходного IP-адреса для защиты сетевых ресурсов.
  • Защита от распределенной атаки типа "отказ в обслуживании" (DDoS) в Azure — DDoS-атаки перегружают и истощают сетевые ресурсы, в результате чего приложения замедляются или перестают отвечать на запросы. Защита от атак DDoS Azure очищает нежелательный сетевой трафик, прежде чем он повлияет на доступность службы.
  • Группы безопасности сети (NSG) — фильтруют трафик между ресурсами Azure в виртуальной сети Azure.
  • Группы безопасности приложений — позволяют группировать серверы с одинаковыми требованиями к фильтрации портов и объединять серверы со схожими функциями, например веб-серверы.

Шифрование дисков

В этом разделе приведены рекомендации по шифрованию дисков, но рекомендации зависят от того, развернут ли обычный SQL Server на виртуальной машине Azure или SQL Server на конфиденциальной виртуальной машине Azure.

Обычные виртуальные машины

Управляемые диски, развернутые на виртуальных машинах, которые не являются конфиденциальными виртуальными машинами Azure, используют шифрование на стороне сервера и Шифрование дисков Azure. Шифрование на стороне сервера позволяет шифровать неактивные данные и защищает данные в соответствии с корпоративными обязательствами по обеспечению безопасности и соответствия требованиям. Шифрование дисков Azure использует технологию шифрования BitLocker или DM-Crypt, а также интегрируется с Azure Key Vault для шифрования дисков ОС и дисков данных.

В частности, необходимо принимать во внимание следующее:

  • Шифрование дисков Azure — шифрует диски виртуальных машин с помощью Шифрования дисков Azure как для виртуальных машин Windows, так и для Linux.
    • Если требования безопасности и соответствия правилам предусматривают сквозное шифрование данных с помощью ключей шифрования, включая шифрование временного (локально подключенного) диска, используйте Шифрование дисков Azure.
    • Шифрование дисков Azure (ADE) использует стандартную для отрасли функцию BitLocker в Windows и функцию DM-Crypt в Linux для шифрования ОС и диска данных.
  • Шифрование управляемых дисков
    • Управляемые диски шифруются при хранении по умолчанию с помощью Шифрования службы хранилища Azure, и ключи шифрования являются управляемыми Майкрософт ключами, которые хранятся в Azure.
    • Данные в управляемых дисках Azure шифруются прозрачно с использованием 256-разрядного шифрования AES, одного из наиболее сильных блочных шифров, который совместим со стандартом FIPS 140-2.
  • См. сравнение параметров шифрования управляемых дисков.

Конфиденциальные виртуальные машины Azure

Если вы используете конфиденциальную виртуальную машину Azure, рассмотрите следующие рекомендации, чтобы повысить преимущества безопасности:

  • Настройте шифрование диска конфиденциальной ОС, которое привязывает ключи шифрования дисков ОС к микросхеме доверенного платформенного модуля виртуальной машины и делает защищенное содержимое диска доступным только для виртуальной машины.
  • Зашифруйте диски данных (все диски, содержащие файлы базы данных, файлы журналов или файлы резервной копии) с помощью BitLocker, и включите автоматическую разблокировку— просмотрите функцию autounlock или EnableBitLockerAutoUnlock, чтобы получить дополнительные сведения. Автоматическая разблокировка гарантирует, что ключи шифрования хранятся на диске ОС. В сочетании с шифрованием диска конфиденциальной ОС это обеспечивает защиту неактивных данных на дисках виртуальной машины от несанкционированного доступа к узлу.

Доверенный запуск

При развертывании виртуальной машины поколения 2 у вас есть возможность включить доверенный запуск, который защищает от расширенных и постоянных атак.

С помощью доверенного запуска можно:

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

Следующие функции в настоящее время неподдерживаются при включении доверенного запуска для SQL Server на виртуальных машинах Azure:

  • Azure Site Recovery
  • Диски (цен. категория "Ультра")
  • Управляемые образы
  • Вложенная виртуализация

Управление учетными записями

Вы бы не хотели, чтобы злоумышленники смогли легко угадать имена учетных записей или паролей. Воспользуйтесь следующими советами.

  • Создайте уникальную локальную учетную запись администратора с именем, отличным от Administrator.

  • Используйте сложные надежные пароли для всех учетных записей. Дополнительные сведения о том, как создать надежный пароль, см. в статье Создание надежного пароля.

  • По умолчанию во время настройки виртуальной машины SQL Server в Azure выбирается проверка подлинности Windows. Следовательно, имя для входа SA отключается, а пароль назначается в ходе настройки. Мы рекомендуем не использовать и не включать имя для входа SA. Если вам необходимо имя для входа SQL, используйте одну из следующих стратегий.

    • Создайте учетную запись SQL с уникальным именем, являющуюся участником роли sysadmin. Этого можно сделать на портале, включив аутентификацию SQL во время подготовки.

      Совет

      Если не включить аутентификацию SQL во время подготовки, необходимо будет вручную изменить режим аутентификации на Проверка подлинности SQL Server и Windows. Дополнительные сведения см. в статье Изменение режима проверки подлинности сервера.

    • Если необходимо использовать имя для входа SA, включите его после подготовки и задайте для него новый надежный пароль.

Примечание.

Подключение на виртуальную машину SQL Server с помощью доменных служб Microsoft Entra не поддерживается. Вместо этого используйте учетную запись домена Active Directory.

Аудит и создание отчетов

Аудит с помощью событий log Analytics и запись в журнал аудита в безопасной учетной записи Хранилище BLOB-объектов Azure. Анализ журналов можно использовать для расшифровки сведений журналов аудита. Аудит позволяет сохранять данные в отдельной учетной записи хранения и создавать журнал аудита для всех выбранных событий. Вы также можете использовать Power BI в журнале аудита для быстрой аналитики и оценки ваших данных, а также для получения представления о соответствии нормативным требованиям. Дополнительные сведения об аудите на уровне виртуальной машины и Azure см. в статье Ведение журнала безопасности и аудит в Azure.

Доступ на уровне виртуальной машины

Закройте порты управления на вашем компьютере. Открытые порты удаленного управления подвергают вашу виртуальную машину высокому риску атак из Интернета. Эти атаки используют метод подбора учетных данных для получения доступа к компьютеру от имени администратора.

  • Включите JIT-доступ для виртуальных машин Azure.
  • Используйте Бастион Azure через протокол удаленного рабочего стола (RDP).

Расширения виртуальной машины

Расширения виртуальной машины Azure — это доверенные расширения Майкрософт или сторонних производителей, которые могут помочь справиться с конкретными потребностями и рисками, такими как антивирус, вредоносное ПО, защита от угроз и пр.

  • Расширение "Гостевая конфигурация"
    • Чтобы обеспечить безопасность конфигураций гостевых параметров компьютера, установите расширение "Гостевая конфигурация".
    • К гостевым параметрам относятся конфигурация операционной системы, конфигурация или наличие приложения и параметры среды.
    • После установки станут доступны гостевые политики, например требование включить Windows Exploit Guard.
  • Агент сбора данных о сетевом трафике
    • Microsoft Defender для облака использует агент зависимостей Майкрософт для сбора данных сетевого трафика с виртуальных машин Azure.
    • Этот агент реализует расширенные функции защиты, например визуализацию трафика на карте сети, выдачу рекомендаций по улучшению безопасности и обработку конкретных сетевых угроз.
  • Оцените расширения от Microsoft и сторонних производителей для решения проблем с защитой от вредоносных программ, желаемым состоянием, обнаружением угроз, а также предотвращением и устранением угроз на уровне операционной системы, компьютера и сети.

Следующие шаги

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

Другие темы, связанные с запуском SQL Server на виртуальных машинах Azure, рассматриваются в статье Приступая к работе с SQL Server в виртуальных машинах Azure. Если у вас есть вопросы по виртуальным машинам SQL Server, см. раздел часто задаваемых вопросов.

Дополнительные сведения см. в других статьях из этой серии материалов с рекомендациями: