1、网络文件管理系统的设计与实现摘 要随着计算机及网络技术的飞速发展,企业文件管理信息化、网络化是必然的趋势。利用计算机和网络技术来进行文件管理,具有以下优势:利于实现数据信息的共享,减轻管理员的工作负荷,使文件管理更科学、更规范、更安全。因此,设计一个安全的网络文件管理系统是十分必要的。系统采用 B/S 工作模式,使用 ASP 技术和 ACCESS 数据库平台。主要功能如下:对于服务器端的文件实现多文件同时上传;多功能的文件在线编辑;强大的多用户管理体系,能对用户进行目录与文件的访问限制;强大的统计功能,能精确统计每一个文件夹及文件的大小。为确保系统安全性,服务器端配置了SSL,系统对用户密码用
2、 MD5 进行加密。此论文详细介绍了系统的需求分析,系统设计和具体实现。最后,以表格形式给出测试结果。关键词: 互连网;文件管理;ASPDesign and Implementation of Network File Management SystemAbstractWith the fast development of computer and network technology, it is an inevitable tendency for companies to manage documents by the use of computer and network techn
3、ology. In that way, it is advantageous to share information and reduce the workload of managers. It will make the document management more scientific, more standard and much safer. Therefore, it is very essential to design a safe network file management system.This system is based on the B/S model a
4、nd developed by ASP and ACCESS database. Its main functions are as follows. Multiple files at the sever terminal can be uploaded simultaneously. It has the multiple functional file edition online. It has powerful management system for multiple users. It can limit the users access to the folders or f
5、iles. It has powerful statistical function, and it can precisely count the size of each folder and file. In order to guarantee the systems security, the server terminal has configured SSL; and the password is encrypted with MD5 encryption algorithm. In this paper, the requirement analysis, design an
6、d implementation of the system are introduced in detail. At last, the result of testing is introduced in the form of tables.Key words: Internet; File Management; ASP目 录论文总页数:24 页1 引言 .11.1 课题背景 .11.2 国内外研究现状 .11.3 本课题研究的意义 .11.4 本课题的研究方法 .12 用户需求分析 .12.1 用户角色需求 .12.2 功能需求 .22.2.1 用户管理 .22.2.2 文件管理 .
7、22.2.3 安全性的实施 .22.3 性能需求 .33 相关理论基础 .33.1 系统开发环境 .33.2 B/S 模式 .33.3 ASP 技术 .33.4 结构化查询语言 SQL.43.5 MD5 算法原理 .43.6 关于 SSL 加密机制 .54 网络文件管理系统的设计 .54.1 功能模块 .54.1.1 系统结构介绍 .54.1.2 具体功能模块划分 .64.2 系统功能图示例 .64.3 数据库表的设计与实现 .75 系统功能模块的实现 .75.1 系统登录模块 .75.2 用户管理模块 .95.3 添加用户 .115.4 文件管理 .135.4.1 文件的建立、剪切、粘贴、复
8、制、删除 .135.4.2 文件编辑 .135.4.3 文件下载 .145.4.4 文件上传 .155.5 空间统计 .166 系统测试 .176.1 测试环境 .176.2 测试结果 .186.3 系统部分界面 .18结 论 .21参考文献 .22致 谢 .23声 明 .24第 1 页 共 24 页1 引言1.1 课题背景随着计算机及网络技术的飞速发展,每个企业得到了前所未有的发展机遇,但同时也必须面对市场经济的严重挑战。企业要求生存、发展,就必须进行科学的管理,很重要的一方面就是企业的文件管理。但目前我们的管理手段和管理方式相对落后,不仅浪费了许多人力和物力,同时也不利于资源共享,而且安全
9、性上也存在不少漏洞,已经不能适应新形式下的文件管理工作,这个问题已经到了非解决不可的地步。1.2 国内外研究现状现在国内外对此类系统的开发与研究也是很有实用性的,基本上能满足各企业的自身特点,来进行文件的管理,同时,该类系统又都在不断地深入与发展,来适用更多的企业。但网络文件管理系统的安全性还有待于今后的进一步开发与实践。1.3 本课题研究的意义为了减轻管理员工作,使文件管理科学化、规范化,提高网络文件管理的高效性和安全性,因此建立一套有效且安全的网络文件管理系统是十分必要的。此设计是针对 Internet 时代的数据管理及共享需求而开发的网络数据管理系统。它可实现用户管理,登录验证(采用 M
10、D5 算法对用户密码加密,保护用户密码安全) ,可以管理存放在服务器端的多种类型的文件(包括文档,图片等),且操作简单,可实现文件的批量上传、文件下载。1.4 本课题的研究方法首先从网上查阅网络文件管理系统相关资料,了解同类系统的发展现状及趋势。分析网络文件管理系统的相关功能,结合本次毕业设计的相关要求写出需求分析;其次,综合运用以前所学的相关知识(包括计算机网络技术、数据库相关知识等) ,选择 ACCESS 数据库,在 ASP 环境下运用 JAVASCRIPT 脚本语言进行本毕业设计的开发;在设计中以需求分析为基础,写出系统开发计划、实现流程及相关问题的实现方法;最后,系统开发完毕后,进行调
11、试和运行。2 用户需求分析2.1 用户角色需求根据需求分析,整个系统应该有两个操作用户角色,即超级管理员和普通管理员。普通管理员只拥有对某个目录的操作权限,可新建目录、文件或删除某一个存在的目录、文件,可对上传、下载文件,对文件可进行剪切、粘贴、复制、第 2 页 共 24 页编辑、重命名、删除,可查看所管辖的目录的空间使用情况统计表;超级管理员拥有普通管理员一样的权限外,还拥有用户管理的权限(可添加用户,为用户分配权限,也可删除某个存在的用户或修改其信息,用户信息包括密码、管理级别、目录权限)。超级管理员在后台对系统进行用户管理,对数据进行统计分析,并展开系统的正常运行维护工作。每个角色操作的
12、共性是通过输入正确的用户名,密码及六位彩色验证码后登录,进入不同的管理页面。角色工作完成后,通过专门的出口退出登录状态。2.2 功能需求系统功能主要包括以下几个方面:1.用户管理;2.文件管理;3.安全性的实施。以下对三个方面的具体功能进行描述:2.2.1 用户管理超级管理员通过登录页面登录成功后,可以进入文件管理页面,通过点击菜单栏中用户管理显示用户管理页面(只有以超级管理员身份登录,才可进入用户管理页面) 。点击添加用户进入新增用户页面,可以添加用户的一系列信息,包括:用户名,密码,确认密码,用户级别,目录权限;点击删除,可以删除已经存在的用户(超级管理员不能删除自己) ;点击编辑,可重新
13、设定用户的密码,用户级别,目录权限。2.2.2 文件管理系统管理员(包括超级管理员和普通管理员)登录后进入文件管理页面,可以新建目录和文件;可以删除或更名文件,可以上传、下载文件,可编辑、删除或更名已存在的文件;点击剪切、粘贴、复制、删除图标时,可以对文件实现相应功能;当选中多个文件时,则可以进行批量的剪切、粘贴、复制、删除操作;点击上传文件进入文件上传页面,在此页面可设定需要上传的个数、上传到的目录,点击浏览即可在本地计算机上选择需要上传的文件(当设定上传的个数大于 1 时,可实现批量上传)。只有当文件的类型是系统允许上传的类型,然后文件大小在系统规定之内,上传的目标路径存在,才能成功上传。
14、当选中某一目录时,可以查看到其下属的所有文件及子目录。2.2.3 安全性的实施网络文件管理系统采取的安全措施主要有两个:1.登录验证。系统启动后,首先进行用户验证,只有在输入了正确的用户名、密码和六位验证码后才能进入文件管理页面。否则会一直停留在登录界面,第 3 页 共 24 页并提示出错信息。本系统采用 MD5 算法加密用户密码;增强用户组管理,采用MD5 加密检测,用户不能通过修改 Session 值提升权限;增强管理目录检测,采用 MD5 加密检测,用户不能通过修改 Session 值提升管理目录范围。2.为 IIS 服务器配置了 SSL,以建立安全的通信渠道。2.3 性能需求整个系统应
15、当操作简便,界面友好,维护简便。数据库要求运行稳定,执行速度快,数据安全性高。软件系统本身运行对计算机硬件平台和操作系统平台要求适中。3 相关理论基础3.1 系统开发环境系统采用 B/S 工作模式,前台使用 ASP 技术,后台使用 ACCESS 数据库平台,使用 JAVASCRIPT 脚本语言。而在服务器端,则无需考虑浏览器的支持。Netscape 浏览器也可以正常显示 ASP 页面。3.2 B/S 模式B/S(Browser/Server,浏览器/服务器)模式又称 B/S 结构。这种结构,就是只安装维护一个服务器(Server),而客户端采用浏览器(Browse)运行软件。它是随着 Inte
16、rnet 技术的兴起,对 CS 结构的一种变化和改进。主要利用了不断成熟的 WWW 浏览器技术,结合多种 Script 语言(VBScript、JavaScript)和 ActiveX 技术,是一种全新的软件系统构造技术。在 BS 体系结构系统中,用户通过浏览器向分布在网络上的许多服务器发出请求,服务器对浏览器的请求进行处理,将用户所需信息返回到浏览器。而其余如数据请求、加工、结果返回以及动态网页生成、对数据库的访问和应用程序的执行等工作全部由 Web Server 完成。随着 Windows 将浏览器技术植入操作系统内部,这种结构已成为当今应用软件的首选体系结构。在 B/S 这种结构下,用户
17、工作界面是通过 IE 浏览器来实现的。这种模式最大的好处是运行维护比较简便。3.3 ASP 技术ASP 的含义ASP 是基于 Microsoft Windows NT 和 Microsoft Internet Information Sever 的开放式脚本开发环境,全称为 Active Server Pages。1.Active:ASP 使用了微软的 ActiveX 技术。ActiveX(COM)技术是现在Microsoft 软件的重要基础。它采用封装对象,程序调用对象的技术,简化编程,加强程序间合作。ASP 本身封装了一些基本组件和常用组件,有很多公司也开发了很多实用组件。只要你可以在服务
18、器上安装这些组件,通过访问组件,你就可以快速、简易地建立自己的 WEB 应用。第 4 页 共 24 页2.Server:ASP 运行在服务器端。这样就不必担心浏览器是否支持 ASP 所使用的编程语言。ASP 的编程语言可以是 VBSCRIPT 和 JSCRIPT。VBSCRIPT 是 VB的一个简集,会 VB 的人可以很方便的快速上手。然而 Netscape 浏览器不支持客户端的 VBSCRIPT,所以,看到的是 ASP 生成的 HTML 代码,而不是 ASP 程序代码。这样就可以防止别人抄袭程序。3.Pages:ASP 返回标准的 HTML 页面,可以正常地在常用的浏览器中显示。浏览者查看页
19、面源文件这几项技术的特点。ASP 技术的特点:1.使用 VBScript、JScript 等简单易懂的脚本语言,结合 HTML 代码,即可快速地完成网站的应用程序。2.无须编译,容易编写,可在服务器端直接执行。3.与浏览器无关,客户端只要使用可执行 HTML 码的浏览器,即可浏览 ASP所设计的网页内容。ASP 所使用的脚本语言(VBScript、Jscript)均在 WEB 服务器端执行,用户端的浏览器不需要能够执行这些脚本语言。4.ASP 能与任何 ActiveX scripting 语言相容。除了可使用 VBScript 或JScript 语言来设计外,还通过 plug-in 的方式,使
20、用由第三方所提供的其他脚本语言,譬如 REXX、Perl、Tcl 等。脚本引擎是处理脚本程序的COM(Component Object Model)物件。5.现在的 ASP 可支持 VBScript 和 Microsoft Jscript 5.0 附带的新的脚本编码实用程序。Web 开发人员可以对客户端和服务器端脚本使用编码方案,以使程序逻辑不可读。2 已编码的脚本在运行时由脚本引擎解码,所以不需要单独的使用程序。此特性可防止大多数用户无意中查看或复制脚本,在一定程度上也提高了程序的安全性。3.4 结构化查询语言 SQLSQL 全称是“结构化查询语言(Structured Query Lang
21、uage)”,1974 年由Boyce 和 Chamberlin 提出。实际包含数据定义、数据操纵和数据控制等与数据库有关的全部功能。1975 年至 1979 年,在 IBM 公司研制的关系数据库管理系统的原形系统 System R 上得到实现。SQL 语言结构简洁,功能强大,简单易学,使用方法灵活,成为关系数据库管理系统(RDBMS)的标准语言,倍受用户和计算机业界的青睐,被众多的计算机公司和软件公司采用。3.5 MD5 算法原理MD5 的全称是 Message-Digest Algorithm 5,在 90 年代初由 MIT 的计算机科学实验室和 RSA Data Security Inc
22、 发明,经 MD2、MD3 和 MD4 发展而来。Message-Digest 泛指字节串(Message)的 Hash 变换,就是把一个任意长第 5 页 共 24 页度的字节串变换成一定长的大整数。此处使用“字节串” ,是因为这种变换只与字节的值有关,与字符集或编码方式无关。MD5 将任意长度的“ 字节串 ”变换成一个 128bit 的大整数,并且它是一个不可逆的字符串变换算法,换句话说就是,即使你看到源程序和算法描述,也无法将一个 MD5 的值变换回原始的字符串,从数学原理上说,是因为原始的字符串有无穷多个,这有点像不存在反函数的数学函数。MD5 的典型应用是对一段 Message(字节串
23、)产生 fingerprint(指纹),以防止被“篡改” 。举个例子,你将一段话写在一个叫 readme.txt 文件中,并对这个 readme.txt 产生一个 MD5 的值并记录在案,然后你可以传播这个文件给别人,别人如果修改了文件中的任何内容,你对这个文件重新计算 MD5 时就会发现。如果再有一个第三方的认证机构,用 MD5 还可以防止文件作者的“抵赖” ,这就是所谓的数字签名应用。MD5 还广泛用于加密和解密技术上,在很多操作系统中,用户的密码是以MD5 值(或类似的其它算法)的方式保存的,用户 Login 的时候,系统是把用户输入的密码计算成 MD5 值,然后再去和系统中保存的 MD
24、5 值进行比较,而系统并不“知道 ”用户的密码是什么。3.6 关于 SSL 加密机制SSL(Security Socket Layer)的中文全称是“加密套接字协议层” ,是由Netscape 公司推出的一种安全通信协议,它位于 HTTP 协议层和 TCP 协议层之间,能够对信用卡和个人信息提供较强的保护。SSL 在客户和服务器之间建立一条加密通道,确保所传输的数据不被非法窃取,SSL 安全加密机制功能是依靠使用数字证书来实现的。应用了 SSL 加密机制后,IIS 服务器的数据通信过程如下:首先客户端与IIS 服务器建立通信连接,接着 IIS 把数字证书与公用密钥发给客户端。然后使用这个公共密
25、钥对客户端的会话密钥进行加密后,传递给 IIS 服务器,服务器端接收后用私人密钥进行解密,这时就在客户端和 IIS 服务器间创建了一条安全数据通道,只有被 IIS 服务器允许的客户才能与它进行通信。4 网络文件管理系统的设计4.1 功能模块4.1.1 系统结构介绍本文论述的网络文件管理系统是基于 B/S 结构的数据库应用系统,具体反映为 ASP+ACCESS 技术的一种具体实现,根据 B/S 结构和用户实际应用特点,本系统主要划分为三个层面,其中客户端(用户界面)由一系列的 JSP 页面和HTML 页面组成,主要用于程序和用户的交互;服务端使用 VBscript 技术,主第 6 页 共 24
26、页要用于交互数据的存储和发送的响应处理;后台数据库主要是提供应用服务所需的数据。4.1.2 具体功能模块划分根据系统功能需求分析,系统主要划分为四个大模块,即登录验证,用户管理,文件管理,空间统计。其中,用户管理包含三个小模块:添加、删除、编辑;文件管理包含文件上传、下载、编辑等小模块。4.2 系统功能图示例本论文从超级管理员的角度,介绍系统功能。超级管理员功能示意图如图1图 1 超级管理员功能示意图特别说明:普通管理员无用户管理这一功能。用户管理功能示意图如图 2、图 2 用户管理功能示意图超级管理员登录用户管理 文件管理 空间总计 注销登录新建或删除文件、目录文件或目录的更名文件的上传下载、编辑 文件剪切、粘贴、复制用户管理添加新用户删除用户编辑(修改)用户信息