20xx本科论文java权限管理系统设计论文内容摘要:

模式),是 WEB 兴起后的一种网络结构模式, WEB 浏览器是 客户端 最主要的 应用软件。 这种 模式统一了客户端,将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用。 客户机上只要安装一个浏览器( Browser),如 Netscape Navigator 或 Inter Explorer,服务器安装 Oracle、 Sybase、 Informix 或 MySQL 等数据库。 浏览器通过 Web Server 同数据库进行数据交互。 其大大简化了客户端电脑载荷,减轻了 系统维护 与升级的成本和工作量,降低了用户的总体成本 (TCO)【 6】。 B/S 结构最大的优点就是可以 在任何地方进行操作而不用安装任何专门的 软件。 只要有一台能上网的电脑就能使用,客户端零维护。 系统的扩展性非常容易,只要能上网,再由系统管理员分配一个用户名和密码,就可以使用了。 甚至可以在线申请,通过公司内部的安全认证(如 CA证书)后,不需要人的参与,系统可以自动分配给用户一个账号进入系统。 Tomcat 技术 Tomcat 时一个免费开源的 Servlet 容器,它是 Apache 基金会 Jakarta 项目wsscvzxvzx vx sscsadfzzcAA gvac vqa123453xcvfqxdvwzcvsdvx 中一个核心项目,由 Apache, Sun 和其它的一些公司及个人共同开发而成。 由于有了 Sun 的参与和支持,最新 Servlet 和 Jsp规范总能在 Tomcat 中得到了体现。 Tomcat 被 JavaWorld 杂志的编辑选为 2020 年度最具有创新的 java 产品,可见其在业界的地位。 与传统桌面应用程度不同, Tomcat 中应用程序是一个 WAR( Web Archive)文件。 WAR 时 Sun 提出一种 Web 应用程序的格式,与 JAR 类似,也是许多文件的一个压缩包。 这个包中的文件是按一定目录结构来组织:通常其 根目录下包含有Html 和 Jsp 文件或者包含这两种文件目录,另外还会有一个 WEBINF 目录,这个目录很重要。 通常在 WEBINF 目录下,有一个 文件和一个 classes 目录, 是这个应用的配置文件,而 classes 目录下,则包含编译好的 Servlet类和 Jsp 或 Servlet 所依赖其它类(如 JavaBean)。 通常这些所依赖的类也可以打包成 JAR 放到 WEBINF 下 lib目录下,当然也可以放到系统 CLASSPATH 中,但那样移植和管理起来不方便 【 7】。 在 Tomcat中,应用程序部署 很简单,你只需将你的 WAR放到 Tomcat的 webapp目录下, Tomcat 会自动检测到这个文件,并将其解压。 在浏览器中访问这个应用的 Jsp 时,通常第一次会很慢,因为 Tomcat 要将 Jsp 转化成为 Servlet 文件,然后编译。 编译以后,访问将会很快。 另外 Tomcat 也提供了一个应用: manager,访问这个应用需用户名和密码,用户名和密码存储在一个 xml 文件中。 通过这个应用,辅助于 FTP,你可以对过 Web 部署和撤销应用。 SSH 框架简介 SSH框架是一个集成 spring、 hibernate、 struts2 的基于 J2EE 的 WEB 框架,是目前使用最为广泛的 Web 应用框架之一。 SSH框架可以更好的为我们区分 MVC 的分层架构体系。 我们可以从四个层面来进行分层:领域模型层( entity)、资源访问层( dao)、业务逻辑层( service)、控制层( action),通过这四层模型可以帮助我们搭建结构清晰的、可复用性强的、方便维护的 WEB 应用程序。 Struts2 框架作为 WEB控制层层,负责从客户端接受request 请求,然后通过业务逻辑层的处理响应给客户端; Hibernate 是一个开源的对 象关系映射框架,它对 JDBC 进行了非常轻量级的封装,我们可以使用它方便的通过对对象的操作实现对数据库的操控; Spring 是一个轻量级的提供了依wsscvzxvzx vx sscsadfzzcAA gvac vqa123453xcvfqxdvwzcvsdvx 赖注入功能和面向切面编程功能的容器框架,我们通过 Spring 的控制反转技术降低了对象之间的耦合度,通过 spring 提供的面向切面编程技术可以很简单的对事务、日志等一些特殊功能进行处理, spring 还为我们提供了对一些开源技术集成接口,而且为我们提供了很多工具类来简易我们的开发过程 【 8】。 通过 SSH 框架的使用不仅能够帮助我们实现领域模型层、资源访问 层、业务逻辑层、控制层的分离降低了各层之间的耦合度,而且极大的简化了我们的开发使我们能够花更多的时间来关注业务的处理。 wsscvzxvzx vx sscsadfzzcAA gvac vqa123453xcvfqxdvwzcvsdvx 3 总体设计 权限系统概述 在 web 应用系统中,用户的安全认证、权限管理模块作为系统的重要组成部 分,是一个安全的信息系统中不可或缺的一部分。 用户的安全认证主要是用来保 证登录者的身份,防止用户密码泄漏。 权限管理的基本目标为了防止非法用户进 入系统;合法用户对系统资源非法使用。 用户的安全认证、权限管理作为现代信 息系统中重用性最高模块 之一,并且也是重复开发率最高的模块。 因此作为一个 权限管理系统平台,它应当尽可能的实现与业务的分离方便的集成其他的系统模 块,还应当最大化的提供一些公共方法的支持与扩展来防止我们重复的开发。 以 下我们将在用户安全认证方面采取一定的安全措施保证用户身份的安全;在权限 管理 系统 方面采用功能级权限和数据级权限两种方式来更加细粒度的进行权限控制。 权限系统实现的目标 首先权限管理系统平台作为一个平台我们将选用主流技术,通过对框架的封装来提供一些常用公共方法 【 9】。 使系统开发过程中更加快捷方便。 对权限管理方面我们通过两种权限控制方式,第一种是功能权限控制,功能权限控制是采用了基于角色的访问控制 (Role‐ Based Access Control, RBAC)并扩展了资源管理部分,基于角色的访问控制是目前比较成熟、应用比较广泛的统一资源访问控制方法,其核心内容包括用户、角色和资源三部分。 我们设计过程就采用 RBAC 参考模型作为设计理论基础,通过在用户和权限之间增加角色的概念,不同角色具有不同的操作集,这些操作又由系统管理员分配给角色,对用户进行角色授权可以实现一个用户拥有一个或多个角色,实现了授权的灵活性。 第 二种是数据级权限控制,数据级权限控制是指用户对使用的系统的 具体数据进行的权限控制,主要包括数据的查询权限、数据的修改权限、数据的删除权限、数据的创建权限、数据的管理员权限,它类似于我们 window 系统中 的文件的权限管理。 综上所述,我们在通用权限系统实现目标有如下几点: (1) 提供一套可以快速开发的系统平台。 (2) 基于安全认证系统登录入口,一个通用的系统登录页面实现,用户根据wsscvzxvzx vx sscsadfzzcAA gvac vqa123453xcvfqxdvwzcvsdvx 自己用户名密码实现对系统登录。 登录成功进入系统默认成功页面,失败提示失败信息。 (3) 功能权限的实现,包括对用户表、 角色表、权限表的新增、修改、删除、查询、用户分配角色、角色分配权限的实现;系统登录成功后根据用户角色决定网页访问权限,显示操作菜单或按钮;对地址栏 url 进行控制,若为非法的 url 进行提示无此授权信息。 (4) 数据 分配 权限一个功能 的 实现。 主要为不同的用户分配不同的角色,通过给角色设置权限进而使用户获得权限。 权限管理系统 网络 体系结构 图 31 网络体系结构图 如图 3‐ 1 所示,我们权限管理系统体系将采用的是 B/S 结构, B/S 结构即Browser/Servr 结构。 在 B/S 结构下,用户界面都是通过浏览器来进行展示的,我们可以通过浏览器技术结合浏览器的多种 Script 语言和 ActiveX 技术来处理一部分业务逻辑,这样可以帮助我们承担一部分服务器端压力,节约了开发的成本。 近年来随着浏览器技术的迅速发展, B/S 结构逐渐取代了 C/S 结构成为应用系统首选体系结构。 Web 服务器部署权限管理系统的服务端程序,即 Servlet 的可执行程序包,负责响应客户端工作站的请求,并根据请求内容和其他的服务器wsscvzxvzx vx sscsadfzzcAA gvac vqa123453xcvfqxdvwzcvsdvx 通讯获得执行结果并返还客户端工作站。 客户端工作站是本系统的终端用户操作台,用户可以使用工作站上提供的浏览器来使用本系统提供的各种功能。 权限管理系统 功能设计 系统功能结构图 图 32 系统功能结构图 图 3‐ 2 为我们展示系统功能结构,通过该图我们可以直观的描述系统所具备的功能,它可以把一个系统模块化,为详细设计提供了极大的便利条件,便于模块化程序设计。 系统功能模块设计 系统功能模块设计是我们根据现有需求基础上做出的模块化的系统设计,为我们后续的功能实现提供依据。 通过 中的系统功能结构图我们可以 看到 安全认证 功能为系 统提供了 登录功能。 系统用户根据用户名密码可以登录到系统,登录时我们通过对 cookie 的处理提供 记住密码 的功能。 功能权限为我们提供用户 管理 模块、角色管理模块、 部门管理模块 三 个功能模块。 (1) 用户管理模块 wsscvzxvzx vx sscsadfzzcAA gvac vqa123453xcvfqxdvwzcvsdvx 该模块主要为系统提供用户管理功能,包括新增用户、修改用户、删除用户、用户权限、查询用户。 (2) 角色管理模块 该模块主要为系统提供角色管理功能,包括新增角色、修改角色、删除角色、角色权限。 (4) 部门管理模块 该模块主要为系统提供部门管理功能,包括新增部门、修改部门、删除部门、查看部 门。 该模块还可以为新增部门新增上级部门, 可以查看上下级部门。 系统登录图 图 33 系统登录图 时序图 图 34为时序图,是 一种交互图 .用来显示对象之间的关系,并强调对象之间消息的时间顺序,同时显示了对象之间的交互。 wsscvzxvzx vx sscsadfzzcAA gvac vqa123453xcvfqxdvwzcvsdvx 图 34 时序图 UML 用例图 图 35, 36, 37 为 用例图( User Case) , 是被称为参与者的外部用户所能观察到的系统功能的模型图,呈现了一些参与者和一些用例,以及它们之间的关系,主要用于对系统、子系统或类的功能行为进行建模。 用例图展示了用例 之间以及同用例参与者之间是怎样相互联系的。 用例图用于对系统、子系统或类的行为进行可视化,使用户能够理解如何使用这些元素,并使开发者能够实现这些元素。 将每个系统中的用户分出工作状态的属性和工作内容,方便建模,防止功能重复和多余的类。 用例 是对包括 变量 在内的一组动作序列的描述,系统执行这些动作,并产生传递特定参与者的价值的可观察结果。 这是 UML 对 用例 的正式定义,对我们初学者可能有点难懂。 我们可以这样去理解, 用例 是参与者想要系统做的事情。 对于对 用例 的命名,我们可以给用例取一个简单、描述性的名称,一般为带有动作性的词。 用例 在画图中用 椭圆 来表示,椭圆下面附上用例的名称。 wsscvzxvzx vx sscsadfzzcAA gvac vqa123453xcvfqxdvwzcvsdvx 图 35 角色管理用 例图。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。