Azure Служба приложений за Azure Шлюзом приложений - PullRequest
0 голосов
/ 20 апреля 2020

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

  • Добавил VNet
  • Добавил su bnet и добавил в него все службы приложений
  • Добавлен шлюз приложения с соответствующими правилами для указания на службу приложения
  • Добавлены ограничения доступа к службе приложения, чтобы разрешить только su bnet шлюза приложения и общедоступный c IP приложения шлюз

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

Из того, что я прочитал в Интернете, добавление publi c IP шлюза должно быть достаточно для разрешения доступа через шлюз, но кажется, что запросы с моей локальной машины заблокированы. Я что-то здесь неправильно понимаю?

Редактировать: Я также пытался назначить частный IP-адрес внешнего интерфейса шлюзу и добавить к нему доступ в службе приложения, но это также помогло не работает

Редактировать 2: Моя конфигурация

Ограничения доступа к службе приложения: Ограничения доступа

Внутренний пул: Внутренний пул

Настройки HTTP: Настройки HTTP

Слушатель: Слушатель

Правило: Правило

1 Ответ

0 голосов
/ 21 апреля 2020

Из вашего описания «Добавлен su bnet и добавлены все службы приложения к нему», я предполагаю, что вы имеете в виду интеграция приложения с Azure VNet или включением конечная точка службы с Microsoft.Web для su bnet. Если это так, вы можете удалить их. И то, и другое бесполезно в этом сценарии.

Чтобы ограничить доступ через шлюз, вам нужно только добавить внешний IP-адрес к ограничениям на доступ к службе приложений Azure. Для получения дополнительной информации вы можете обратиться к этому блогу https://www.cloudmanav.com/azure/restricting-appservice-accessible-via-appgateway/#

Если у вас есть NSG, связанный с подсетями, вы можете выполнить предварительные условия здесь https://docs.microsoft.com/en-us/azure/application-gateway/configuration-overview#network -security-groups -on-the-application-gateway-su bnet

Редактировать

Возможно, в вашей службе приложений настроено перенаправление или Azure Аутентификация Active Directory, которая вызывает перенаправление. Поэтому, когда происходит перенаправление, клиент отправляет запрос непосредственно на URL-адрес службы приложений contoso.azurewebsites.net/xxx вместо того, чтобы проходить через URL-адрес шлюза приложения contoso.com/xxx.

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

...