Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этой статье описаны рекомендации по обеспечению безопасности Azure Digital Twins. В ней рассматриваются роли и разрешения, управляемое удостоверение, доступ к частной сети с использованием Azure Private Link, служебные теги, шифрование данных на носителе и совместное использование ресурсов между доменами (CORS).
Для безопасности служба Azure Digital Twins обеспечивает точное управление доступом к определенным данным, ресурсам и действиям в вашем развертывании. Это делается с помощью детализированной роли и стратегии управления разрешениями, называемой управлением доступом на основе ролей Azure (Azure RBAC).
Azure Digital Twins также поддерживает шифрование неактивных данных.
Управление ролями и разрешениями в Azure RBAC
Azure RBAC предоставляется Azure Digital Twins через интеграцию с идентификатором Microsoft Entra.
Вы можете с помощью Azure RBAC предоставить разрешения субъекту безопасности, то есть пользователю, группе или субъекту-службе приложения. Субъект безопасности проходит проверку подлинности с помощью идентификатора Microsoft Entra и получает маркер OAuth 2.0. Этот маркер можно использовать для авторизации запроса доступа к экземпляру Azure Digital Twins.
Проверка подлинности и авторизация
С идентификатором Microsoft Entra доступ осуществляется в два этапа. Когда субъект безопасности (пользователь, группа или приложение) пытается получить доступ к Azure Digital Twins, запрос должен пройти проверку подлинности и авторизоваться.
- Сначала удостоверяется личность субъекта безопасности, и возвращается маркер проверки подлинности OAuth 2.0.
- Далее токен передается как часть запроса в сервис Azure Digital Twins, чтобы авторизовать доступ к указанному ресурсу.
Для этапа аутентификации требуется, чтобы запрос от приложения содержал токен доступа OAuth 2.0 во время выполнения. Если приложение выполняется внутри сущности Azure, например в приложении Функций Azure, оно может использовать управляемое удостоверение для обращения к ресурсам. Дополнительные сведения об управляемых удостоверениях см. в следующем разделе.
На этапе авторизации субъекту безопасности необходимо назначить роль Azure. Назначенные участнику безопасности роли определяют разрешения, которыми участник будет обладать. Azure Digital Twins включает роли Azure, охватывающие наборы разрешений для ресурсов Azure Digital Twins. Параметры ролей описаны далее в этой статье.
Дополнительные сведения о ролях и назначении ролей, поддерживаемых в Azure, см. в статье Общие сведения о различных ролях в документации по RBAC Azure.
Проверка подлинности с помощью управляемых удостоверений
Управляемые удостоверения для ресурсов Azure — это функция Azure, которая позволяет создавать удостоверения безопасности, связанные с развертыванием, в рамках которого выполняется код приложения. Затем можно связать этот идентификатор с ролями управления доступом, которые дают настраиваемые разрешения для доступа к определенным ресурсам Azure, необходимым приложению.
С помощью управляемых удостоверений платформа Azure управляет этим идентификатором среды выполнения. Ключи доступа не нужно хранить и защищать в коде приложений или конфигурации ни для удостоверения, ни для ресурсов, к которым необходимо получить доступ. Клиентское приложение Azure Digital Twins, работающее внутри приложения службы приложение Azure, не требует обработки правил и ключей SAS или других маркеров доступа. Клиентскому приложению требуется только адрес конечной точки пространства имен Azure Digital Twins. При подключении приложения Azure Digital Twins привязывает контекст управляемого объекта к клиенту. После того как он связан с управляемым удостоверением, клиент Azure Digital Twins может выполнять все авторизованные операции. Затем авторизация будет предоставляться путем связывания управляемого объекта с ролью Azure Digital Twins (описывается ниже).
Авторизация: роли Azure для Azure Digital Twins
Azure предоставляет две встроенные роли для авторизации доступа к API плоскости данных Azure Digital Twins. Ссылаться на роли можно по имени или по идентификатору.
Встроенная роль | Описание | Идентификатор |
---|---|---|
Владелец данных Azure Digital Twins | Эта роль дает полный доступ к ресурсам Azure Digital Twins. | bcd981a7-7f74-457b-83e1-cceb9e632ffe |
Читатель данных Azure Digital Twins | Эта роль даёт доступ только для чтения к ресурсам Azure Digital Twins. | d57506d4-4c8d-48b1-8587-93c323f6a5a3 |
Назначить роли можно двумя способами:
- С помощью области управления доступом (IAM) для службы Azure Digital Twins в портале Azure (см. "Назначение ролей Azure с помощью портала Azure)
- С помощью команд CLI для добавления или удаления роли
Подробные инструкции по назначению ролей экземпляру Azure Digital Twins см. в статье "Настройка экземпляра и аутентификации". Дополнительные сведения о том, как определяются встроенные роли, см. в документации к RBAC Azure Общие сведения об определениях ролей.
Вы также можете создать пользовательские роли Azure для своего экземпляра. Это позволяет предоставить разрешение для определенных действий в отдельных областях данных, включая двойники, команды, связи, маршруты событий, задания, модели и запросы. Дополнительные сведения о пользовательских ролях в Azure см. в разделе "Пользовательские роли Azure".
Автоматизация ролей
В автоматизированных сценариях рекомендуется ссылаться на роли по идентификаторам, а не по именам. Имена могут меняться между версиями, но идентификаторы остаются неизменными, что делает их более стабильной ссылкой в процессах автоматизации.
Совет
При назначении ролей с помощью командлета, такого как New-AzRoleAssignment
(ссылка), вы можете использовать параметр -RoleDefinitionId
вместо -RoleDefinitionName
, чтобы передать идентификатор вместо имени роли.
Области действия разрешений
Прежде чем назначить роль Azure субъекту безопасности, определите для него область доступа. Рекомендуется предоставлять только максимально узкие области полномочий.
В следующем списке описаны уровни, на которых вы можете ограничить доступ к ресурсам Azure Digital Twins.
- Модели. Действия для этого ресурса определяют порядок управления моделями, отправленными в Azure Digital Twins.
- Действия, связанные с этим ресурсом, определяют возможность выполнения операций поиска по цифровым двойникам в графе Azure Digital Twins.
- Цифровой двойник: Действия для этого ресурса обеспечивают управление операциями CRUD с цифровыми двойниками в графе двойников.
- Связи цифрового двойника. Действия для этого ресурса определяют управление операциями CRUD по отношению к связям между цифровыми двойниками в графе двойников.
- Маршрут событий: действия для этого ресурса определяют разрешения на маршрутизацию событий из Azure Digital Twins в конечные точки, такие как Центры событий, Сетка событий или Служебная шина.
Устранение неполадок с разрешениями
Если пользователь пытается выполнить действие, недопустимое для его роли, он может получить сообщение об ошибке в виде запроса на обслуживание 403 (Forbidden)
. Дополнительные сведения и инструкции по устранению неполадок см. в статье "Устранение неполадок с неудачным запросом службы Azure Digital Twins: ошибка 403 (запрещено)".
Управляемое удостоверение для доступа к другим ресурсам
Настройка управляемого удостоверения Microsoft Entra ID для экземпляра Azure Digital Twins позволяет экземпляру легко получить доступ к другим защищенным ресурсам Microsoft Entra, таким как Azure Key Vault. Удостоверение управляется платформой Azure и не требует предоставления или смены секретов. Дополнительные сведения об управляемых удостоверениях в Microsoft Entra ID см. в разделе Управляемые удостоверения для ресурсов Azure.
Azure Digital Twins поддерживает оба типа управляемых удостоверений, назначаемых системой и назначаемых пользователем.
Для проверки подлинности в пользовательской конечной точке можно использовать любой из этих типов управляемых удостоверений. Azure Digital Twins поддерживает проверку подлинности на основе удостоверений в конечных точках для центров событий и служебных шин, а также в конечную точку контейнера Azure Storage для событий с недоставленными письмами. Event Grid конечные точки в настоящее время не поддерживаются для управляемых идентификаторов.
Инструкции по включению управляемого удостоверения для конечной точки Azure Digital Twins, которая может использоваться для маршрутизации событий, см. в разделе "Параметры конечной точки: проверка подлинности на основе удостоверений".
Использование доверенной службы Microsoft для маршрутизации событий в центры событий и конечные точки Service Bus.
Azure Digital Twins может подключаться к конечным точкам центров событий и службы шины для отправки данных о событиях через общедоступные конечные точки этих ресурсов. Однако если эти ресурсы привязаны к виртуальной сети, подключение к ресурсам блокируется по умолчанию. В результате эта конфигурация предотвращает отправку Azure Digital Twins данных о событиях в ваши ресурсы.
Чтобы устранить эту проблему, включите подключение от экземпляра Azure Digital Twins к центрам событий или ресурсам Шины сервисов с помощью параметра доверенной службы Microsoft (см. Доверенные службы Microsoft для Центров событий и Доверенные службы Microsoft для Шины сервисов).
Чтобы включить подключение к доверенной службе Майкрософт, необходимо выполнить следующие действия.
- Экземпляр Azure Digital Twins должен использовать управляемое удостоверение, назначаемое системой. Это позволяет другим службам находить ваш экземпляр системы в качестве доверенной службы Microsoft. Для получения инструкций по настройке управляемой системой идентификации в экземпляре, см. раздел Включить управляемую идентификацию для экземпляра.
- После предоставления управляемого удостоверения, назначенного системой, дайте разрешение управляемому удостоверению экземпляра для доступа к вашим центрам событий или конечной точке Service Bus (эта функция не поддерживается в Event Grid). Инструкции по назначению соответствующих ролей см. в статье "Назначение ролей Azure для удостоверения".
- Для центров событий и конечных точек службы шины, имеющих конфигурации брандмауэра, убедитесь, что разрешен параметр Разрешить доверенным службам Microsoft обход этого брандмауэра.
Доступ к частной сети с помощью Azure Private Link
Приватный канал Azure — это служба, которая обеспечивает доступ к ресурсам Azure (например, Центрам событий Azure, Хранилищу Azureи Azure Cosmos DB), а также к размещенным в Azure службам клиентов или партнеров через частную конечную точку Виртуальной сети Azure.
Аналогичным образом можно использовать конечные точки частного доступа для экземпляра Azure Digital Twins, чтобы клиенты, расположенные в виртуальной сети, имели безопасный доступ REST API к экземпляру через Приватный канал. Настройка конечной точки частного доступа для экземпляра Azure Digital Twins позволяет защитить экземпляр Azure Digital Twins и исключить общедоступную экспозицию. Кроме того, это помогает избежать утечки данных из вашей виртуальной сети Azure (VNet).
Конечная точка частного доступа использует IP-адрес из адресного пространства виртуальной сети Azure. Сетевой трафик между клиентом в вашей частной сети и экземпляром Azure Digital Twins проходит через VNet и Private Link в основной сети Microsoft, исключая воздействие общедоступного Интернета.
Настройка конечной точки частного доступа для экземпляра Azure Digital Twins позволяет защитить экземпляр Azure Digital Twins и устранить общедоступную уязвимость, а также избежать кражи данных из виртуальной сети.
Инструкции по настройке Private Link для Azure Digital Twins см. в статье "Включение частного доступа с помощью Private Link".
Примечание.
Доступ к частной сети с помощью Azure Private Link применяется для доступа к Azure Digital Twins через REST API. Эта функция не применяется к сценариям исходящего трафика с помощью функции маршрутизации событий Azure Digital Twins.
Внимание
Azure Digital Twins Explorer не поддерживает частные конечные точки. Если вы хотите использовать Azure Digital Twins Explorer с экземпляром Azure Digital Twins, использующим Приватный канал для отключения общедоступного доступа, вы можете развернуть базу кода Azure Digital Twins Explorer в частном порядке в облаке. Инструкции по этому вопросу см. в Azure Digital Twins Explorer: работа в облаке.
Рекомендации по проектированию
При работе с Private Link для Azure Digital Twins учтите следующие факторы.
- Цены: Для получения сведений о ценах см. Цены на Azure Private Link.
- Региональная доступность: Приватная ссылка для Azure Digital Twins доступна во всех регионах, где доступен Azure Digital Twins.
- Azure Digital Twins Explorer: Azure Digital Twins Explorer не может получить доступ к экземплярам Azure Digital Twins с отключенным общедоступным доступом. Однако вы можете использовать функции Azure для развертывания базы кода Azure Digital Twins Explorer в частном порядке. Инструкции о том, как это сделать, см. Azure Digital Twins Explorer: запуск в облаке.
- Максимальное число частных конечных точек на один экземпляр Azure Digital Twins составляет 10
- Другие ограничения: для получения дополнительной информации об ограничениях Azure Private Link смотрите документацию по ограничениям Azure Private Link.
Теги сервиса
Тег службы представляет группу префиксов IP-адресов из определенной службы Azure. Корпорация Майкрософт управляет префиксами адресов, входящих в тег службы, и автоматически обновляет этот тег при изменении адресов, сводя к минимуму сложность частых обновлений правил сетевой безопасности. Дополнительные сведения о тегах служб см. в разделе "Теги виртуальной сети".
Теги служб можно использовать для определения элементов управления доступом к сети в группах безопасности сети или Брандмауэр Azure с помощью тегов служб вместо определенных IP-адресов при создании правил безопасности. Указав имя тега службы (в данном случае AzureDigitalTwins) в соответствующем поле источника или назначения правила, можно разрешить или запретить трафик для соответствующей службы.
Ниже приведены подробные сведения о теге службы AzureDigitalTwins.
Тег | Цель | Может ли использовать входящий или исходящий трафик? | Может быть региональным? | Можно ли использовать с Брандмауэром Azure? |
---|---|---|---|---|
AzureDigitalTwins | Azure Digital Twins Примечание. Этот тег или IP-адреса, охватываемые этим тегом, можно использовать для ограничения доступа к конечным точкам, настроенным для маршрутов событий. |
Входящий трафик | Нет | Да |
Использование тегов службы для доступа к конечным точкам маршрута событий
Ниже приведены инструкции о том, как получить доступ к конечным точкам маршрута событий с помощью тегов службы в Azure Digital Twins.
Сначала скачайте ссылку на JSON-файл с примерами диапазонов IP-адресов Azure и тегами службы: Диапазоны IP-адресов Azure и теги службы.
Найдите диапазоны IP-адресов AzureDigitalTwins в файле JSON.
Ознакомьтесь с документацией внешнего ресурса, подключенного к конечной точке (например, Event Grid, Event Hubs (Центры событий), Service Bus или Azure Storage для события недоставленных сообщений), чтобы узнать, как задать IP-фильтры для этого ресурса.
Настройте IP-фильтры для внешних ресурсов, используя диапазоны IP-адресов из шага 2.
Периодически обновляйте диапазоны IP-адресов. Диапазоны могут меняться со временем, поэтому рекомендуется регулярно проверять и обновлять их при необходимости. Частота таких обновлений может варьироваться, но рекомендуется проверять их наличие раз в неделю.
Шифрование неактивных данных
Azure Digital Twins выполняет шифрование неактивных и передаваемых данных, когда они записываются в наши центры обработки данных, а затем расшифровывает данные при доступе к ним. Это шифрование выполняется с помощью ключа шифрования, которым управляет корпорация Майкрософт.
Общий доступ к ресурсам между источниками (CORS)
Azure Digital Twins сейчас не поддерживает Предоставление общего доступа к ресурсам независимо от источника (CORS). В результате, если вы вызываете REST API из приложения браузера, интерфейса Управление API (APIM) или соединителя Power Apps, может возникнуть ошибка политики.
Для устранения этой ошибки можно использовать одно из следующих действий.
- Удалить заголовок CORS
Access-Control-Allow-Origin
из сообщения. Этот заголовок указывает, можно ли предоставить общий доступ к ответу. - Кроме того, можно создать прокси-сервер CORS и выполнять запрос REST API Azure Digital Twins через него.
Следующие шаги
Сведения об этих концепциях см. в статье Настройка экземпляра и аутентификации.
Сведения о том, как взаимодействовать с этими концепциями из кода клиентского приложения, см. в статье Написание кода аутентификации приложения.
Узнайте больше о службе Azure RBAC.