0

Приложение Silverlight сидит на сервере, доступном из Интернета, и WebApi сидит на сервере за брандмауэром, который недоступен через Интернет, но может быть доступен через интранет. Как сервер приложений Silverlight, так и сервер WebApi могут разговаривать в интрасети. Возможно ли, чтобы приложение Silverlight было доступно из Интернета, чтобы поговорить с WebApi?Silverlight, вызывающий webapi за брандмауэром

+1

Да, это возможно. В чем же проблема? – JotaBe

+0

Как я могу настроить его для работы? Поскольку сейчас брандмауэр блокирует вызовы webapi, потому что сервер webapi сидит за брандмауэром, и этот сервер не должен быть открыт для интернета. Как мы можем сделать приложение на стороне клиента Silverlight для общения с webapi без открытия каких-либо портов брандмауэра в WebApi Server. – AllSpark

+0

@JotaBe любые документы или ссылки, на которые вы могли бы направить меня? – AllSpark

ответ

0

Вам просто нужно добавить правило брандмауэра, которое позволяет Green Server получать доступ к Red Server на данном порту. Вы можете добавлять фильтры MAC, фильтры IP, использовать специальный IP-адрес в другой подсети на Red Server, выставлять API в необычном порту (не 80), использовать клиентские сертификаты, выставлять API через SSL и многое другое для защиты сервера внутри брандмауэра и связи между серверами.

Это миссия брандмауэра. Если нет, вы просто не подключаете сети через брандмауэр.

+0

Yup, который будет работать, если его в Интранете, но мы говорим об Интернете, а silverlight - приложение на стороне клиента. Таким образом, в целом все приложения загружаются в клиентское право и пытаются делать вызовы в webapi. Помещение фильтров Mac бесполезно в этом сценарии или помещает webapi за брандмауэр (ограниченный сервер интрасети). Я что-то пропустил? вы могли бы сделать ясность, потому что запуск анализатора пакетов говорит, что silverlight полностью клиентская сторона. – AllSpark

+0

«Есть приложение Silverlight на сервере» заставило меня подумать, что у сервера была какая-то логика, открытая для клиентов Silverlight. В этом случае я поставил бы этот сервер из брандмауэра, который связывается с SQL Server через брандмауэр. Однако похоже, что ваше клиентское приложение говорит напрямую с SQL Server. Открытие SQL Server в Интернете гораздо более опасно, если открыть веб-сервер, демонстрирующий функциональные возможности, которые контролируют конечные точки. Однако, в вашем случае, похоже, что нет другого способа сделать ваше приложение уверенным, но VLAN, если клиенты находятся под вашим контролем – JotaBe