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


Подключение к Управление API с помощью входящей частной конечной точки

ОБЛАСТЬ ПРИМЕНЕНИЯ: Разработчик | Базовый | Стандартный | Премия

Вы можете настроить входящие частные конечные точки для экземпляра Управление API, чтобы клиенты в частной сети могли безопасно получить доступ к экземпляру через Приватный канал Azure.

  • Частная конечная точка использует IP-адрес из виртуальной сети Azure, в которой она размещена.

  • Сетевой трафик между клиентом в частной сети и Управлением API проходит через VNet и Приватный канал в магистральной сети Майкрософт, что позволяет избежать рисков общедоступного Интернета.

  • Настройте пользовательские параметры DNS или частную зону Azure DNS, чтобы сопоставить имя узла Управления API с частным IP-адресом конечной точки.

Схема, показывающая безопасное входящее подключение к Управление API с помощью частной конечной точки.

С помощью частной конечной точки и Приватного канала вы можете выполнять следующие действия:

  • Создавать несколько подключений Приватного канала к экземпляру Управления API.

  • Использовать частную конечную точку для отправки входящего трафика в безопасное подключение.

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

  • Ограничить входящий трафик частными конечными точками, предотвращая кражу данных.

Внимание

  • Вы можете настроить только подключение частной конечной точки для входящего трафика к экземпляру Управление API. В настоящее время исходящий трафик не поддерживается.

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

  • Чтобы включить входящие частные конечные точки, экземпляр Управление API нельзя внедрить в внешнюю или внутреннюю виртуальную сеть.

Ограничения

  • Только конечная точка шлюза Управление API экземпляра поддерживает входящий Приватный канал подключения.
  • Каждый экземпляр Управление API поддерживает не более 100 Приватный канал подключений.
  • Подключения не поддерживаются в локальном шлюзе или шлюзе рабочей области.

Необходимые компоненты

  • Существующий экземпляр Управления API. Создайте его, если у вас его нет.
  • Виртуальная сеть и подсеть для размещения частной конечной точки. Подсеть может содержать другие ресурсы Azure.
  • (Рекомендуется) Виртуальная машина в той же или другой подсети виртуальной сети для тестирования частной конечной точки.
  • Используйте среду Bash в Azure Cloud Shell. Дополнительные сведения см . в кратком руководстве по Bash в Azure Cloud Shell.

  • Если вы предпочитаете выполнять справочные команды CLI локально, установите Azure CLI. Если вы работаете в Windows или macOS, Azure CLI можно запустить в контейнере Docker. Дополнительные сведения см. в статье Как запустить Azure CLI в контейнере Docker.

    • Если вы используете локальную установку, выполните вход в Azure CLI с помощью команды az login. Чтобы выполнить аутентификацию, следуйте инструкциям в окне терминала. Сведения о других возможностях, доступных при входе, см. в статье Вход с помощью Azure CLI.

    • Установите расширение Azure CLI при первом использовании, когда появится соответствующий запрос. Дополнительные сведения о расширениях см. в статье Использование расширений с Azure CLI.

    • Выполните команду az version, чтобы узнать установленную версию и зависимые библиотеки. Чтобы обновиться до последней версии, выполните команду az upgrade.

Метод утверждения для частной конечной точки

Как правило, администратор сети создает частную конечную точку. В зависимости от разрешений управления доступом на основе ролей Azure (RBAC) созданная вами частная конечная точка либо автоматически утверждается для отправки трафика в экземпляр Управления API, либо требует, чтобы владелец ресурса вручную одобрил подключение.

Метод утверждения Минимальные разрешения RBAC
Автоматически Microsoft.Network/virtualNetworks/**
Microsoft.Network/virtualNetworks/subnets/**
Microsoft.Network/privateEndpoints/**
Microsoft.Network/networkinterfaces/**
Microsoft.Network/locations/availablePrivateEndpointTypes/read
Microsoft.ApiManagement/service/**
Microsoft.ApiManagement/service/privateEndpointConnections/**
Руководство Microsoft.Network/virtualNetworks/**
Microsoft.Network/virtualNetworks/subnets/**
Microsoft.Network/privateEndpoints/**
Microsoft.Network/networkinterfaces/**
Microsoft.Network/locations/availablePrivateEndpointTypes/read

Шаги по настройке частной конечной точки

  1. Получение доступных типов частных конечных точек в подписке
  2. Отключение политик сети в подсети
  3. Создание частной конечной точки с помощью портала
  4. Список подключений частных конечных точек к экземпляру
  5. Утверждение ожидающих подключений к частным конечным точкам
  6. Отключение доступа к общедоступной сети (необязательно)

Получение доступных типов частных конечных точек в подписке

Убедитесь, что тип частной конечной точки Управления API доступен в вашей подписке и расположении. Найдите эти сведения на портале, перейдя в Центр Приватного канала. Выберите Поддерживаемые ресурсы.

Эти сведения также можно найти с помощью REST API Доступные типы частных конечных точек – список.

GET https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{region}/availablePrivateEndpointTypes?api-version=2021-03-01

Выходные данные должны включать тип конечной точки Microsoft.ApiManagement.service:

[...]

      "name": "Microsoft.ApiManagement.service",
      "id": "/subscriptions/{subscriptionId}/providers/Microsoft.Network/AvailablePrivateEndpointTypes/Microsoft.ApiManagement.service",
      "type": "Microsoft.Network/AvailablePrivateEndpointTypes",
      "resourceName": "Microsoft.ApiManagement/service",
      "displayName": "Microsoft.ApiManagement/service",
      "apiVersion": "2021-04-01-preview"
    }
[...]

Отключение сетевых политик в подсети

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

Если для настройки частных конечных точек вы используете такие инструменты, как Azure PowerShell, Azure CLI или REST API, обновите конфигурацию подсети вручную. Примеры см. в разделе Управление сетевыми политиками для частных конечных точек.

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

Создание частной конечной точки с помощью портала

  1. Перейдите к экземпляру службы Управления API на портале Azure.

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

  3. Выберите "Входящие подключения> к частной конечной точке" и "Добавить конечную точку".

    Снимок экрана: добавление частной конечной точки с помощью портал Azure.

  4. В окне Создание частной конечной точки на вкладке Основы введите или выберите следующую информацию:

    Параметр Значение
    Сведения о проекте
    Отток подписок Выберите свою подписку.
    Группа ресурсов Выберите существующую группу ресурсов или создайте новую. Она должна находиться в том же регионе, что и виртуальная сеть.
    Сведения об экземпляре
    Имя. Введите имя конечной точки, например myPrivateEndpoint.
    Имя сетевого интерфейса Введите имя сетевого интерфейса, например myInterface
    Область/регион Выберите расположение частной конечной точки. Она должна находиться в том же регионе, что и виртуальная сеть. Она не обязательно должна находиться в регионе, в котором размещен экземпляр Управления API.
  5. Нажмите кнопку "Далее" в нижней части экрана. Следующие сведения о вашем экземпляре Управления API уже заполнены:

    • Отток подписок
    • Тип ресурса
    • Имя ресурса
  6. В разделе Ресурс в списке Целевой подресурс выберите Шлюз.

    Снимок экрана: параметры для создания частной конечной точки в портал Azure.

  7. Нажмите кнопку Далее: виртуальная сеть в нижней части экрана.

  8. В сети введите или выберите следующие сведения:

    Параметр Значение
    Виртуальная сеть Выберите свою виртуальную сеть.
    Подсеть Выберите подсеть.
    Конфигурация частного IP-адреса В большинстве случаев выберите динамически выделять IP-адрес.
    Группа безопасности приложений При необходимости выберите группу безопасности приложений.
  9. Нажмите кнопку "Далее" в нижней части экрана.

  10. В Частная зона DNS интеграции введите или выберите следующие сведения:

    Параметр Значение
    Интегрировать с частной зоной DNS Не изменяйте значение по умолчанию Да.
    Отток подписок Выберите свою подписку.
    Группа ресурсов Выберите группу ресурсов.
    Использование Azure DNS для частных доменов Отображается значение по умолчанию: (новое) privatelink.azure-api.net.
  11. Нажмите кнопку "Далее" в нижней части экрана. При желании введите теги для упорядочивания ресурсов Azure.

    1. Нажмите кнопку "Далее: просмотр и создание " в нижней части экрана.
  12. Нажмите кнопку создания.

Список подключений частных конечных точек к экземпляру

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

Обратите внимание на состояние подключения конечной точки:

  • Утверждено означает, что ресурс Управления API автоматически утвердил подключение.
  • Ожидание означает, что подключение должно быть утверждено владельцем ресурса вручную.

Утверждение ожидающих подключений к частным конечным точкам

Если подключение к частной конечной точке находится в состоянии ожидания, владелец экземпляра Управления API должен вручную утвердить его, прежде чем его можно будет использовать.

Если у вас есть достаточные разрешения, подтвердите подключение к частной конечной точке на странице Подключения к частным конечным точкам экземпляра Управления API на портале. В контекстном меню подключения (...) выберите " Утвердить".

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

Отключение доступа к общедоступной сети (необязательно)

Чтобы дополнительно ограничить входящий трафик к экземпляру Управления API частными конечными точками, отключите доступ к общедоступной сети.

Примечание.

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

Чтобы отключить доступ к общедоступной сети с помощью Azure CLI, выполните следующую команду az apim update, заменив имена экземпляра Управление API и группы ресурсов:

az apim update --name my-apim-service --resource-group my-resource-group --public-network-access false

Вы также можете использовать службу Управление API — обновить REST API для отключения доступа к общедоступной сети, задав publicNetworkAccess для свойства значение Disabled.

Проверка подключения к частной конечной точке

После создания частной конечной точки подтвердите ее параметры DNS на портале:

  1. Перейдите к экземпляру службы Управления API на портале Azure.

  2. В меню слева в разделе "Развертывание и инфраструктура" выберите подключения к входящей частной конечной точке сети>и выберите созданную частную конечную точку.

  3. В области навигации слева в разделе "Параметры" выберите конфигурацию DNS.

  4. Просмотрите записи DNS и IP-адрес частной конечной точки. IP-адрес — это частный адрес в адресном пространстве подсети, в которой настроена частная конечная точка.

Тестирование в виртуальной сети

Подключитесь к виртуальной машине, настроенной в виртуальной сети.

Запустите служебную программу, например nslookup или dig, чтобы найти IP-адрес конечной точки шлюза по умолчанию по Приватному каналу. Например:

nslookup my-apim-service.azure-api.net

Выходные данные должны включать частный IP-адрес, связанный с частной конечной точкой.

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

Тестирование из Интернета

Находясь вне пути к частной конечной точке, попытайтесь вызвать конечную точку шлюза по умолчанию для экземпляра Управления API. Если общедоступный доступ отключен, выходные данные включают ошибку с кодом 403 состояния и сообщением, похожим на следующее:

Request originated from client public IP address xxx.xxx.xxx.xxx, public network access on this 'Microsoft.ApiManagement/service/my-apim-service' is disabled.
       
To connect to 'Microsoft.ApiManagement/service/my-apim-service', please use the Private Endpoint from inside your virtual network.