0

Silverlight应用程序坐在可从Internet访问的服务器上,WebApi坐在防火墙后面的服务器上,该服务器无法通过互联网访问,但可通过Intranet访问。 Silverlight Application Server和WebApi Server都可以在Intranet中进行通话。从互联网访问的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,在非正常端口(不是80)中暴露API,使用客户端证书,通过SSL公开API以及许多其他事物保护防火墙内的服务器和服务器之间的通信。

这就是防火墙的使命。如果没有,你只是没有通过防火墙连接网络。

+0

是的,如果它在Intranet上工作,但我们正在谈论互联网和Silverlight是客户端应用程序。所以基本上整个应用程序加载到客户端,并尝试对webapi进行调用。在这种情况下放置Mac过滤器毫无用处,或者将webapi放置在防火墙(受限Intranet服务器)之后。我在这里错过了什么吗?你能否清楚,因为运行数据包分析器说silverlight完全是客户端。 – AllSpark

+0

“服务器中有一个Silverlight应用程序”让我觉得服务器有某种暴露给Silverlight客户端的逻辑。在那种情况下,我会将该服务器从通过防火墙与SQL Server通信的防火墙中移出。但是,它看起来像您的客户端应用程序直接与SQL Server对话。打开一个SQL Server到互联网是更加危险的,因为打开一个Web服务器暴露了受控端点的功能。但是,就您的情况而言,看起来没有其他方法可以确保您的应用程序,但是如果客户端在您的控制之下,则是VLAN – JotaBe