当前位置: 首页 > 毕业资源下载

静态网页设计与制作作业成品

基于Web的subversion用户管理系统(源代码+论文)免费下载

 摘要:

本系统主要是基于Web的subversion系统的用户管理系统。在开源软件世界,并行版本系统(cvs)一直是版本控制长久以来的唯一选择,但是,和其它许多工具一样,cvs开始显露出衰老的迹象,而subversion,正是以cvs继任者的面目出现的新型版本控制系统。但是,它的用户管理机制却是很差,本系统正是基于这个现实。实现友好的subversion用户界面,以提高工作效率。
subversion用户管理系统分为两大基本部分,一个是普通用户的注册及自己资料的修改和管理。另外一个主要部分是超级用户对于普通用户的申请进行认证。以及对通过认证的用户分配相应的权限。
本系统是基于apache和php平台的Web应用程序。采用php人作为前台开发语言。Mysql作为后台数据库。apache作为服务器对subversion用户进行管理。系统具有良好的稳定性,并具有可移植性强等特点。

关键字:

Php;Subversion;Apache;用户管理

     目录:

屏幕截图 2020-12-18 091109.png

屏幕截图 2020-12-18 091440.png


  系统需求分析:

subversion是一个自由/开源的版本控制系统。现在subversion也得到了很广泛的使用。但是subversion的用户管理机制却是很差的。从而需要一个关于subversion的用户管理系统.在本系统中,它可以使得正在使用subversion的某一项工程的人们,可以通过网络来管理自己的用户资料。而管理员也可以通过这个系统来管理用户。包括对用户最终基本的认证管理和权限管理。以及最后生成subversion权限配置文件

系统功能模块需求

用户注册模块的需求

用户注册模块能够满足用户的注册。包括用户的资料管理、修改等等。

管理员功能处理模块的需求

此模块能够满足管理员对注册的用户进行管理,包括对注册的用户进行审核通过。对审核通过的用户进行删除,分配权限。以及能够使数据库当中的数据能够生成subversion权限配置文件。

各个功能模块数据结构图

图片12.png

系统数据结构

用户环境需求

用户使用环境需求

1、硬件需求:计算机一台
2、操作系统:Windows XP/2000
3、开发语言:php
4、服务器工具:apache
5、数据库:mysql
6、其它工具:subversion

其它需求

完成系统需求平台的搭建。即apache+php+mysql+subversion等工具的整合和配置。



系统总体设计:

系统功能模块划分

subversion用户管理系统有两大主要模块:一个用户认证注册模块。另一个主要的模块是管理员的管理模块。当某位用户需要加入到某一项工程当中的时候,就可以通过网络来注册自己的用户。而管理员模块则可以对注册的用户进行认证。通过认证后可以分配相当的权限。其中的数据处理在mysql数据库当中完成。最后由数据库当中表的数据生成subversion权限配置文件。这样就是完成了一个简单的用户管理过程。

系统功能模块流程图

图片13.png

系统功能模块流程图

数据库总体设计

在数据库svn_usr中包含了如下的一些表以及它们各自的作用。

屏幕截图 2020-12-18 092221.png

表1 数据库中的表


模块功能的详细实现过程:

5.1本系统使用的subversion权限机制

ApacheHTTP服务器是一个Subversion可以利用的“重型”网络服务器,通过一个自定义模块,httpd可以让Subversion版本库通过WebDAV/DeltaV协议在客户端前可见,WebDAV/DeltaV协议是HTTP 1.1的扩展。这个协议利用了无处不在的HTTP协议是广域网的核心这一点,添加了写能力—更明确一点,版本化的写—能力。结果就是这样一个标准化的健壮的系统,作为Apache软件的一部分打包,被许多操作系统和第三方产品支持,网络管理员也不需要打开另一个自定义端口。这样一个Apache-Subversion服务器具备了许多svnserve没有的特性,但是也有一点难于配置,灵活通常会带来复杂性。
为了让你的版本库使用HTTP网络,你基本上需要两个包里的四个部分。你需要Apache httpd 2.0和包括的mod_dav DAV模块,Subversion和与之一同分发的mod_dav_svn文件系统提供者模块,如果你有了这些组件,网络化你的版本库将非常简单,如:
配置好httpd 2.0,并且使用mod_dav启动,
mod_dav安装mod_dav_svn插件,它会使用Subversion的库访问版本库,并且
配置你的httpd.conf来输出(或者说暴露)版本库。
你可以通过从源代码编译httpdSubversion来完成前两个项目,也可以通过你的系统上的已经编译好的二进制包来安装。最新的使用Apache HTTPSubversion的编译方法和Apache的配置方式可以看Subversion源代码树根目录的INSTALL文件。
Subversion的服务器端,它的最大的独特之处,在于它可以通过一个扩展模块与 Apache 的 HTTP 服务器相结合,实现很多高级的管理功能和安全特性。与 CVS 相比,Subversion 实现了更加先进和安全的用户认证功能。在 Apache 的支持下,用户可以通过 HTTP 协议访问版本库,管理员可以对用户访问 HTTP 的权限做出具体的设置,同时 Subversion 还可以获得 SSL 传输加密,用户数据加密,以及目录级的访问控制等特性。而本系统正是基于此,使用mysql数据库的users表中内容作为用户登录的认证。使用authz文件作为权限控制文件。

5.2数据流程图

5.2.1用户注册数据流程图

屏幕截图 2020-12-18 092609.png

图6 用户注册数据流程图

5.2.2管理员管理数据流程图

屏幕截图 2020-12-18 092629.png

图7 管理员管理数据流程图

5.3数据库结构设计

数据库当中各个表的详细设计
表2 记录用户基本信息

主键
列(属性)名
中文名称
类型
宽度
是否允许为空
username
用户名
varChar
25
NOT NULL

passwd
用户密码
varChar
25
NOT NULL

groups
用户组
varChar
25
NOT NULL

realname
用户真实姓名
varChar
10
NOT NULL

dept
所属部门
varChar
50
NOT NULL

tel
联系电话
varChar
20
NOT NULL

表3 记录未审核注册用户信息

主键
列(属性)名
中文名称
类型
宽度
是否允许为空
username
用户名
varChar
25
NOT NULL

passwd
用户密码
varChar
25
NOT NULL

groups
用户组
varChar
25
NOT NULL

realname
用户真实姓名
varChar
10
NOT NULL

dept
所属部门
varChar
50
NOT NULL

tel
联系电话
varChar
20
NOT NULL

表4 用来进行apache登录认证

主键
列(属性)名
中文名称
类型
宽度
是否允许为空
username
用户名
varChar
25
NOT NULL

passwd
用户密码
varChar
25
NOT NULL

groups
用户组
varChar
25
NOT NULL

表5 记录用户权限数据以及生成subversion权限配置文件

主键
列(属性)名
中文名称
类型
宽度
是否允许为空

number
列名
int
20
NOT NULL

group
用户组名
varChar
50
NOT NULL

name
用户名
varChar
50
NOT NULL


最新毕业设计成品

版权所有© 帮我毕业网 并保留所有权利

QQ 1370405256 微信 biyebang

QQ:629001810微信:biyebang

收缩