Разрешить доступ к пространствам имен Центров событий Azure из определенных виртуальных сетей

Интегрируйте центры событий с конечными точками службы виртуальной сети Azure, чтобы ограничить доступ к пространству имен Центров событий из определенных подсетей виртуальной сети. В этой статье объясняется, как работает интеграция виртуальной сети и предоставляет пошаговые инструкции по настройке.

Overview

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

При настройке пространства имен Event Hubs минимум с одной конечной точкой виртуальной сети службы данное пространство имен принимает трафик только из авторизованных подсетей. С точки зрения виртуальной сети конечная точка службы создает изолированный сетевой туннель из подсети в пространство имен Центров событий.

Эта конфигурация устанавливает частное и изолированное подключение между рабочими нагрузками в подсети и пространством имен Центров событий, даже если конечная точка службы Центров событий использует общедоступный IP-адрес.

Важные аспекты

  • Эта функция не поддерживается на базовом уровне.
  • Если вы включите виртуальные сети для пространства имен Центров событий, входящие запросы блокируются по умолчанию, если они не исходят из службы, работающей из разрешенных виртуальных сетей. Заблокированные запросы включают запросы из других служб Azure, портала Azure, служб ведения журнала и метрик и т. д. В качестве исключения можно разрешить доступ к ресурсам Центров событий из определенных доверенных служб даже при включении виртуальных сетей. Список доверенных служб см. в разделе "Доверенные службы".
  • Укажите как минимум одно правило IP-адреса или правило виртуальной сети для пространства имен, разрешающее трафик только с указанных IP-адресов или подсети виртуальной сети. Если вы не указываете правила IP-адресов и виртуальной сети, пространство имен доступно через общедоступный Интернет (с помощью ключа доступа).

Расширенные сценарии безопасности, включенные интеграцией виртуальной сети

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

Прямые IP-маршруты между сетевыми отсеками, даже те, которые используют протокол HTTPS по протоколу TCP/IP, уязвимы для уязвимостей сетевого уровня. Центры событий предоставляют более безопасную альтернативу, выступая в качестве посредника. Рабочие нагрузки в отдельных виртуальных сетях, подключающихся к одному экземпляру Центров событий, могут надежно обмениваться сообщениями при сохранении сетевой изоляции.

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

Привязка центров событий к виртуальным сетям

Правила виртуальной сети определяют, принимает ли пространство имен Центров событий подключения из определенной подсети виртуальной сети.

Чтобы привязать пространство имен Центров событий к виртуальной сети:

  1. Создайте конечную точку службы в подсети виртуальной сети и включите ее для Microsoft.EventHub. Дополнительные сведения см. в статье Конечные точки служб для виртуальной сети.
  2. Добавьте правило виртуальной сети для привязки пространства имен Центров событий к конечной точке службы.

Правило виртуальной сети создает связь между пространством имен Центров событий и подсетью виртуальной сети. Все рабочие нагрузки в подсети могут получить доступ к пространству имен Event Hubs, пока правило действует.

Note

Центры событий не устанавливают исходящие подключения к подсети. Правило предоставляет только входящий доступ из подсети в Центры событий.

Используйте портал Azure

При создании пространства имен можно выбрать один из вариантов:

  • Общедоступный доступ: разрешает доступ из всех сетей.
  • Частный доступ: ограничивает доступ только к частным конечным точкам.

После создания пространства имен можно дополнительно уточнить доступ, указав IP-адреса или виртуальные сети или периметры безопасности сети.

Настройка общедоступного доступа при создании пространства имен

Чтобы включить общедоступный доступ, выберите общедоступный доступ на странице "Сеть " мастера создания пространства имен.

Снимок экрана: страница

После создания пространства имен выберите Сеть в меню слева на странице пространства имен Event Hubs.

По умолчанию доступ к общедоступной сети включен для пространства имен для всех сетей.

Снимок экрана страницы

Этот параметр обеспечивает общедоступный доступ из всех сетей с помощью ключа доступа. Пространство имен принимает подключения из любого IP-адреса (с помощью ключа доступа).

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

Настройка выбранных сетей для существующего пространства имен

В этом разделе показано, как использовать портал Azure, чтобы добавить конечную точку службы для виртуальной сети. Чтобы ограничить доступ, интегрируйте сервисную конечную точку виртуальной сети для этого пространства имен Центров событий.

  1. Перейдите в пространство имен Центров событий на портале Azure.

  2. Выберите "Сеть" в разделе "Параметры " в меню слева.

  3. На странице "Сеть" выберите "Управление " в разделе "Доступ к общедоступной сети".

    Снимок экрана: страница

  4. На странице доступа к общедоступной сети в разделе "Действие по умолчанию " выберите "Включить" из выбранных сетей , чтобы разрешить доступ только с указанных IP-адресов.

    Снимок экрана: страница управления доступом к общедоступной сети с выбранным параметром

    Important

    Если выбрать выбранные сети, добавьте по крайней мере одно правило брандмауэра IP-адресов или виртуальную сеть с доступом к пространству имен. Выберите "Отключено" , если вы хотите ограничить весь трафик в это пространство имен только через частные конечные точки .

  5. В разделе "Виртуальные сети" на странице выберите +Добавить виртуальную сеть ->Добавить существующую виртуальную сеть*. Выберите "Добавить новую виртуальную сеть ", если вы хотите создать новую виртуальную сеть.

    Выбор элемента меню

    Important

    Если вы выберете Выбранные сети, добавьте по крайней мере одно правило IP-брандмауэра или виртуальную сеть, которые могут получить доступ к вашему пространству имен. Выберите "Отключено" , если вы хотите ограничить весь трафик в это пространство имен только через частные конечные точки .

  6. Выберите виртуальную сеть из списка виртуальных сетей, выберите подсеть и нажмите кнопку "Включить". Перед добавлением виртуальной сети в список необходимо включить конечную точку службы. Если конечная точка службы не включена, портал предложит включить ее.

    Изображение, показывающее выбор подсети.

  7. Вы увидите сообщение об успешном выполнении после включения конечной точки службы для подсети Microsoft.EventHub. Нажмите кнопку "Добавить " в нижней части страницы, чтобы добавить сеть.

    Изображение, показывающее выбор подсети и включение конечной точки.

    Note

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

  8. В разделе "Исключение " укажите, следует ли разрешить доверенным службам Майкрософт доступ к этому ресурсу. Дополнительные сведения см. в доверенных службах Майкрософт .

  9. На панели инструментов нажмите Сохранить, чтобы сохранить параметры. Подождите несколько минут, пока подтверждение появится в уведомлениях портала.

    Изображение, показывающее сохранение виртуальной сети.

    Note

    Чтобы удалить правило виртуальной сети, сначала удалите блокировку удаления Azure Resource Manager в виртуальной сети.

Доверенные службы Майкрософт

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

Доверенная служба Поддерживаемые сценарии использования
Сетка событий Azure Разрешает службе "Сетка событий Azure" отправку событий в концентраторы событий в пространстве имен концентраторов событий. Кроме того, необходимо выполнить следующие действия.
  • Включение назначенного системой удостоверения для раздела или домена
  • Добавьте удостоверение в роль отправителя данных концентраторов событий Azure в пространстве имен концентраторов событий.
  • Затем настроить подписку на события, использующую концентратор событий в качестве конечной точки для назначаемого системой удостоверения.

Дополнительные сведения см. в разделе Доставка событий с помощью управляемого удостоверения.

Azure Stream Analytics Позволяет заданию Azure Stream Analytics считывать данные из (входных данных) или записывать данные в (выходные данные) концентраторы событий в вашем пространстве имен концентраторов событий.

Важно. Задание Stream Analytics должно быть настроено для использования управляемого удостоверения для доступа к концентратору событий. Дополнительные сведения см. в статье "Использование управляемых удостоверений для доступа к концентратору событий" из задания Azure Stream Analytics (предварительная версия).

Центр Интернета вещей Azure Позволяет Центр Интернета вещей отправлять сообщения в центры событий в пространстве имен Центров событий. Кроме того, необходимо выполнить следующие действия.
  • Включить назначаемое системой удостоверение для центра Интернета вещей
  • Добавьте удостоверение в роль отправителя данных концентраторов событий Azure в пространстве имен концентраторов событий.
  • Затем настроить центр Интернета вещей, который использует концентратор событий в качестве пользовательской конечной точки, для использования проверки подлинности на основе удостоверений.
Управление API Azure

Служба API Management позволяет отсылать события в концентратор событий в пространстве имен концентраторов событий.

Azure Monitor (параметры диагностики и группы действий) Позволяет Azure Monitor отправлять диагностические сведения и оповещения концентраторам событий в пространстве имен Центров событий. Azure Monitor может выполнять чтение из концентратора событий, а также записывать данные в концентратор событий.
Azure Synapse Позволяет Azure Synapse подключаться к концентратору событий с помощью управляемого удостоверения рабочей области Synapse. Добавьте роль отправителя данных, получателя или владельца Центры событий Azure в удостоверение в пространстве имен Центров событий.
Анализатор данных Azure Позволяет Azure Data Explorer получать события из концентратора событий с помощью управляемого удостоверения кластера. Выполните следующие действия.
  • Настройте управляемое удостоверение в Azure Data Explorer
  • Предоставьте удостоверению роль Центры событий Azure приемника данных в концентраторе событий.
 
Azure IoT Central

Позволяет IoT Central экспортировать данные в центры событий в пространстве имен Центров событий. Вам также необходимо сделать следующие шаги:

  • Включите назначаемое системой удостоверение для приложения IoT Central.
  • Добавьте удостоверение в роль отправителя данных Центров событий Azure в пространстве имен Центров событий.
  • Затем настройте для Центров событий место назначения для экспорта в приложении IoT Central, чтобы использовать проверку подлинности на основе удостоверений.
Службы Azure для работы с медицинскими данными Позволяет соединителю IoT api здравоохранения приема данных медицинского устройства из пространства имен Центров событий и сохранять данные в настроенной службе ресурсов быстрого взаимодействия с здравоохранением (FHIR®). Соединитель Интернета вещей должен быть настроен для использования управляемого удостоверения для доступа к концентратору событий. Дополнительные сведения см. в статье "Начало работы с соединителем Интернета вещей" — API здравоохранения Azure.
Azure Digital Twins (Цифровые Двойники Azure) Позволяет Azure Digital Twins отправлять данные в центры событий в пространстве имен Центров событий. Кроме того, необходимо выполнить следующие действия.

  • Включите назначаемое системой удостоверение для экземпляра Azure Digital Twins.
  • Добавьте удостоверение в роль отправителя данных Центров событий Azure в пространстве имен Центров событий.
  • Затем настройте конечную точку Azure Digital Twins или подключение журнала данных Azure Digital Twins, которое использует назначаемое системой удостоверение для проверки подлинности. Дополнительные сведения о настройке конечных точек и маршрутов событий в ресурсы Центров событий из Azure Digital Twins см. в статье "Маршрутизация событий Azure Digital Twins" и создание конечных точек в Azure Digital Twins.

Ниже приведены другие доверенные службы для Центры событий Azure:

  • Azure Arc
  • Azure Kubernetes
  • Машинное обучение Azure
  • Microsoft Purview

Использование шаблона Resource Manager

Этот пример шаблона Resource Manager добавляет правило виртуальной сети в существующее пространство имен Центров событий. Он задает идентификатор подсети в виртуальной сети для правила сети.

Идентификатор — это полный путь Resource Manager для подсети виртуальной сети. Например: /subscriptions/{id}/resourceGroups/{rg}/providers/Microsoft.Network/virtualNetworks/{vnet}/subnets/default.

При добавлении правил виртуальной сети или брандмауэра задайте значение defaultActionDeny.

{
    "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "parameters": {
      "eventhubNamespaceName": {
        "type": "string",
        "metadata": {
          "description": "Name of the Event Hubs namespace"
        }
      },
      "virtualNetworkName": {
        "type": "string",
        "metadata": {
          "description": "Name of the Virtual Network Rule"
        }
      },
      "subnetName": {
        "type": "string",
        "metadata": {
          "description": "Name of the Virtual Network Sub Net"
        }
      },
      "location": {
        "type": "string",
        "metadata": {
          "description": "Location for Namespace"
        }
      }
    },
    "variables": {
      "namespaceNetworkRuleSetName": "[concat(parameters('eventhubNamespaceName'), concat('/', 'default'))]",
      "subNetId": "[resourceId('Microsoft.Network/virtualNetworks/subnets/', parameters('virtualNetworkName'), parameters('subnetName'))]"
    },
    "resources": [
      {
        "apiVersion": "2018-01-01-preview",
        "name": "[parameters('eventhubNamespaceName')]",
        "type": "Microsoft.EventHub/namespaces",
        "location": "[parameters('location')]",
        "sku": {
          "name": "Standard",
          "tier": "Standard"
        },
        "properties": { }
      },
      {
        "apiVersion": "2017-09-01",
        "name": "[parameters('virtualNetworkName')]",
        "location": "[parameters('location')]",
        "type": "Microsoft.Network/virtualNetworks",
        "properties": {
          "addressSpace": {
            "addressPrefixes": [
              "10.0.0.0/23"
            ]
          },
          "subnets": [
            {
              "name": "[parameters('subnetName')]",
              "properties": {
                "addressPrefix": "10.0.0.0/23",
                "serviceEndpoints": [
                  {
                    "service": "Microsoft.EventHub"
                  }
                ]
              }
            }
          ]
        }
      },
      {
        "apiVersion": "2018-01-01-preview",
        "name": "[variables('namespaceNetworkRuleSetName')]",
        "type": "Microsoft.EventHub/namespaces/networkruleset",
        "dependsOn": [
          "[concat('Microsoft.EventHub/namespaces/', parameters('eventhubNamespaceName'))]"
        ],
        "properties": {
          "publicNetworkAccess": "Enabled",
          "defaultAction": "Deny",
          "virtualNetworkRules": 
          [
            {
              "subnet": {
                "id": "[variables('subNetId')]"
              },
              "ignoreMissingVnetServiceEndpoint": false
            }
          ],
          "ipRules":[],
          "trustedServiceAccessEnabled": false
        }
      }
    ],
    "outputs": { }
  }

Инструкции по развертыванию шаблона см. в статье Развертывание ресурсов с помощью шаблонов ARM и Azure PowerShell.

Important

Если вы не указываете правила для IP-адресов или виртуальной сети, все сетевые данные передаются в пространство имен, даже если вы установили defaultAction на Deny. Пространство имен доступно через общедоступный Интернет (с помощью ключа доступа). Чтобы разрешить трафик только из указанных IP-адресов или подсети виртуальной сети, укажите хотя бы одно правило IP-адресов или правило виртуальной сети для пространства имен.

Использование Azure CLI

Используйте команды az eventhubs namespace network-rule-set для управления правилами виртуальной сети для пространства имен Event Hubs.

  • add — Добавление правила виртуальной сети
  • list — вывод списка всех сетевых правил
  • update — обновление сетевых правил
  • remove — удаление правила виртуальной сети

Использование Azure PowerShell

Используйте следующие команды Azure PowerShell для управления правилами виртуальной сети для пространства имен Центров событий:

Command Description
Add-AzEventHubVirtualNetworkRule Добавление правила виртуальной сети
New-AzEventHubVirtualNetworkRuleConfig Создайте конфигурацию правила виртуальной сети (используется с Set-AzEventHubNetworkRuleSet)
Set-AzEventHubNetworkRuleSet Применение конфигурации сетевого правила к пространству имен
Remove-AzEventHubVirtualNetworkRule Удаление правила виртуальной сети

Действие по умолчанию и доступ к общедоступной сети

REST API

Поведение defaultAction свойства зависит от версии API:

Версия API Значение по умолчанию Поведение
2021-01-01-preview и ранее Deny Правило запрета не применяется, если только вы не настраиваете фильтры IP-адресов или правила виртуальной сети. Без правил трафик разрешен.
2021-06-01-preview и позже Allow Служба применяет настроенное действие. Установите значение Deny, чтобы блокировать трафик, не соответствующий правилам.

API версии 2021-06-01-preview также вводит свойство publicNetworkAccess:

  • Enabled — Разрешить операции через общедоступный Интернет
  • Disabled — ограничить операции только частными ссылками

Служба запоминает правила при отключении и повторном включении.

Дополнительные сведения см. в статье "Создание или обновление набора правил сети " и "Создание или обновление подключений к частной конечной точке".

Note

Параметры сети не обходят проверку подлинности. Служба всегда проверяет утверждения проверки подлинности SAS или Microsoft Entra после проверки сетевых правил, настроенных с помощью defaultAction, publicNetworkAccess, и privateEndpointConnections.

Azure portal

Портал Azure всегда использует последнюю версию API для получения и задания свойств. Если вы ранее настроили пространство имен с помощью версии 2021-01-01-preview и более ранних версий с defaultAction установленным значением Deny, и вы указали нулевые IP-фильтры и правила виртуальной сети, портал ранее проверил выбранные сети на странице "Сеть " пространства имен. Теперь он проверяет параметр "Все сети ".

Снимок экрана: страница