问题描述
有一个winform桌面应用程序,采用调用WCF服务的方式去访问远程数据库,目的就是防止客户端安装文件被反编译之后,数据库连接字符串暴露。我想问的是,客户端不是需要通过添加服务引用去添加WCF服务的吗,添加的时候是填了服务基址的,那么,这些东西会不会被反编译呢?如果能被反编译,那采用WCF访问数据库比较安全的说法,比不是成为笑柄了。
解决方案
解决方案二:
解决方案三:
不会的,服务的连接字串在服务器配置文件里,引用到客户端的只是个简单的代理,客户代理它本身只是发个执行的命令,真正执行是在服务端完成
解决方案四:
反编译个鬼啊。只要启动一个http调试器,就能把程序连接服务器的消息取下来,而且还可以整理成文档。
解决方案五:
如果你没完没了较真,那么任何东西在你面前好像都是“笑柄”似地。关键是尺度的问题。你把数据库暴露出来让每一个人随便删除数据,跟你暴露出某一个特定对象的删除功能的申请服务(而你的服务才决定到底是否允许删除),这种安全性成程度不一样的。如果一个超市是所有人随便拿东西出去都没有人管,另一个则是正规超市。而你说什么“正规超市不是也可能丢东西吗?那么这个‘正规’是不是成为笑柄了?”,我只能说你这个是属于你基本上偏执到了极点。
解决方案六:
一个实际的业务服务,其服务地址当然是公开的。就好像是超市的大门要公开一样。你要求超市的大门开在你家地下室才安全,这是不现实的。
时间: 2024-10-07 04:14:29