很多用户在提到B/S架构设计的系统后, 第一个疑惑就是,.这个软件安全吗?为什么用户会有这样的疑惑,因为B/S架构放在internet上后,只要有IE浏览器的电脑都可以访问这个系统.而C/S架构只有安装了特定Client软件的用户才可以使用本系统,所以一直以来我们的用户都在担心着B/S的安全问题.而业内一些C/S的支持者也一直把B/S的安全问题作为一个不休的话题一直在讨论着.只能说这样的讨论非常无聊,我并不反对C/S有很多优点.但是从安全角度分析,B/S远远高于C/S.说CS比BS安全这只是一个假象.具体的内容请看http://blog.csdn.net/redeemleep/archive/2007/06/21/1660176.aspx

解决方案 »

  1.   

    是否安全全在开发者的经验,不管C/S,B/S
      

  2.   

    是否安全全在开发者的经验,不管C/S,B/S
    同楼上, 安全不安全还是程序员的把握只能尽量做到安全一些 
    说的很有道理,不过我们写程序不能只用经验,要知道你的对手不是SB
      

  3.   

    1 前面我们讲到"C/S架构只有安装了特定Client软件的用户才可以使用本系统",正因为在用户的电脑上安装了Client所以这个系统就面临着程序被分析,数据被截取的安全隐患,因为所有的数据必须从SERVER读到CLIENT然后进行操作,而B/S所有的数据操作全部在SERVER上进行在CLIENT只是POST一个HTML代码.所以....2 目前很多传统的CS系统还是采用2层结构也就是说所有的CLIENT直接读取SERVER中的数据,在CLIENT端包括了数据的用户名\密码等致命的信息,难道这样的系统安全吗?如果这样的系统放在INTERNET上,那么这个SERVER面向任何连接上INTERNET的用户都是开放的,而B/S架构的系统,在CLIENT上没有任何信息.面向用户开放的也只是WEBSERBER,而真正保存我们数据的信息全部在DATASERVER上,这个DATASERVER完全可以不放在INTERNET上,也只能让我们指定的WEBSERVER来访问.所以....3 当然现在也流行一种3层架构的C/S系统,但是我想问的是,你做的中间件要比microsoft 写的iis 更安全吗?目前有很多截数据包分析的各种手段,bs 可以使用https 加密来解决。但是你的CS 服务器有考虑过这问题吗?你说你加密了数据,你加密的比https 还好吗? 你没有加密,那就是明文的,随便找一个sniff 监听软件就可以把数据截下来。所以....上次偶然我看到一位朋友在回答CS和BS区别的时候说道:"C/S模式提供了更安全的存取模式。由于C/S是配对的点对点的结构模式,采用适用于局域网、安全性比较好的网络协议(例如:NT的NetBEUI协议),安全性可以得到较好的保证。而B/S采用点对多点、多点对多点这种开放的结构模式,并采用TCP/IP这一类运用于Internet的开放性协议,其安全性只能靠数据服务器上管理密码的数据库来保证。现代企业需要有开放的信息环境,需要加强与外界的联系,有的还需要通过Internet发展网上营销业务,这使得大多数企业将他们的内部网与Internet相连。由于采用TCP/IP,他们必须采用一系列的安全措施,如构筑防火墙,来防止Internet的用户对企业内部信息的窃取以及外界病毒的侵入。"我看了这个回答心存疑惑,非常不解,目前还没有见过那家CS系统使用NETBEUI协议而不使用TCP/IP协议的,如果是点对点模式,难道这个是服务器?不使用TCP/IP我们使用什么?
      

  4.   

    是有C/S系统使用NETbeui的,我见过
      

  5.   

    B/S比C/S安全?这个问题我认为只能放到具体的应用,以及具体的开发人员水平中去讨论。
      

  6.   

    抛开习惯,我们简单的从BS和CS这两个架构去分析!大家看如何呢?
      

  7.   

    就近架构看,C/S结构中有很多部分的实现放在了客户端,这样就意味着也许可以通过反汇编得到一些敏感的东西,或者通过制作程序和修改代码的方法执行安全限制以外的功能。
    而B/S结构中,留在本地的只有数据结果,因此在客户端不可能得到除了用户可以看到的数据以外的东西。
    至于通过网络传输敏感数据时的安全,有人提到B/S结构可以使用SSL来保证传输的数据的安全,所以认为B/S结构的安全性优于C/S。然而,SSL所用的无非就是通过公钥或者其他加密算法或者多种加密算法的组合使用,以及长密钥来保证数据在被截获后也无法在有限的时间内被解读,这些加密过程同样在B/S结构中可以被应用,因此,仅就数据传输过程而言,我觉得没什么区别。所以,我认为B/S的安全性也许优于C/S架构。而且,同样是通过网络进行数据传输,好的B/S架构更方便系统间的整合和信息共享,并且在维护方面更加方便。