Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
SQL Server — это реляционная система управления базами данных (RDBMS), которая хранит критически важные бизнес-данные для приложений, аналитики и отчетов. Так как она часто содержит конфиденциальную информацию, например записи клиентов, финансовые данные и интеллектуальную собственность, защита SQL Server необходима для защиты организации от нарушений данных, несанкционированного доступа и рисков соответствия требованиям.
В этой статье содержатся рекомендации по обеспечению безопасности SQL Server.
Сетевая безопасность
Защита сетевого доступа к SQL Server помогает предотвратить несанкционированные подключения, снизить уязвимость к атакам и обеспечить доступ только к доверенным источникам.
Ограничить входящий трафик брандмауэрами и группами безопасности сети: ограничить сетевой доступ к SQL Server, настроив брандмауэр Windows для доступа к ядрам СУБД. Для SQL Server на виртуальных машинах Azure используйте брандмауэр Azure и группы безопасности сети (NSG) для применения этих ограничений.
Шифрование подключений к SQL Server. Настройка ядра СУБД SQL Server для шифрования подключений с помощью сертификата. Это гарантирует защиту данных при передаче от перехвата и изменения. Дополнительные сведения см. в разделе "Шифрование подключений к ядру СУБД SQL Server".
Безопасное удаленное управление: используйте зашифрованные протоколы (например, TLS 1.3) для всех удаленных подключений. Дополнительные сведения см. в разделе "Настройка TLS 1.3".
Подключение к SQL Server с строгим шифрованием: в SQL Server 2022 появился
strictпараметр шифрования, который требует, чтобы все подключения использовали шифрование. Это помогает обеспечить защиту всех передаваемых данных. Дополнительные сведения см. в статье "Подключение к SQL Server с строгим шифрованием".
Управление идентичностью
Надежные элементы управления удостоверениями и проверкой подлинности помогают обеспечить доступ только авторизованных пользователей и приложений к ресурсам SQL Server.
Используйте проверку подлинности Windows или проверку подлинности Microsoft Entra: предпочитайте проверку подлинности Windows или проверку подлинности Microsoft Entra по сравнению с проверкой подлинности SQL для централизованного управления удостоверениями и упрощения управления жизненным циклом учетных записей. Дополнительные сведения см. в статье Выбор режима проверки подлинности.
Используйте управляемые группой учетные записи служб (gMSA) для служб: используйте gMSA для автоматического и безопасного управления учетными данными учетной записи службы. См. дополнительные сведения в Group-Managed обзоре учетных записей служб.
Применение надежных политик паролей: если вы используете проверку подлинности SQL, требуются сложные пароли, которые не могут быть легко угадываются и не используются для других учетных записей. Регулярно обновляйте пароли и применяйте политики AD DS. Дополнительные сведения см. в разделе "Надежные пароли".
Используйте пользователей автономной базы данных при необходимости: рассмотрите пользователей автономной базы данных для приложений, которым требуется проверка подлинности на уровне базы данных, не требуя входа на уровне сервера. Дополнительные сведения см. в разделе "Пользователи автономной базы данных".
Привилегированный доступ
Ограничение и мониторинг привилегированного доступа помогает предотвратить несанкционированные изменения и снизить влияние скомпрометированных учетных записей.
Предоставьте минимальные разрешения: назначьте самый низкий уровень привилегий, необходимый для каждого пользователя или службы. Регулярно просматривайте и настраивайте разрешения для поддержания минимальных привилегий. Дополнительные сведения см. в статье "Начало работы с разрешениями ядра СУБД".
Отдельные администраторы баз данных (DBA) и
sysadminроли: Избегайте предоставленияsysadminправ всем администраторам баз данных. Используйте разрешение CONTROL SERVER , если это возможно, так как оно учитываетDENYразрешения и обеспечивает более детализированный контроль. Рассмотрим разделение обязанностей, ограничивающих доступ к виртуальной машине, возможность входа в операционную систему, возможность изменять журналы ошибок и аудита, а также устанавливать приложения и (или) функции. Дополнительные сведения см. в разделе "Разрешения" (ядро СУБД).Мониторинг и аудит привилегированных действий: Включите аудит для отслеживания изменений, внесенных привилегированными учетными записями, и регулярно проверяйте журналы на наличие подозрительных действий. Дополнительные сведения см. в статье Аудит SQL Server (ядро СУБД).
Реализация разделения ролей: размещение пользователей Active Directory в группах AD, сопоставление групп AD с ролями SQL Server и предоставление ролей SQL Server минимальным разрешениям, необходимым для приложений. Дополнительные сведения см. в статье "Начало работы с разрешениями ядра СУБД".
Защита данных
Защита данных на месте хранения и в процессе передачи крайне важна для предотвращения несанкционированного раскрытия или подделки.
Шифрование конфиденциальных данных с помощью Always Encrypted: используйте Always Encrypted и Always Encrypted с безопасными анклавами для защиты конфиденциальных данных в SQL Server. Предпочитайте случайное шифрование для более надежной безопасности. Дополнительные сведения см. в разделе Постоянное шифрование.
Используйте прозрачное шифрование данных (TDE) для файлов базы данных: включите TDE для шифрования файлов базы данных, резервного копирования и tempdb, защиты данных, если физический носитель скомпрометирован. Дополнительные сведения см. в разделе прозрачное шифрование данных (TDE).
Маскирование конфиденциальных данных с помощью динамического маскирования данных (DDM): используйте DDM, чтобы скрыть конфиденциальные данные в результатах запроса, если шифрование невозможно. Дополнительные сведения см. в разделе Dynamic Data Masking.
Предоставьте разрешения на уровне столбцов: ограничить доступ к конфиденциальным столбцам, предоставив
SELECTREFERENCESUPDATEили разрешения только авторизованным пользователям. Дополнительные сведения см. в разделе "Разрешения GRANT".Используйте Row-Level безопасность (RLS), чтобы ограничить доступ к данным: реализуйте RLS, чтобы пользователи могли видеть только данные, относящиеся к ним. Используется
SESSION_CONTEXTдля приложений среднего уровня, где пользователи используют учетные записи SQL. Дополнительные сведения см. в разделе Row-Level Security.Объединение функций безопасности для максимальной защиты: используйте Row-Level Security вместе с Always Encrypted или Dynamic Data Masking, чтобы максимально повысить уровень безопасности организации. Дополнительные сведения см. в разделе Row-Level Лучшие практики безопасности.
Ведение журнала и обнаружение угроз
Комплексное ведение журнала и мониторинг помогают обнаруживать угрозы, исследовать инциденты и соответствовать требованиям по соответствию.
Включение и настройка аудита SQL Server: аудит доступа и изменения конфиденциальных данных и конфигураций на уровне сервера и базы данных. Рассмотрите возможность аудита таблиц и столбцов с конфиденциальными данными, которые имеют меры безопасности, применяемые к ним. Регулярно просматривайте журналы аудита, особенно для таблиц, содержащих конфиденциальную информацию, в которой невозможно выполнить полные меры безопасности. Дополнительные сведения см. в статье Аудит SQL Server (ядро СУБД).
Используйте книгу учёта в SQL Server: включите книгу учёта для создания неизменяемой записи изменений конфиденциальных данных, обеспечивая журналирование с защитой от подделки. Дополнительные сведения см. в разделе Настройка базы данных реестра.
Резервное копирование и восстановление
Надежные процессы резервного копирования и восстановления защищают данные от потери из-за сбоев, аварий или атак.
Автоматизация регулярных резервных копий: планирование автоматических резервных копий для баз данных, системных конфигураций и журналов транзакций. Используйте собственные средства Azure Backup или SQL Server. Дополнительные сведения см. в статье Резервное копирование и восстановление базы данных SQL Server с помощью SSMS ирезервного копирования и восстановления SQL Server на виртуальных машинах Azure.
Шифрование данных резервного копирования: защита файлов резервных копий с помощью прозрачного шифрования данных (TDE).
Регулярно тестируйте процедуры восстановления: периодически восстанавливаются резервные копии для проверки процесса восстановления и обеспечения соответствия целям времени восстановления и точки восстановления. Дополнительные сведения см. в статье "Восстановление файлов из резервной копии виртуальной машины".
Оценка безопасности и устранение угроз
Регулярное оценка среды SQL Server помогает выявлять уязвимости и улучшать состояние безопасности.
Ограничить включенные функции, чтобы уменьшить область атак: включите только компоненты SQL Server, необходимые для вашей среды. Дополнительные сведения см. в разделе Surface Area Configuration (Конфигурация контактной зоны).
Запустите оценки уязвимостей: используйте оценку уязвимостей SQL в SSMS для обнаружения и устранения потенциальных уязвимостей базы данных. Дополнительные сведения см. в разделе "Оценка уязвимостей SQL".
Классификация и маркировка конфиденциальных данных: используйте обнаружение и классификацию данных SQL для выявления и маркировки конфиденциальных данных для повышения защиты и соответствия требованиям. Дополнительные сведения см. в статье Обнаружения и классификация данных SQL.
Просмотр и устранение распространенных угроз: защита от SQL-инъекции, атак через сторонние каналы, подбора паролей, спрея паролей и программ-шантажистов, следуя рекомендованным практикам проверки входных данных, установки исправлений и контроля доступа. Дополнительные сведения см. в статьях о внедрении SQL и атаках программ-вымогателей.
Реализуйте глубинную защиту: используйте несколько возможностей безопасности, предназначенных для различных областей безопасности, чтобы обеспечить комплексную защиту от различных угроз. Дополнительные сведения см. в рекомендациях по обеспечению безопасности SQL Server.