Пересылка HttpWebRequest из рабочей роли Windows Azure — в помещении wcf

Используя службу Windows Azure и предоставив конечную точку службы WCF из помещения (за брандмауэром, NAT ....), можно ли сделать сайт интрасети доступным для рабочей роли в Azure?

По сути, я хочу иметь возможность сделать запрос HttpWebRequest из рабочей роли в Azure на сайт в помещении, например http://intranet.domain.net. Это возможно? Или как я могу сделать это возможным?


person David Dury    schedule 16.01.2013    source источник


Ответы (1)


Это невозможно из коробки. У вас есть несколько вариантов (нетривиальных)

1) Вам нужно будет создать собственный «прокси», который получает запросы от служебной шины (скажем, через WebHttpRelayBinding), а затем перенаправляет запрос в «локальный» IIS с помощью HttpWebRequest или других HTTP-клиентов. Обратите внимание, что это большая работа и требует тщательного тестирования крайних случаев (например, сценариев аутентификации). Кроме того, он не работает с собственными доменными именами (например, intranet.domain.net) через «https».

2) Кроме того, вы можете разделить контент/веб-сайт и бизнес-данные/логику на отдельные части. Вы можете разместить контент непосредственно на общедоступном сайте. Затем этот общедоступный сайт может взаимодействовать с веб-службой в интрасети через NetTcpRelayBinding (или одну из *HttpRelayBinding) и выполнять бизнес-логику или извлекать данные.

person user1989267    schedule 18.01.2013