日期:2014-05-17  浏览次数:20871 次

Winfrom调用WCF时如何隐藏真实的IP和端口
上一次研究winfrom下如何不让客户端直接访问数据库,而是通过调用WCF(中间数据库访问层)去访问数据库把需要的信息返回到客户端,从而做到了保护数据库的安全,但随之我又发现了一个问题,就是我在客户端调用WCF(中间数据库访问层)去访问数据库,那么客户端就肯定知道WCF(中间数据库访问层)的IP和端口的了,这个已经用别人写的网络工具测出所要调用的WCF服务器的IP和端口了。随后我又用了一个简单的工具对WCF服务器的IP和端口进行攻击,发现其他的客户端这时就悲剧了...所以想问下在WCF服务器没有多好的设备的情况下如何做到保护WCF服务器的安全?平时大家都是怎样做的?或者能不能在客户端调用WCF服务器的时候隐藏真实的WCF服务器端口之类的?唉,成长的过程中总是问题多多,希望各位有经验的大虾前来指引。。。万分感谢...

------解决方案--------------------
WCF 的安全模型很复杂。。。你上网搜搜资料很多。你这个需求来说,做个信道安全的就可以了。

比如使用 SSL
------解决方案--------------------
没有ip和端口怎么访问呢。
除非你架设一个代理服务器,你访问它,它访问真实的服务。
从服务器看,只能看到代理服务器的ip地址。
------解决方案--------------------
什么叫做隐藏?这个根本不可能有这种概念。首先我们要知道你所谓的隐藏出自什么目的来说的。比如说通过别的服务器代理,那么客户端也还是知道代理服务器的ip和端口的!
------解决方案--------------------
隐藏IP是不可能的,但是可以不对公网暴露端口,
最简单有效的办法就是使用VPN
------解决方案--------------------
什么叫服务器? 就是谁都可以上!最多它不乐意时挣扎挣扎。
你想藏起来那就不叫服务器了。
你说的攻击莫非是拒绝服务攻击? 这个你没法躲的,只能是检测客户端请求,发现被滥用时对其进行屏蔽,如果你服务器带宽太窄,可能光流量都抗不住。当然这时你可能需要报警,也正因如此,你的服务器并不会轻易被攻击,除非这有利可图。

如果事情很严肃,还是找个安全专家问问(可能收费)。我对攻击这事不在行,以是只是个人想法。

WCF, over design了。