问:双层分布式系统和三层分布式系统都和信息安全相关,您能对比比较一下吗?
答:在一个双层的应用程序中,胖客户端直接和数据存储进行通信——应用程序逻辑运行在胖客户端内部。比如Lotus Notes或老版本的PowerBuilder程序。这是在90年代早期驱动“客户——服务器”模型的原始体系结构。
三层分布式系统增加一个中间层来提供大量的应用程序逻辑。因此,可以有效地从模型中分离出应用程序逻辑,这就使得程序可以运行在一个瘦客户端,比如Web浏览器。这就是目前的主流应用程序模型。
当然,钟摆总是来来回回地摆动,现在多种模式并存,包括像AJAX一样的技术,在浏览器内部增加更多的功能来模仿胖客户端应用程序的能力。是不是很混乱啊?
相对于信息安全来说,三层模式环境趋向于更简单的控制,因为应用程序服务器(即中间层)被集中并且可以轻松管理。拿一些数字来说明这些陈述,比如在应用程序中被找到的漏洞。在一个三层模型中,大概100个应用程序服务器将会被打补丁。假如有所有地方都使用胖客户端,可能会有10,000个补丁需要被安装。
模块化和tackling来保护应用程序和体系结构是相似的。应用程序和数据需要被保护,来确保在你的应用程序代码中不存在漏洞是重要的。同时确保只有经授权的部分才可以访问数据库中的数据。
如果环境可以调节,那么重要的是不仅可以监视在程序中发生什么,并且可以存储日志数据来确保可以从攻击中恢复。
事实上有许多原因可以说明为什么三层结构现在流行。安全不是这种结构的真实目的,但安全确实可以从这种趋势中受益。