CN102110216B - 一种增强Web应用系统安全性的方法及终端 - Google Patents
一种增强Web应用系统安全性的方法及终端 Download PDFInfo
- Publication number
- CN102110216B CN102110216B CN2009102389032A CN200910238903A CN102110216B CN 102110216 B CN102110216 B CN 102110216B CN 2009102389032 A CN2009102389032 A CN 2009102389032A CN 200910238903 A CN200910238903 A CN 200910238903A CN 102110216 B CN102110216 B CN 102110216B
- Authority
- CN
- China
- Prior art keywords
- user
- menu data
- menu
- data
- access
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Abstract
本发明涉及一种增强Web应用系统安全性的方法及终端,该方法包括:设置数据库表,所述数据库包括系统菜单数据,其中所述菜单数据至少包括:主键ID、菜单名和访问URL;将所述系统菜单数据调入系统的内存;当用户登录所述系统时,将所述系统菜单数据中的用户拥有的菜单数据存入用户会话中;当用户操作某个菜单时,将所述系统菜单数据中的用于操作的菜单数据与存入用户会话中的菜单数据做比较,校验所述操作的菜单数据,允许通过所述检验的访问。增强了Web应用系统安全性的安全性。
Description
技术领域
本发明涉及计算机应用技术领域,更具体地说,涉及一种增强Web应用系统安全性的方法及终端。
背景技术
当今的Web(互联网)应用系统,大多数是在用户登录系统时,从数据库里把用户的菜单获取出来,然后显示在页面上供用户操作,而没有把菜单数据放入用户的Session(会话)里。这种方法没有实现真正的安全访问控制,因为在用户实际访问某个菜单时,并没有进行用户和菜单的权限校验,这样,某些不良用户在登录系统后,通过在IE(互联网浏览器)地址栏里直接键入URL(Uniform Resource Locator,网页地址)即可访问某些他不具有权限的页面。由于某些Web应用系统的安全性要求较高,上述方法显然是不适合的,为此,提出一种增加Web应用安全的解决方案。
发明内容
本发明要解决的技术问题在于,针对现有Web(互联网)应用系统登录安全性低的缺陷,提供一种增强Web应用系统安全性的方法及终端。
本发明解决其技术问题所采用的技术方案是:
一种增强Web应用系统安全性的方法,其包括:
设置数据库表,所述数据库表包括系统菜单数据,其中所述菜单数据至少包括:主键ID、菜单名和访问URL;
将所述系统菜单数据调入系统的内存;
当用户登录所述系统时,将所述系统菜单数据中的用户拥有的菜单数据存入用户会话中;
当用户操作某个菜单时,将所述系统菜单数据中的用于操作的菜单数据与存入用户会话中的菜单数据做比较,校验所述操作的菜单数据,允许通过所述校验的访问。
其中,优选的,所述设置数据库表之前,进一步包括:初始化数据库脚本,生成数据库表格和插入初始化数据,所述初始化数据包括菜单表的数据。
其中,优选的,所述当用户操作某个菜单时,将所述系统菜单数据中的用于操作的菜单数据与存入用户会话中的菜单数据做比较,校验所述操作的菜单数据,允许通过所述校验的访问,具体包括:
检查是否存在所述用户会话,如果存在,则接收所述用户操作的菜单数据,把所述用户操作的菜单数据与用户会话中的菜单数据作比较,如果是一致,则根据用户操作的菜单数据和所述内存中菜单数据去访问URL,如果系统中不存在用户的会话,或者校验不通过,则所述用户访问被拒绝。
本发明还提供一种增强Web应用系统安全性的终端,其包括:
数据库设置单元,用于设置数据库表,所述数据库表包括系统菜单数据,其中所述菜单数据至少包括:主键ID、菜单名和访问URL;
菜单数据存取单元,用于将所述系统菜单数据调入系统的内存;
用户数据存取单元,用于当用户登录所述系统时,将所述系统菜单数据中的用户拥有的菜单数据存入用户会话中;
校验单元,用于当用户操作某个菜单时,将所述系统菜单数据中的用于操作的菜单数据与存入用户会话中的菜单数据做比较,校验所述操作的菜单数据,允许通过所述校验的访问。
其中,优选的,该终端还包括:初始化单元,用于初始化数据库脚本,生成数据库表格和插入初始化数据,所述初始化数据包括菜单表的数据。
其中,优选的,所述校验单元,用于检查是否存在用户的会话,如果存在,则接收所述用户操作的菜单数据,把所述用户操作的菜单数据与用户会话中的菜单数据作比较,如果是一致,则根据用户操作的菜单数据和所述内存中菜单数据去访问URL,如果系统中不存在用户的会话,或者校验不通过,则所述用户访问被拒绝。
实施本发明的技术方案,具有以下有益效果:通过在用户登录系统时把用户的菜单数据放入用户的Session里,之后当用户实际访问某个菜单时,把它操作的菜单数据与用户Session里的菜单数据进行比较,只有校验通过的菜单才允许用户的访问,从而实现真正的安全访问控制。
附图说明
下面将结合附图及实施例对本发明作进一步说明,附图中:
图1是本发明实施例提供的方法流程图;
图2是本发明实施例提供的终端结构图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明提供了一种增强Web应用系统安全性的方法及终端,要求中等配置的电脑一台,预装有Windows操作系统、IE浏览器、Java运行时、Eclipse开发环境、MySQL数据库、Tomcat服务器,这也是开发Java Web应用系统的最基本配置。该方法和终端通过在用户登录系统时把用户的菜单数据放入用户的Session里,之后当用户实际访问某个菜单时,把它操作的菜单数据与用户Session里的菜单数据进行比较,只有校验通过的菜单才允许用户的访问,从而实现真正的安全访问控制。下面就结合附图和具体实施例来对本发明的技术方案进行详细描述。
实施例一:如图1所示,该增强Web应用系统安全性的方法包括步骤:
101、设置数据库表,所述数据库表包括系统菜单数据,其中所述菜单数据至少包括:主键ID、菜单名和访问URL;
在本实施例中,该数据库表设计为五个表格,分别为:用户表、角色表、菜单表、用户和角色关联表、角色和菜单关联表,其中,所述菜单表的菜单数据至少包括:主键ID、菜单名和访问URL,主键ID采用自编号的方式(不要采用数据库递增方式),并且不能重复。
在进一步的实施例中,该方法的步骤设置数据库表之前,还包括步骤:初始化数据库脚本,生成数据库表格和插入初始化数据,所述初始化数据包括菜单表的数据。即:初始化数据库脚本,生成数据库表格和插入初始化数据(主要包括整个系统的菜单数据)。
另外的实施例中,初始化数据库脚本之后还可以进一步包括:创建角色,给角色分配菜单数据;创建用户,给用户分配角色。即:使用后台系统创建角色,给角色分配菜单数据;然后使用后台系统创建用户,给用户分配角色。
102、将所述系统菜单数据调入系统的内存;
在本实施例中,当Web应用系统启动时,把整个系统的菜单数据(包括主键ID、菜单名和访问URL)从数据库中调入系统内存中缓存起来。
103、当用户登录所述系统时,将所述系统菜单数据中的用户拥有的菜单数据存入用户会话中;
在用户登录系统过程中,首先核查用户名和口令,如果核查不通过,系统退出,拒绝访问;如果核查通过则为用户创建一个Session,从数据库里获取用户基本信息以及用户所拥有的菜单数据,将该用户基本信息和所拥有的菜单数据一并存入用户Session中。在显示用户所拥有的菜单时,可以根据用户Session里的菜单数据和系统内存中的菜单数据把菜单名显示出来。
104、当用户操作某个菜单时,将所述系统菜单数据中的用于操作的菜单数据与存入用户会话中的菜单数据做比较,校验所述操作的菜单数据,允许通过所述校验的访问。
检查是否存在用户相关的会话,如果存在,则接收用户操作的菜单数据,把所述用户操作的菜单数据与用户会话中的菜单数据作比较,如果是一致,则根据用户输入的菜单数据和所述内存中菜单数据去访问URL,如果系统中不存在用户相关的会话中,或者校验不通过,则所述用户访问被拒绝。
即:当用户操作菜单数据时,用户必须传入菜单数据,如菜单数据的编号,此时系统首先检查是否存在用户相关的Session,如果存在则把传入的菜单数据和用户Session里的菜单数据做比较,核查通过后,根据传入的菜单数据和系统内存中的菜单数据去访问相关的URL。如果系统中不存在用户相关的Session或核查不通过,访问都被拒绝。这样可以防止不良用户直接在IE地址栏里键入URL来访问他不具有权限的菜单页面,从而更好地增加Web应用系统的安全。
相应的,本发明实施例还提供一种增强Web应用系统安全性的终端,图2为本发明实施例提供的终端结构示意图,该终端包括:
数据库设置单元201,用于设置数据库表,所述数据库表包括系统菜单数据,其中所述菜单数据至少包括:主键ID、菜单名和访问URL;
菜单数据存取单元202,用于将所述系统菜单数据调入系统的内存;
用户数据存取单元203,用于当用户登录所述系统时,将所述系统菜单数据中的用户拥有的菜单数据存入用户会话中;
校验单元204,用于当用户操作某个菜单时,将所述系统菜单数据中的用于操作的菜单数据与存入用户会话中的菜单数据做比较,校验所述操作的菜单数据,允许通过所述校验的访问。
其中,更具体的实施例中,所述校验单元205,用于检查是否存在用户相关的会话,如果存在,则接收用户操作的菜单数据,把所述用户操作的菜单编号与用户会话中的菜单编号作比较,如果是一致,则根据用户输入的菜单数据和所述内存中菜单数据去访问URL,如果系统中不存在用户相关的会话,或者校验不通过,则所述用户访问被拒绝。
进一步的实施例中,该终端还包括:初始化单元205,用于初始化数据库脚本,生成数据库表格和插入初始化数据,所述初始化数据包括菜单表的数据。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (6)
1. 一种增强Web应用系统安全性的方法,其特征在于,包括:
设置数据库表,所述数据库表包括系统菜单数据,其中所述菜单数据至少包括:主键ID、菜单名和访问URL;
将所述系统菜单数据调入系统的内存;
当用户登录所述系统时,将所述系统菜单数据中的用户拥有的菜单数据存入用户会话中;
当用户操作某个菜单时,将所述系统菜单数据中的用于操作的菜单数据与存入用户会话中的菜单数据做比较,校验所述操作的菜单数据,允许通过所述校验的访问。
2. 如权利要求1所述增强Web应用系统安全性的方法,其特征在于,所述设置数据库表之前,进一步包括:初始化数据库脚本,生成数据库表格和插入初始化数据,所述初始化数据包括菜单表的数据。
3. 如权利要求1所述增强Web应用系统安全性的方法,其特征在于,检查是否存在用户的会话,如果存在,则接收用户操作的菜单数据,把所述用户操作的菜单数据与用户会话中的菜单数据作比较,如果是一致,则根据用户操作的菜单数据和所述内存中菜单数据去访问URL,如果系统中不存在用户的会话,或者校验不通过,则所述用户访问被拒绝。
4. 一种增强Web应用系统安全性的终端,其特征在于,包括:
数据库设置单元,用于设置数据库表,所述数据库表包括系统菜单数据,其中所述菜单数据至少包括:主键ID、菜单名和访问URL;
菜单数据存取单元,用于将所述系统菜单数据调入系统的内存;
用户数据存取单元,用于当用户登录所述系统时,将所述系统菜单数据中的用户拥有的菜单数据存入用户会话中;
校验单元,用于当用户操作某个菜单时,将所述系统菜单数据中的用于操作的菜单数据与存入用户会话中的菜单数据做比较,校验所述操作的菜单数据,允许通过所述校验的访问。
5. 如权利要求4所述增强Web应用系统安全性的终端,其特征在于,还包括:初始化单元,用于初始化数据库脚本,生成数据库表格和插入初始化数据,所述初始化数据包括菜单表的数据。
6. 如权利要求4所述增强Web应用系统安全性的终端,其特征在于,所述校验单元,用于检查是否存在用户的会话,如果存在,则接收所述用户操作的菜单数据,把所述用户操作的菜单数据与所述用户会话中的菜单数据作比较,如果是一致,则根据所述用户操作的菜单数据和所述内存中菜单数据去访问URL,如果系统中不存在用户的会话,或者校验不通过,则所述用户访问被拒绝。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009102389032A CN102110216B (zh) | 2009-12-29 | 2009-12-29 | 一种增强Web应用系统安全性的方法及终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009102389032A CN102110216B (zh) | 2009-12-29 | 2009-12-29 | 一种增强Web应用系统安全性的方法及终端 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102110216A CN102110216A (zh) | 2011-06-29 |
CN102110216B true CN102110216B (zh) | 2013-02-27 |
Family
ID=44174370
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009102389032A Active CN102110216B (zh) | 2009-12-29 | 2009-12-29 | 一种增强Web应用系统安全性的方法及终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102110216B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102682240B (zh) * | 2012-05-16 | 2015-05-13 | 河南辉煌科技股份有限公司 | 大型bs结构系统中对资源的控制方法 |
CN109165053B (zh) * | 2018-08-15 | 2022-04-01 | 康美健康云服务有限公司 | 应用软件菜单配置方法、移动终端及计算机可读存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101313314A (zh) * | 2005-12-13 | 2008-11-26 | 国际商业机器公司 | 用于事务验证的方法和系统 |
CN101361037A (zh) * | 2006-10-17 | 2009-02-04 | 瑞科网信科技有限公司 | 使私有用户标识和公共用户标识相关联的系统和方法 |
-
2009
- 2009-12-29 CN CN2009102389032A patent/CN102110216B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101313314A (zh) * | 2005-12-13 | 2008-11-26 | 国际商业机器公司 | 用于事务验证的方法和系统 |
CN101361037A (zh) * | 2006-10-17 | 2009-02-04 | 瑞科网信科技有限公司 | 使私有用户标识和公共用户标识相关联的系统和方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102110216A (zh) | 2011-06-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110086822B (zh) | 面向微服务架构的统一身份认证策略的实现方法及系统 | |
US10009355B2 (en) | Bootstrapping user authentication on devices | |
CN104378376B (zh) | 基于soa的单点登录方法、认证服务器和浏览器 | |
CN101159557B (zh) | 单点登录的方法、装置及系统 | |
EP2332114B1 (en) | Form filling with digital identities, and automatic password generation | |
CN101662364B (zh) | 一种安全登陆的方法和系统 | |
US9098719B2 (en) | Securing unrusted content for collaborative documents | |
US20140189842A1 (en) | Method for defending against session hijacking attacks and firewall | |
US9032519B1 (en) | Protecting websites from cross-site scripting | |
CN102469075A (zh) | 一种基于web单点登录的集成认证方法 | |
CN104506542A (zh) | 安全认证方法和安全认证系统 | |
CN102868702B (zh) | 系统登录装置和系统登录方法 | |
CN103139200A (zh) | 一种web service单点登录的方法 | |
CN102739678B (zh) | 单点登录处理系统和单点登录处理方法 | |
CN102073822A (zh) | 防止用户信息泄漏的方法及系统 | |
CN103152365A (zh) | 对数据进行验证的数据验证方法及服务器 | |
CN106161710B (zh) | 一种基于智能手机的用户账号安全管理系统 | |
CN103444215A (zh) | 用于避免网络攻击的危害的方法和装置 | |
CN109962892A (zh) | 一种登录应用的认证方法及客户端、服务器 | |
CN115022047B (zh) | 基于多云网关的账户登录方法、装置、计算机设备及介质 | |
CN108234122B (zh) | 令牌校验方法和装置 | |
CN102110216B (zh) | 一种增强Web应用系统安全性的方法及终端 | |
CN106789930A (zh) | 一种Linux操作系统的单点登录方法 | |
CN113761509B (zh) | iframe验证登录方法及装置 | |
CN105100068A (zh) | 一种实现单点登录的系统及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CP02 | Change in the address of a patent holder | ||
CP02 | Change in the address of a patent holder |
Address after: 518000 Nanshan District high tech Zone, Guangdong City, Southern District, high-tech industrial village T2 Dong B6 plant Patentee after: Shenzhen Saige Navigation Science & Technology Address before: 518019 Shenzhen high tech Industrial Zone, Nanshan District City, Guangdong province high tech Industrial Zone T2 Dong B6 plant Patentee before: Shenzhen Saige Navigation Science & Technology |