请教一下大家:
    在VS2005,SQL2008的环境下,我用C#搭建了一个系统框架,主要分三层:winform层、client层、service层,在service层直接链接数据库。winfrom层通过client层获取service层的数据库信息。
    以这样的方式制作了一个登录界面,可以在开发环境外运行.exe文件,但要同时放置client.dll和service.dll才能正常运行,这样用户可以通过反编译获取数据库信息,不安全。 请问高手怎么解决?

解决方案 »

  1.   

    没明白跟 webservice的安全有什么关系。
      

  2.   

    就是请教怎么能保证数据库安全性或者不要给用户提供service.dll也能运行程序?
      

  3.   

    去掉对service.dll的引用,Client应该不需要吧。
      

  4.   

    回复五楼 不能缺少servi.dll   client层要引用service的啊
      

  5.   

    你访问数据库的是在service.dll 里面写的吗?如果是些在这里面的话可以考虑 代码混淆或者关键数据加密处理!
      

  6.   

    一般client-server(service)之间有(登陆)验证机制,以及数据结果的展示
    至于DAL数据交互都放在server里了
    client要只管与server的交互,数据库对它来说是透明的
    甚至都不需要让客户知道有那么个东西,更不需要引用DAL层
      

  7.   

    @#7       我是在service.cs中直接访问数据库的 
      

  8.   

    @#8  可是我做的那程序要把client.dll和service.dll也放置到用户电脑,才能运行.exe  ....一团浆糊了
      

  9.   

    楼主你这个service层和webservice别搞混了啊
      

  10.   

    问题是,你那个程序有没有服务端?如果没有,那就只好考虑dll的加密了
      

  11.   

    问题是,你那个程序有没有服务端?如果没有,那就只好考虑dll的加密了是指数据库的服务器端吗? 那是有的。  程序本身没有