数据库技术 教学课件 ppt 作者 施伯乐 PPT-KX-10

上传人:E**** 文档编号:89246165 上传时间:2019-05-22 格式:PPT 页数:41 大小:141KB
返回 下载 相关 举报
数据库技术 教学课件 ppt 作者 施伯乐 PPT-KX-10_第1页
第1页 / 共41页
数据库技术 教学课件 ppt 作者 施伯乐 PPT-KX-10_第2页
第2页 / 共41页
数据库技术 教学课件 ppt 作者 施伯乐 PPT-KX-10_第3页
第3页 / 共41页
数据库技术 教学课件 ppt 作者 施伯乐 PPT-KX-10_第4页
第4页 / 共41页
数据库技术 教学课件 ppt 作者 施伯乐 PPT-KX-10_第5页
第5页 / 共41页
点击查看更多>>
资源描述

《数据库技术 教学课件 ppt 作者 施伯乐 PPT-KX-10》由会员分享,可在线阅读,更多相关《数据库技术 教学课件 ppt 作者 施伯乐 PPT-KX-10(41页珍藏版)》请在金锄头文库上搜索。

1、第10章 数据库与WWW,概述,随着广域网(WAN)的发展,信息高速公路已发 展成为Internet(因特网)。采用通信手段,将地理 位置分散的、各自具备自主功能的若干台计算机和 数据库系统有机地连接起来组成Internet,用于实现 通信交往、资源共享或协同工作等目标。这个目标 已经实现,正在对社会的发展起着极大的推进作 用。 本章先介绍Internet、WWW和网络协议等一些基 本概念,然后介绍网络与数据库之间的关系和结 合、公共网关接口和安全性等问题。,10.1 网络基本概念,Internet WWW 网络协议模型,10.1.1 Internet,Internet概述 Internet的

2、定义 Internet的定义应从通信协议、物理链接、资源共享、相 互联系、相互通信的角度综合考虑。一般认为,Internet的定 义应包含下面三个方面内容: Internet是一个基于TCP/IP协议簇的网络; Internet是一个网络用户的团体,用户使用网络资源,同时也为该网络的发展贡献力量; Internet是所有可被访问和利用的信息资源的集合。,10.1.2 WWW,WWW是World Wide Web(万维网)的缩写,有时也称为Web。 WWW的最基本内容是“超文本链接”,即通过Internet与信息库进行链接的过程。 WWW技术使用户能在一个文档中通过对图像和文字的单击操作而去访问

3、其他文档,如文本、图象、声音和电影文档等。 WWW主要由三种标准成分组成,即URL(统一资源定位器)、HTTP(超文本传输协议)和HTML(超文本标记语言)。,10.1.3 网络协议模型,ISO/OSI网络协议层次模型 (1)物理层(Physical Layer) (2)数据链路层(Data Link) (3)网络层(Network) (4)传送层(Transport) (5)会晤层(Session) (6)表示层(Presentation) (7)应用层(Application),2. 实用的协议模型 将OSI/RM中对上面三个层次(会话层、表示层、应用层)包括在“应 用层”这一层协议内得到

4、实用的协议模型。 (1)物理层(Physical Layer) (2)数据链路层(Data Link) (3)网络层(Network) (4)传送层(Transport) (5)应用层(Application),3. TCP/IP协议组 (1)最底层为物理层 (2)网络接口层(即数据链路层) (3)互联网层(即网络层) (4)传输层 (5)应用层,在OSI/RM层次模型中,把网络协议规定成7层模型,(a)ISO/OSI/RM (b)实用的协议模型 (c)TCP/IP 网络层次模型比较图,10.2 WWW与数据库,WWW与数据库的结合 WWW与数据库交互的方法,10.2.1 WWW与数据库的结合

5、,将数据库和Web结合有两种想法: 主要兴趣在于数据库,Web是作为工具来获取对数据更容易的访问。在这种情况下,数据库的位置是清楚明显的。可以编写Web页来允许察看数据库所包含的表,通过Web服务器来提高对数据库的访问能力。 主要的兴趣在于Web站点,为了使站点的内容对访问者更有价值,更为便捷,数据库作为Web的一个工具。例如,保留访问者的信息轨迹,以分析访问者的爱好。,10.2.2 WWW与数据库交互的方法,CGI(公共网关接口) Java/JDBC API(应用程序设计接口),10.2.3 CGI、JDBC和API的比较,10.3 公共网关接口(CGI),CGI程序 CGI特点,10.3.

6、1 CGI程序,1.CGI程序工作过程 CGI程序在开发Web数据库中的作用相当于一个中介。它 在浏览器、Web服务器和数据库之间传递信息。具体的工作 过程是这样的: 浏览器将用户输入信息传递给Web服务器 Web服务器运行CGI程序 CGI程序通过CGI数据网关对Web数据库进行操作 CGI程序将数据库操作结果返回给Web服务器 Web服务器将数据结果传递给浏览器 浏览器将数据库操作的结果显示给用户,B/S体系结构,使用CGI后的功能比较,2. CGI程序的工作方式 1)当用户点击某个链接时得到执行 2)通过外部程序调用。,3. CGI语言的选择 事实上,几乎任何一种高级语言都可以被用来编写

7、CGI程 序。在实际应用中,根据所选用的操作系统类型,用于CGI 编程的语言可以为Perl、C、VB或Shellscripts(UNIX)。 在选择CGI编程语言时要清楚一些基本规则: HTTP服务器中的操作系统应该能支持这种语言; 这种语言应该足够强大以胜任编写CGI程序所要完成的预定任务; 这种语言在使用时不应太复杂,是你能够接受。,10.3.2 CGI特点,CGI规范 CGI方法规范 GET方法 POST方法 HEAD方法 (2) CGI接口规范 命令行 标准输入 标准输出 环境变量,2CGI的安全性 CGI代表了许多Web浏览器的特性,支持CGI的Web服务器同时赋予了浏览器用户一定程

8、度上对服务器的控制权利。因此应该谨慎的使用CGI 。 浏览器和服务器之间的对话是私有对话。由于表单的提交一般没有经过加密,所以表但所提交的数据很有可能在浏览器和服务器之间的某个地方被截取读出。,3CGI与数据库的集成 编写CGI数据库网关的方法有如下几种: (1)使用数据据库厂商提供的应用程序编程接口(API)。但是这种方法之能用于某种特定的数据库,因此对其它种类的数据库不具有程序的可移植性。 (2)在HTML语言中直接硬性插入SQL语言。HTML文件被传送到CGI程序并被CGI程序读取。当结果返回到浏览器时,CGI程序的实际结果会取代SQL命令。使用CGI来调用存储在数据库中的例程。这些SQ

9、L命令被存储在数据库内部,可被外部程序调用,并将结果返回到浏览器页面上。 (3)使用ODBC连接。这种方法使用同一个应用程序可以连接到几种数据库中。CGI程序调用ODBC,使用HTML页面获取用户输入信息,并且使用CGI程序将数据请求传给几种数据库。,10.4 安全性问题,Web安全性问题 安全的HTTP(S-HTTP) 安全接插层(SSL) CGI的安全性 Java的安全性,10.4.1 Web安全性问题,WWW的安全性问题分成如下几类: (1) 信息泄漏:在HTTP服务器中的秘密信息被非法用户获得。 (2) 非法使用:一个由浏览器发往服务器的信息被中途截获,比如信用卡等信息。 (3) 非集

10、成于服务否认:允许外部人员执行服务器上的命令,使他们能够修改或破坏系统。 (4) 服务器源网络安全性的崩溃:Web服务器主机的信息泄漏,使非法用户有机可乘,获取主机的数据,并为上述各种问题铺平道路。,一个典型的HTTP事物的HTTP协议,证明,编码/解码,10.4.2 安全的HTTP(S-HTTP),S-HTTP(保护性HTTP)主要是针对 Internet中的商业应用而开发的。 它的主要功能是WWW安全性所需要的两 个基本元素: 用户 服务器鉴别和安全性转发,1鉴定 在非计算机的世界里,人们用签名或印章 来鉴别身份。在计算机世界里,我们用数字 签名来证实文件的完整性。,2公有/私有钥匙算法,

11、3重做破坏 根据所使用的算法,有些信息的解码可能要许多年。这样的话解码就 毫无意义了。因此很多破坏者放弃了解码,而使用Replay Attacks破 坏。 一个Replay Attacks由执行一定数量的动作组成,他们产生一个特定 的结果。动作是通过数据来实现的,因此一个Replay Attacks通常由对 服务器相同的代码组成,而且希望它被当成合法数据使用。 为了防止这种类型的破坏,大多数应用加了一系列的号码或时间印记 到事务上。结果,由于没有任何两个事务有相同的序列号或时间印记而 使得重做破坏失败。,4私有部分 为了确保隐秘性,HTTP服务器能够对内打包文件信息解码也能对外 打包信息解码,

12、共享的和公有/私有钥匙方案都可以支持编码和解码。一 个共享方案只包含一个钥匙,公司在知道需要的要时候才能对A的信息解 码。这种算法在大多数情况下,需要较少的头部并提供充份的安全性。,5HTTP封装 对于简单的转换,S-HTTP必须支持存在的HTTP协议。一个S-HTTP协议包括一个请求 和一个状态忙(在HTTP中时),跟着一系列头信息,跟着封装的内容,他们可能是HTTP 信息、一般数据和其他S-HTTP信息。 S-HTTP头信息行,介绍了信息封装内容的新的头信息行 和保护方式。包括: 安全性方案:在当前事务中的安全性方案。 确认信息:向接收器提供该信息意味着不再必须恢复这个信息或从第三方获得。

13、这在头信息中减少了。 钥匙分配:指出客户机想把钥匙作为一种符号供后来使用。,6协商 考虑下面的协商头信息: SHTTP-Symmetric-Content-Algorithms:recv-optional=DES-CBC,RC4 它暗示编码可以用DEC-CBC算法,也可以用RC4算法。 可以看到为了把安全协议增加一些灵活性,S-HTTP允许公司按照安 全性参数协商他们的需要。这一点非常重要。例如,如果客户机不支持 任何安全机制一个服务器可以拒绝告诉它的客户机。这个任务在 negotiation block中处理,结果由四个不同的部分标明: 特性:协商的任务包括编码算法等。 值:特性值包括DES

14、,RSA或其他算法名称。 强度:经济事务的优先度。 方向:特性所影响的方向,有效值是通过接收和初始化完成(与协调者有关)。,7不足之处 由于它是建立在应用层的,来自底层的破坏就有 可能取得成功。也就是说,有可能在TCP/IP层遭到 破坏,应用层却发现不了任何问题。,10.4.3 安全接插层(SSL),SSL是在OSI模式的底层应用的。因此,它能被用来加强HTTP以及其它诸如ftp,telnet与NNTP等协议的安全性。 SSL包含对服务器、客户机数据传输中的鉴定与解码,由于SSL比HTTP等应用协议的应用层次要低,它可以对数据编码并对 发送者鉴定,然后应用协议库发送或接收数据的第一各自接,这比

15、其它 方案提供了更强的安全性。根据Nescape公司下发的说明书,SSL协议 打开并维护一个安全性通道,通过它可以进行高层通信。安全性通道有 以下两个特性: 通道是私有的。在用符号交接来限定一个秘密钥匙后,可用来对已有信息编码。对数据编码也要用相对称的密码术。 通道是经过鉴定的。服务器总是鉴定客户机,而客户机也能鉴别服务器。鉴别也用对应的密码术(公有/私有钥匙)。 通道是可靠的。每一个信息包括一个使用MAC的信息完整校验。而安全重复功能,如MD2、MD5被用来进行MAC计算。,SSL包括两个独立的协议(图10-8)。 在顶端是可靠的传送层,有SSL记录协议(Record Protocol),它

16、封装所有的转发。 再往上是SSL Handshake Protocol协议,它通过协商建立安全性参数。,客户机与服务器之间的数据交换,10.4.5 Java的安全性,Java语言中也存在安全性问题。 在Java中,服务器向用户发出请求,客户去执行它,幸运的事,Java的设计者一对安全性做了特殊的考虑,并且运用了许多经验和平衡,最明显的就属applet了。 Java地址安全性在几个层中都要考虑。 Java语言本身是很强大的,没有指针,去掉了C语言中容易出错的地方。 Java类及他们的变量和方法被标明为公有或私有,这也限制了它们的作用范围。当执行一个字节代码时,就会检验它以保证其未被破坏。,Java代码的各个阶段,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号