Подключение в частном порядке Управление API с помощью входящей частной конечной точки
ОБЛАСТЬ ПРИМЕНЕНИЯ: Разработчик | Базовый | Стандартный | Премиум
Вы можете настроить входящие частные конечные точки для экземпляра Управление API, чтобы клиенты в частной сети могли безопасно получить доступ к экземпляру через Приватный канал Azure.
Частная конечная точка использует IP-адрес из виртуальной сети Azure, в которой она размещена.
Сетевой трафик между клиентом в частной сети и Управлением API проходит через VNet и Приватный канал в магистральной сети Майкрософт, что позволяет избежать рисков общедоступного Интернета.
Настройте пользовательские параметры DNS или частную зону Azure DNS, чтобы сопоставить имя узла Управления API с частным IP-адресом конечной точки.
С помощью частной конечной точки и Приватного канала вы можете выполнять следующие действия:
Создавать несколько подключений Приватного канала к экземпляру Управления API.
Использовать частную конечную точку для отправки входящего трафика в безопасное подключение.
Использовать политику, чтобы различать трафик, поступающий от частной конечной точки.
Ограничить входящий трафик частными конечными точками, предотвращая кражу данных.
Внимание
Вы можете настроить только подключение частной конечной точки для входящего трафика к экземпляру Управление API. В настоящее время исходящий трафик не поддерживается.
Модель внешней или внутренней виртуальной сети можно использовать для установления исходящего подключения к частным конечным точкам из экземпляра Управление API.
Чтобы включить входящие частные конечные точки, экземпляр Управление API нельзя внедрить в внешнюю или внутреннюю виртуальную сеть.
Ограничения
- Только конечная точка шлюза Управление API экземпляра поддерживает входящий Приватный канал подключения.
- Каждый экземпляр Управление API поддерживает не более 100 Приватный канал подключений.
- Подключение в локальном шлюзе не поддерживаются.
Необходимые компоненты
- Существующий экземпляр Управления API. Создайте его, если у вас его нет.
- Экземпляр Управления API должен размещаться на
stv2
вычислительной платформе. Например, создайте новый экземпляр или, если у вас уже есть экземпляр уровня служб "Премиум", включите избыточность между зонами. - Не развертывайте (внедряйте) экземпляр во внешнюю или внутреннюю виртуальную сеть.
- Экземпляр Управления 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 доступен в вашей подписке и расположении. Найдите эти сведения на портале, перейдя в Центр Приватного канала. Выберите Поддерживаемые ресурсы.
Эти сведения также можно найти с помощью 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 для создания частной конечной точки, как показано в следующем разделе, сетевые политики автоматически отключаются в процессе создания
Создание частной конечной точки с помощью портала
Перейдите к экземпляру службы Управления API на портале Azure.
В меню слева выберите Сеть.
Выберите "Входящие подключения> к частной конечной точке" и "Добавить конечную точку".
В окне Создание частной конечной точки на вкладке Основы введите или выберите следующую информацию:
Параметр Значение Сведения о проекте Отток подписок Выберите свою подписку. Группа ресурсов Выберите существующую группу ресурсов или создайте новую. Она должна находиться в том же регионе, что и виртуальная сеть. Сведения об экземпляре Имя. Введите имя конечной точки, например myPrivateEndpoint. Имя сетевого интерфейса Введите имя сетевого интерфейса, например myInterface Область/регион Выберите расположение частной конечной точки. Она должна находиться в том же регионе, что и виртуальная сеть. Она не обязательно должна находиться в регионе, в котором размещен экземпляр Управления API. Выберите вкладку "Ресурс" или кнопку "Далее" в нижней части страницы. Следующие сведения о вашем экземпляре Управления API уже заполнены:
- Подписка
- Группа ресурсов
- Имя ресурса
В разделе Ресурс в списке Целевой подресурс выберите Шлюз.
Выберите вкладку виртуальная сеть или кнопку "Далее": виртуальная сеть в нижней части экрана.
В сети введите или выберите следующие сведения:
Параметр Значение Виртуальная сеть Выберите свою виртуальную сеть. Подсеть Выберите подсеть. Конфигурация частного IP-адреса В большинстве случаев выберите динамически выделять IP-адрес. Группа безопасности приложений При необходимости выберите группу безопасности приложений. Выберите вкладку DNS или кнопку "Далее" в нижней части экрана.
В Частная зона DNS интеграции введите или выберите следующие сведения:
Параметр Значение Интегрировать с частной зоной DNS Не изменяйте значение по умолчанию Да. Отток подписок Выберите свою подписку. Группа ресурсов Выберите группу ресурсов. Использование Azure DNS для частных доменов Отображается значение по умолчанию: (новое) privatelink.azure-api.net. Нажмите вкладку "Теги " или кнопку "Далее" в нижней части экрана. При желании введите теги для упорядочивания ресурсов Azure.
Выберите Review + create (Просмотреть и создать).
Нажмите кнопку создания.
Список подключений частных конечных точек к экземпляру
После создания частной конечной точки он появится в списке на странице подключений к входящей частной конечной точке экземпляра Управление API на портале.
Вы также можете использовать REST API Подключения к частным конечным точкам — список по службе, чтобы получить список подключений частных конечных точек к экземпляру службы.
Обратите внимание на состояние подключения конечной точки:
- Утверждено означает, что ресурс Управления API автоматически утвердил подключение.
- Ожидание означает, что подключение должно быть утверждено владельцем ресурса вручную.
Утверждение ожидающих подключений к частным конечным точкам
Если подключение к частной конечной точке находится в состоянии ожидания, владелец экземпляра Управления API должен вручную утвердить его, прежде чем его можно будет использовать.
Если у вас есть достаточные разрешения, подтвердите подключение к частной конечной точке на странице Подключения к частным конечным точкам экземпляра Управления API на портале.
Вы также можете использовать REST API Управления API Подключение к частной конечной точке — создание или обновление.
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{apimServiceName}privateEndpointConnections/{privateEndpointConnectionName}?api-version=2021-08-01
Отключение доступа к общедоступной сети (необязательно)
Чтобы дополнительно ограничить входящий трафик к экземпляру Управления API частными конечными точками, отключите доступ к общедоступной сети. Используйте службу Управление API — создание или обновление REST API, чтобы задать для свойства значение publicNetworkAccess
Disabled
.
Примечание.
Это publicNetworkAccess
свойство можно использовать только для отключения общедоступного доступа к экземплярам Управление API, настроенным с частной конечной точкой, а не с другими конфигурациями сети, такими как внедрение виртуальной сети.
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{apimServiceName}?api-version=2021-08-01
Authorization: Bearer {{authToken.response.body.access_token}}
Content-Type: application/json
Используйте следующий текст JSON:
{
[...]
"properties": {
"publicNetworkAccess": "Disabled"
}
}
Проверка подключения к частной конечной точке
После создания частной конечной точки подтвердите ее параметры DNS на портале:
Перейдите к экземпляру службы Управления API на портале Azure.
В меню слева выберите подключения к частной конечной точке для>входящего трафика сети и выберите созданную частную конечную точку.
На панели навигации слева выберите Конфигурация DNS.
Просмотрите записи 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.
Следующие шаги
- Используйте выражения политики с переменной
context.request
для идентификации трафика из частной конечной точки. - Узнайте больше о частных конечных точках и Приватный канал, включая цены на Приватный канал.
- См. дополнительные сведения об управлении подключениями к частным конечным точкам.
- Устранение проблем с подключением к частной конечной точке Azure.
- Используйте шаблон Resource Manager, чтобы создать экземпляр Управления API и частную конечную точку с частной интеграцией DNS.