Поделиться через


Обеспечение безопасности SQL для пограничных вычислений

Внимание

Azure SQL Edge будет прекращена 30 сентября 2025 г. Дополнительные сведения и параметры миграции см. в уведомлении о выходе на пенсию.

Примечание.

Azure SQL Edge больше не поддерживает платформу ARM64.

При увеличении внедрения вычислений IoT и Edge в отраслях наблюдается увеличение числа устройств и данных, создаваемых этими устройствами. В свою очередь увеличенные объем данных и количество конечных точек устройств являются серьезной проблемой с точки зрения безопасности данных и устройств.

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

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

Безопасность платформы и системы

Платформа sql Azure SQL Edge включает физический узел Docker, операционную систему на узле и сетевые системы, подключающие физическое устройство к приложениям и клиентам.

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

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

Дополнительные сведения о сетевых протоколах SQL Azure для пограничных вычислений и конечных точках TDS см. в статье Сетевые протоколы и конечные точки TDS.

Аутентификация и авторизация

Аутентификация

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

  • Аутентификация SQL.

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

    Дополнительные сведения о создании и управлении именами входа и пользователями в SQL Edge см. в статье "Создание имени входа и создание пользователя базы данных".

Авторизация

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

Лучшая методика — создавать при необходимости пользовательские роли. Назначьте пользователям роль с минимальными разрешениями, необходимыми для выполнения должностных функций. Не назначайте разрешения пользователям напрямую. Учетная запись администратора сервера является элементом встроенной роли db_owner, которая обладает широкими разрешениями и должна предоставляться только некоторым пользователям с административными обязанностями. Для приложений используйте параметр ВЫПОЛНИТЬ КАК, чтобы указать контекст выполнения вызываемого модуля, или роли приложений с ограниченными разрешениями. Так вы будете уверены, что приложение, которое подключается к базе данных получит минимально необходимые права доступа. Следуя этим рекомендациям, вы также сможете разделить обязанности.

Защита объектов базы данных

Субъекты — это отдельные лица, группы и процессы, которым предоставлен доступ к SQL Edge. Защищаемые объекты — это сервер, база данных и объекты, которые содержит база данных. У каждого из них существует набор разрешений, с помощью которых можно уменьшить контактную зону. Следующая таблица содержит сведения об участниках и защищаемых объектах.

Сведения Смотрите
Пользователи, роли и процессы сервера и базы данных Субъекты (компонент Database Engine)
Безопасность объектов сервера и базы данных Защищаемые объекты

Шифрование и сертификаты

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

Сведения Смотрите
Реализация безопасных соединений Шифрование подключений
Функции шифрования Криптографические функции (Transact-SQL)
Шифрование неактивных данных прозрачное шифрование данных.
Always Encrypted Always Encrypted

Примечание.

Ограничения безопасности, которые касаются SQL Server на Linux, также применяются к SQL для пограничных вычислений.

Примечание.

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

SQL для пограничных вычислений предоставляет для повышения безопасности объектов и соединений тот же механизм создания и использования сертификатов, что Azure SQL и Microsoft SQL Server. Дополнительные сведения см. в разделе CREATE CERTIFICATE (TRANSACT-SQL).

Безопасность приложений

Клиентские программы

К рекомендациям по обеспечению безопасности в SQL Azure для пограничных вычислений относится написание защищенных клиентских приложений. Дополнительные сведения об обеспечении безопасности клиентских приложений на сетевом уровне см. в разделе Client Network Configuration.

Представления и функции каталога безопасности

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

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

Аудит

SQL Azure для пограничных вычислений предоставляет те же механизмы аудита, что и SQL Server. Дополнительные сведения см. в статье Аудит SQL Server (ядро СУБД).