#azure #azure-web-app-service #azure-virtual-network
#azure #azure-web-app-service #azure-виртуальная сеть
Вопрос:
У меня есть приложение Azure с двумя службами приложений. Служба приложений A вызывает API для службы приложений B.
Я хочу использовать частную ссылку, чтобы убедиться, что трафик между ними является частным и не проходит через общедоступный IP. Итак, вот что я сделал:
- Создана новая виртуальная сеть
- Настроенная частная конечная точка из двух служб приложений в новую виртуальную сеть с интеграцией частного DNS
- Убедитесь, что частный DNS создан, связан с новой виртуальной сетью, и в нем зарегистрированы обе службы.
- Убедился, что обе службы недоступны публично (я получаю 403)
- Для тестирования: создал новую виртуальную машину в виртуальной сети и убедился, что я могу переходить от виртуальной машины к службам. Работает нормально. Я просмотрел службы, используя их исходный URL: serviceX.azurewebsites.net .
Однако, когда я пытаюсь вызвать службу B из службы A (используя тот же URL-адрес — serviceb.azurewebsites.net ), я получаю 403 (Запрещено).
Чего мне не хватает?
Как я могу сделать так, чтобы две службы приложений, подключенные по частной ссылке к одной и той же виртуальной сети, соединялись друг с другом?
Ответ №1:
В этом случае, вероятно, вам необходимо интегрировать ваше приложение с виртуальной сетью Azure, а для подсети интеграции требуется неиспользуемая подсеть в той же виртуальной сети.
От использования частных конечных точек для веб-приложения Azure,
Частная конечная точка используется только для входящих потоков в ваше веб-приложение. Исходящие потоки не будут использовать эту частную конечную точку, но вы можете вводить исходящие потоки в свою сеть в другой подсети с помощью функции интеграции с виртуальной сетью.
Также обратите внимание, что
Если вы перенаправляете весь исходящий трафик в свою виртуальную сеть, на него распространяются NSG и UDR, которые применяются к вашей подсети интеграции. При маршрутизации всего исходящего трафика в виртуальную сеть исходящие адреса остаются исходящими адресами, указанными в свойствах приложения, если не указаны маршруты для отправки трафика в другое место.
Кроме того, если вы установите WEBSITE_VNET_ROUTE_ALL
в настройках приложения значение 1
, это повлияет на все ваши исходящие вызовы, и если вы хотите, чтобы ваше приложение использовало частные зоны DNS Azure, вы должны установить WEBSITE_DNS_SERVER
значение со значением 168.63.129.16
.
Комментарии:
1. Забыл упомянуть в своем вопросе — я уже установил WEBSITE_VNET_ROUTE_ALL и WEBSITE_DNS_SERVER. Должен ли я добавить интеграцию с виртуальной сетью поверх нее?
2. ДА. Необходимо включить интеграцию виртуальной сети в отдельной подсети в той же виртуальной сети.
3. Спасибо! Это сделало это.