Создание безопасной конфигурации для служб Azure SQL

Tags: SQL Server, SQL, database, Azure, безопасность баз данных, безопасность

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

Источник: https://docs.microsoft.com/en-us/azure/azure-sql/database/security-overview

1. Подключите аудит на серверах SQL и базах данных SQL:

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

Аудит отслеживает события базы данных и записывает их в журнал аудита в Вашем аккаунте Azure; помогает поддерживать соблюдение норм и стандартов, понимать работу базы данных и получать представление о несоответствиях и аномалиях, которые могут отражать проблемы бизнеса или предполагаемые нарушения безопасности.

Шаги:

Для Azure SQL Server:

  1.  Переходим в Azure SQL Server и нажимаем "Auditing".
  2. Включаем Azure SQL Auditing и выбираем Вашу учетную запись хранения. Вы также можете выбрать либо Log analytics или Event Hub.

Для базы данных Azure SQL:

  1.  Переходим в Azure SQL Server и нажимаем "Auditing".
  2. Включаем Azure SQL Auditing и выбираем Вашу учетную запись хранения. Вы также можете выбрать либо Log analytics или Event Hub.

 



2. Включаем определение угроз на  SQL Servers и базах данных SQL:

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

Шаги:

  1. Переходим в Azure SQL server и нажимаем на Security Center.
  2. Включаем AZURE DEFENDER FOR SQL.
  3. Выбираем Вашу учетную запись хранения. 
  4. Включаем "Периодическое повторяющееся сканирование" и вводим электронный адрес вашей учетной записи, куда будут поступать отчеты о сканировании.  Также выбираем отправку уведомлений администраторам и владельцам подписок. 
  5. Вводим электронный адрес вашей учетной записи, на который будут приходить уведомления об аномальных активностях, как показано на рисунке ниже.  Предоставление электронного адреса для получения предупреждений гарантирует, что о любом обнаружении аномальных активностей будет сообщено как можно быстрее, повышая при этом вероятность смягчения любого потенциального риска. 
  6. Установите типы обнаружения угроз "ALL". Подключение обнаружения всех типов угроз поможет защитить от внедрения SQL-кода, уязвимостей и других аномальных активностей.  



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

3. Настройте политику хранения (Retention policy) более, чем 90 дней. 

Убедитесь, что срок хранения SQL Server/ SQL database Audit /Threat Detection установлен более, чем 90 дней.  Журналы аудита могут использоваться для проверки аномалий и получения представления о возможных нарушениях и неправильном использовании информации или доступа. 

Журналы обнаружения угроз используются для проверки подозрительных попыток атак и нарушений на SQL server с известными сигнатурами атак. 

4. Используйте аутентификацию Active Directory для подтверждения подлинности с базой данных SQL. 

Аутентификация  Azure Active Directory - это механизм подключения к базе данных Azure SQL и хранилищу  данных SQL с использованием удостоверений в Azure Active Directory.  С помощью аутентификации Azure Active Directory Вы можете централизованно управлять удостоверениями пользователей базы данных и других служб Microsoft. Централизованное управление обеспечивает единое место для управления пользователями базы данных и упрощает управление разрешениями. 

  •  Предоставляет альтернативу аутентификации SQL Server.
  • Помогает остановить рост количества удостоверений пользователя на серверах базы данных. 
  • Позволяет  проводить ротацию паролей в едином месте.
  • Клиенты могут управлять разрешениями базы данных, используя внешние группы. 
  • Может исключать хранение паролей путем включения интегрированной аутентификации Windows и других форм аутентификации, поддерживаемых Azure Active Directory.
  • Аутентификация Azure Active Directory использует содержащихся пользователей базы данных для проверки подлинности удостоверений на уровне базы данных. 
  • Azure Active Directory поддерживает проверку подлинности на основе токенов для приложений, подключенных к базе данных SQL. 
  • Аутентификация Azure Active Directory поддерживает ADFS  или собственную аутентификацию пользователя/пароля для локального Azure Active Directory без синхронизации домена.  
  • Azure AD поддерживает подключения из SQL Server Management Studio, использующий универсальную аутентификацию Active Directory, которая включает многофакторную аутентификацию (MFA). MFA содержит надежную аутентификацию с рядом простых вариантов проверки — телефонный звонок, текстовое сообщение, смарт-карты с pin-кодом или уведомление мобильного приложения.

5. Включите шифрование данных на базе данных SQL

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

 Шаги:

  1. Перейдите в базу данных SQL Azure и выберите прозрачное шифрование данных.
  2. Установите шифрование данных в положение ON

 

No Comments

Add a Comment