Обеспечение безопасности 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 (ядро СУБД).