`

权限控制的探讨

    博客分类:
  • Java
阅读更多

    几天在做公司系统的权限控制模块,系统使用的框架式struts2+hibernate。目前使用的是拦截器方式。通过把每一个Action记录到权限表中,然后在拦截器中得到Action的名字,再去表中判断权限的方式。感觉虽然比较灵活,能够针对每一个Action进行权限控制,

    但是如果系统大了,这样维护起来就很复杂。

 

    使用JAAS看来还是比较复杂,改动比较大。

 

    系统没有使用Spring,

 

     由于开始开发的时候没有考虑到权限控制这块,就没有做权限控制类。

 

     现在使用拦截器来做就比较方便。想问问有没有经验的朋友一起探讨一下。

分享到:
评论
2 楼 Jxdwuao 2010-04-13  
目前 的公司使用的是 标签 来进行 控制 。
这种适合于 页面级别的 控制。 比如控制 当前用户可以显示的 元素。

<ryx:showinfo permissions="101,102,103,104">
   <a onmouseover="changeSubMenu2(submenu201);" id="button201" class=menu1>用户管理</a>
</ryx:showinfo>

比如控制 当前用户的 这个 《用户管理》 是否 显示,


private String permissions;

/**
*
*/
public int doStartTag() throws JspException {
boolean auth = false;
//配置好权限集合

if(permissions != null){
String[] strRights = StringUtil.split(permissions,",");
if(strRights != null){
for(int i = 0 ; i < strRights.length ; i ++ ){
hmRight.put(strRights[i],strRights[i]);
}
}
//hmRight.put()
}

while (itr.hasNext()) {
TFunction tf = (TFunction) itr.next();
//逐项检查是否存在该权限
if (hmRight.containsKey(String.valueOf(tf.getFunId()))) {
auth = true;
break;
}
}

return auth ? EVAL_BODY_INCLUDE : SKIP_BODY;
}

标签说明 :
SKIP_BODY隐含0    :跳过了开始和结束标签之间的代码。 
EVAL_BODY_INCLUDE隐含1:将body的内容输出到存在的输出流中  
SKIP_PAGE隐含5  :  忽略剩下的页面。 
EVAL_PAGE隐含6:继续执行下面的页
1 楼 ronartest 2010-02-07  
呵呵。。没人回答。。
楼主估计已经解决了吧?

相关推荐

    权限控制,js控制js控制js控制权限控制

    本文将深入探讨JavaScript如何实现权限控制,以及它在这个过程中的重要性。 首先,权限控制的核心目的是限制用户对资源的访问,确保只有具有适当权限的用户或程序才能执行特定的操作。在JavaScript中,权限控制主要...

    SpringBoot 权限控制(菜单控制,页面元素控制,url控制)

    本篇文章将详细探讨如何在SpringBoot中实现基于RBAC(Role-Based Access Control,基于角色的访问控制)的权限控制,包括菜单控制、页面元素控制以及URL控制。 首先,让我们理解RBAC模型。RBAC是一种权限分配策略,...

    权限控制模型文档 介绍权限控制模块

    【权限控制模型】是信息化系统中至关重要的组成部分,它的设计直接影响到系统的安全性、稳定性和易用性。本文将深入探讨几种常见的访问控制技术,包括自主访问控制(DAC)、强制访问控制(MAC)以及基于角色的访问...

    java写的一个权限控制的插件

    在本文中,我们将深入探讨这个基于Java编写的权限控制插件,特别是其核心概念、设计模式以及实现机制。 首先,让我们理解权限控制的基本原理。权限控制通常涉及到身份验证(Authentication)和授权(Authorization...

    springboot springsecurity动态权限控制

    在这个“springboot springsecurity动态权限控制”的主题中,我们将深入探讨如何在Spring Boot项目中集成Spring Security,实现动态权限控制,让菜单权限的管理更加灵活和高效。 首先,我们需要理解Spring Security...

    Spring Security如何使用URL地址进行权限控制

    在本文中,我们将探讨如何使用Spring Security来实现URL地址的权限控制。 权限控制是指根据用户的角色和权限来控制用户对资源的访问权限。例如,在一个Web应用程序中,可能存在多个用户,每个用户都有不同的角色和...

    js控制js控制权限控制js控制js控制权限控制

    我们将深入探讨JavaScript在权限控制中的应用及其重要性。 1. **JavaScript的基本概念**: JavaScript主要运行在客户端浏览器上,用于增加网页的交互性和动态效果。它是一种解释型、面向对象的语言,支持函数式...

    asp.net core项目mvc权限控制:分配权限

    在ASP.NET Core中,权限控制是一个关键的组件,用于确保只有具备特定权限的用户才能访问特定的资源或执行特定的操作。在本教程中,我们将探讨如何在ASP.NET Core MVC项目中实现这一功能,特别是如何进行权限的分配。...

    前后端分离做权限控制设计.docx

    本文旨在探讨如何在前后端分离的架构下有效地设计权限控制系统。 #### 权限控制的常见问题 在传统的前后端集成架构中,权限控制相对简单,通常由后端完全负责。但在前后端分离的情况下,前端框架需要更复杂的逻辑...

    jsp权限控制

    本文将深入探讨如何在JSP中实施权限控制,基于提供的文件信息,我们将解析其核心思想、实现步骤以及应用场景。 #### 知识点一:RBAC角色访问控制理论 RBAC(Role-Based Access Control)是一种基于角色的访问控制...

    java后台权限控制

    本教程将深入探讨这两种不同的权限控制实现方式:一种不使用Shiro,另一种则是结合Shiro进行权限管理。 1. **不使用Shiro的权限控制**: 在不依赖Shiro的情况下,Java后台权限控制通常需要自定义实现。这通常涉及到...

    asp.net权限控制

    ASP.NET权限控制是Web开发中一个关键的安全环节,它确保只有授权的用户才能访问特定的资源或执行特定的操作。在本程序中,开发者利用ASP.NET的内置对象和HTTP消息头来实现这一目标。下面我们将详细探讨这个话题。 ...

    简单的权限控制系统

    "简单的权限控制系统"这个主题主要探讨了如何设计和实施一个基础的权限控制方案,它涉及到用户、角色和权限这三者之间的相互作用。在这个系统中,用户是操作的主体,角色是权限的集合,而权限则定义了用户可以进行的...

    权限控制功能总结.rar

    本文将深入探讨“监听器”、“过滤器”、“登录验证”和“拦截器”这四个核心概念,它们在实现用户权限控制中发挥着重要作用。 首先,我们来谈谈“监听器”(Listeners)。在JavaWeb中,监听器是实现特定事件处理的...

    java权限控制

    在Java Web开发中,权限控制是一项至关重要的任务,它确保只有授权的用户才能访问特定的资源和服务。这里的“java权限控制”主要指的是在Web应用程序中实施的安全策略,以保护敏感数据和操作。过滤器(Filter)是...

    php登录权限控制

    本文将深入探讨“PHP登录权限控制”这一主题,它涉及到用户身份验证、权限检查以及安全策略,这些都是构建安全、功能完备的后台系统的关键部分。 首先,登录系统是任何有权限限制的Web应用的核心组成部分。它的主要...

    Java访问权限控制源代码

    在Java编程语言中,访问权限控制是至关重要的一个部分,它确保了代码的封装性和安全性。本主题将深入探讨Java中的访问修饰符及其在源代码中的应用。 首先,Java提供了四种基本的访问权限控制修饰符: 1. **public*...

    Struts2拦截器实现权限控制demo

    在这个“Struts2拦截器实现权限控制demo”中,我们将深入探讨如何利用拦截器来实现细粒度的用户权限管理。 首先,我们需要了解Struts2中的拦截器工作原理。拦截器是基于Java的动态代理模式实现的,它们按照配置的...

    ASP.net中的权限控制

    在本实例中,我们将探讨一种基于Session的简单权限控制实现方式。 首先,我们要理解Session在ASP.NET中的作用。Session是一种会话状态管理机制,它允许开发者在用户浏览器会话期间存储和检索数据。当用户首次登录时...

    filter 实现权限控制

    本文将详细探讨如何通过`Filter`实现权限控制,以及与RBAC(Role-Based Access Control,基于角色的访问控制)的关系。首先,让我们理解`Filter`的概念。 `Filter`是Java Servlet API中的一个重要组件,它允许我们...

Global site tag (gtag.js) - Google Analytics