正在加载图片...
4SQL注入攻击与防御 示层)向中间层(逻辑层)发送请求,中间层通过查询、更新数据库(存储层)响应该请求。三层架 构中一条最基本的规则是:表示层不应直接与数据层通信。在三层架构中,所有通信都必须经 过中间件层。从概念上看,三层架构是一种线性关系。 表示层 逻辑层 存储层 访问http:/www.victim.com 加载、编译并执行index..asp 执行SOL 脚本引紫 RDBMS 返回数据 呈现HTML 发送HTML web浏览器/星现引 编程语言:C#、ASP、,NET、PHP、JSP等 数据库:MSSQL、MySQL,Oracle等 图1-1简单的三层架构 在图l-l中,用户激活Web浏览器并连接到http:/www.victim.com。位于逻辑层的Web服 务器从文件系统中加载脚本并将其传递给脚本引擎,脚本引整负责解析并执行脚本。脚本使用 数据库连接器打开存储层连接并对数据库执行SQL语句。数据库将数据返回给数据库连接器, 后者将其传递给逻辑层的脚本引擎。逻辑层在将Wb页面以HTML格式返回给表示层的用户 的Web浏览器之前,先执行相关的应用或业务逻辑规则。用户的Wb浏览器呈现HTML并借 助代码的图形化表示展现给用户。所有操作都将在数秒内完成,并且对用户是透明的。 1.2.2一种较复杂的架构 三层解决方案不具有扩展性,所以最近几年研究人员不断地对三层架构进行改进,并在可 扩展性和可维护性基础之上创建了一种新概念:层应用开发范式。其中包括一种四层解决方 案,该方案在Wb服务器和数据库之间使用了一层中间件(通常称为应用服务器)。n层架构中的 应用服务器负责将AP(应用编程接口)提供给业务逻辑和业务流程以供程序使用。可以根据需要 引入其他的Wb服务器。此外,应用服务器可以与多个数据源通信,包括数据库、大型机以及其 他旧式系统。 图1-2描绘了一种简单的四层架构。 在图1-2中,Wb浏览器(表示层)向中间层(逻辑层)发送请求,后者依次调用由位于应用层 的应用服务器所提供的API,应用层通过查询、更新数据库(存储层)来响应该请求。 在图1-2中,用户激活Web浏览器并连接到htp:/www.victim.com。位于逻辑层的Wb服 务器从文件系统中加载脚本并将其传递给脚本引整,脚本引擎负责解析并执行脚本。脚本调用 由位于应用层的应用服务器所提供的API。应用服务器使用数据库连接器打开存储层连接并对 数据库执行SQL语句。数据库将数据返回给数据库连接器,应用服务器在将数据返回给Wb 服务器之前先执行相关的应用或业务逻辑规则。Wb服务器在将数据以HTML格式返回给表 示层的用户的Wb浏览器之前先执行最后的有关逻辑。用户的Web浏览器呈现HTML并借助 代码的图形化表示展现给用户。所有操作都将在数秒内完成,并且对用户是透明的
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有