各位:出于对数据库安全性的考虑,我想对数据库连接字符串进行加密(若防止普通用户了解,当然方法很多)
但现行想对开法人员进行加密,不让开发人员了解到密码.由于ADO.NET中的connection是可以看到连接字符串,因此开发人员能看到,但如何防止。有没有比较合理的解决方案。如:把数据访问层、业务逻辑层部署到服务端,开发人员应该就看不到了吧。若不是部署到服务端呢?

解决方案 »

  1.   

    你是说做BS还是CS项目,你发布之后它是DLL的,别人是看不到的
      

  2.   

    web.config里字串可以加密的,你获取后在代码里解密即可
      

  3.   

    在web.config加密只是防止用户查看,但解密后还是在源码中。开发人员只要查看对应的connection就可以查看的到。
      

  4.   

    你是说做BS还是CS项目,你发布之后它是DLL的,别人是看不到的dll应该是查看的到,我做的是为CS项目
      

  5.   

    你是说做BS还是CS项目,你发布之后它是DLL的,别人是看不到的dll应该是查看的到,我做的是为CS项目
    不是啊,DLL是能看到文件,但是看不到内容,能看到的根本不是一般人,这是微软封装的动态链接库
      

  6.   

    所谓的“对用户保密”也是开国际玩笑,更何况对专业人员。随便找个支持注入的软件,例如mono中许许多多工具就支持,你就可以监控到对数据库代码的调用,然后你的代码进入IL调试状态下,你就能轻松跟踪到源代码你的数据库连接串变量值了。
      

  7.   

    中学生学个1小时就会了。关键是这种东西不需要自己钻研,只要照着教程傻瓜化地做几步就会了。
    好吧,我OUT了,以为DLL封装的很好,反编译都不行
      

  8.   

    我晕死,你把生产环境拿来开发?
    楼主的意思是开发人员在debug的时候随意MessageBox.Show或者调试方式去看Connection对象的内容吧,我擦,你给个开发环境给他呗,里面的用户密码想看随他看,等他开发完成了咱做好测试确保没有后门,再部署到生产环境不就得了