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


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

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

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

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

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

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

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

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

  • Создавать несколько соединений Private Link к экземпляру управления API.

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

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

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

  • Объедините входящие частные конечные точки с экземплярами Standard версии 2 с интеграцией исходящих виртуальных сетей для обеспечения сквозной сетевой изоляции ваших клиентов и внутренних служб управления API.

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

Внимание

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

Ограничения

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

Типичные сценарии

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

Поддерживаемые конфигурации включают:

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

  • Настройте Azure Front Door (или Azure Front Door совместно с Azure Application Gateway) для получения внешнего трафика, а затем распределяйте его в частном порядке в шлюз управления API. Например, см. статью "Подключение Azure Front Door Premium" к управлению API Azure с помощью приватного канала.

    Примечание.

    В настоящее время маршрутизация трафика в частном порядке из Azure Front Door в экземпляр API Management Premium v2 не поддерживается.

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

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

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

Как правило, администратор сети создает частную конечную точку. В зависимости от разрешений управления доступом на основе ролей 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

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

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

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

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

Создание частной конечной точки при создании экземпляра службы управления API

  1. В мастере создания службы управления API выберите вкладку "Сеть ".

  2. В типе подключения выберите частную конечную точку.

  3. Выберите + Добавить.

  4. На странице "Создание частной конечной точки " введите или выберите следующие сведения:

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

  6. В разделе "Частная интеграция DNS" выберите "Интеграция с частной зоной DNS". Отображается зона DNS по умолчанию: privatelink.azure-api.net.

  7. Нажмите ОК.

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

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

  1. Перейдите в службу управления API на портале Azure.

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

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

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

  4. На вкладке Основные сведения введите или выберите следующие сведения:

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

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

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

    Внимание

    Для управления API поддерживается только подресурс шлюза. Другие подресурсы не поддерживаются.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Чтобы ограничить входящий трафик экземпляром службы управления 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.privatelink.azure-api.net

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

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

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

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

Request originated from client public IP address 192.0.2.12, 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. 

Ограничение для имени личного домена на уровнях версии 2

В настоящее время на уровнях "Стандартная v2" и "Премиум v2", для управления API необходимо DNS-имя, доступное для разрешения в публичной сети, чтобы обеспечить возможность трафика к конечной точке шлюза. Если вы настраиваете имя личного домена для конечной точки шлюза, это имя должно быть общедоступным, не ограничено частной зоной DNS.

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