`
cjc
  • 浏览: 680369 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

OpenJWeb 1.6 Java快速开发平台中数据权限的实现(ACL)

阅读更多

虽然OpenJWeb中集成了Spring Security,不过数据权限并没有按照Spring Security中的 ACL框架,而是采用了一种更容易理解的方式,同样也能够实查询,编辑,删除操作的数据权限控制. 不需要为每一数据记录设置访问用户,只需要定义一个通用的规则,这样减少了很大数量的ACL记录.

表结构: 表名(需要对此表设置数据权限),操作(查询,删除,修改),条件规则(用户条件sql),数据过滤规则sql(当条件规则符合时,所选用的数据过滤语句,此where语句会附加在主sql的where 子句中,在执行分页之前起作用)

条件规则可以使用java程序实现,因为有的复杂的条件可能无法用一个sql写出来,在平台中,检查用户是否符合条件规则,如角色,部门 等,如果匹配,则查找对应的sql过滤语句.需要在分页之前构造好一个完整的sql,这样查询出来的就是符合数据权限规则的,而不是查出来再过滤.

编辑权限和删除的实现方式类似,不过sql语句多少有点差异,即当用户符合某条件时,数据过滤sql只起到一个select count(*)的作用,例:select count(*) from 表名 where rowId =当前选中行 and 其他约束条件,如果count(*)>0,则可编辑或删除.

(具体实现方式以后补充详细的文档)

分享到:
评论

相关推荐

    JAVA_API1.6文档(中文)

    java.sql 提供使用 JavaTM 编程语言访问并处理存储在数据源(通常是一个关系数据库)中的数据的 API。 java.text 提供以与自然语言无关的方式来处理文本、日期、数字和消息的类和接口。 java.text.spi java.text ...

    Java 1.6 API 中文 New

    java.sql 提供使用 JavaTM 编程语言访问并处理存储在数据源(通常是一个关系数据库)中的数据的 API。 java.text 提供以与自然语言无关的方式来处理文本、日期、数字和消息的类和接口。 java.text.spi java.text ...

    java连接zookeeper,并增加acl权限.docx

    Java 连接 ZooKeeper 并增加 ACL 权限 ZooKeeper 是一个开源的分布式应用程序协调服务,由 Apache 软件基金会提供。它提供了许多功能,如配置管理、名字服务、分布式同步、组服务等。 Java 是一种广泛使用的编程...

    java jdk-api-1.6 中文 chmd

    java.sql 提供使用 JavaTM 编程语言访问并处理存储在数据源(通常是一个关系数据库)中的数据的 API。 java.text 提供以与自然语言无关的方式来处理文本、日期、数字和消息的类和接口。 java.text.spi java.text ...

    JavaAPI1.6中文chm文档 part1

    java.sql 提供使用 JavaTM 编程语言访问并处理存储在数据源(通常是一个关系数据库)中的数据的 API。 java.text 提供以与自然语言无关的方式来处理文本、日期、数字和消息的类和接口。 java.text.spi java.text ...

    SSH实现OA系统,基于ACL权限管理

    SSH(Spring、Struts、...综上所述,这个SSH实现的OA系统利用了Java的技术栈来构建一套安全、可扩展的办公自动化平台,通过ACL权限管理确保了不同用户只能访问他们被授权的功能,从而提高了系统的安全性与效率。

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

    Java权限控制插件是软件开发中的一个重要组成部分,它主要用于管理和限制不同用户或角色对系统资源的访问。在本文中,我们将深入探讨这个基于Java编写的权限控制插件,特别是其核心概念、设计模式以及实现机制。 ...

    acl 框架库 v3.6.1.6.zip

    ACL(Access Control List)框架库是一个用于权限管理的开源库,尤其在软件开发中,它对于构建具有精细访问控制功能的应用程序至关重要。v3.6.1.6是该库的一个特定版本,提供了稳定性和功能性的增强。在这个压缩包中...

    网络课程设计--ACL编程实现

    在VB中实现ACL时,需要注意以下几点: 1. **Winsock控件**:VB中的Winsock控件可以用来处理网络通信,实现数据包的接收和发送。 2. **对话框和控件**:设计用户界面,通过对话框和控件让用户输入和查看ACL规则。 3....

    java模块级通用权限

    在Java开发中,权限管理是系统安全性的重要组成部分。"java模块级通用权限"是指一种能够应用于不同模块,具有高度可复用性和灵活性的权限控制框架。这种设计旨在为应用程序提供细粒度的访问控制,确保只有经过授权的...

    java权限管理教程

    Java权限管理是软件开发中的重要一环,尤其是在企业级应用中,确保数据安全性和用户访问控制至关重要。本教程聚焦于Java平台上的权限管理系统设计与实现,特别是基于Spring Security框架的ACL(Access Control List...

    java权限设计

    在Java编程语言中,权限设计是构建安全、可维护的应用程序的关键组成部分。权限设计涉及到对系统资源的访问控制,确保只有授权的用户或程序才能执行特定的操作...因此,在开发过程中,应始终重视权限控制的设计和实现。

    ACL IMDb 数据集

    ACL IMDb 数据集

    权限类组件程序.zip_java 权限_权限_权限 过滤 java

    在Java编程语言中,权限管理是软件开发中的一个重要组成部分,特别是在多用户系统或者网络应用程序中。这个名为"权限类组件程序.zip"的压缩包显然包含了与Java权限控制相关的代码示例或库。在这个组件中,可能包括了...

    BCM实现ACL功能

    实现ACL功能。 ACL,Access Control List,访问控制列表,是路由器和交换机接口的指令列表,用来控制端口进出的数据包。这张表中包含了匹配关系、条件和查询语句,表只是一个框架结构,其目的是为了对某种访问进行...

    lotus domino 权限资料--ACL权限复制

    Lotus Domino 是一款强大的协作平台,其核心组件之一是Access Control List(ACL),它负责管理数据库的访问权限。本文将详细讲解如何使用LotusScript复制一个数据库的ACL到另一个数据库,以及在处理过程中的一些...

    php中实现简单的ACL 完结篇

    在PHP中实现访问控制列表(Access Control List,简称ACL)是一种常见的权限管理方式,它允许开发者定义不同角色对资源的访问权限。在这个例子中,我们将探讨如何创建一个简单的ACL系统,并通过数据库来存储这些权限...

Global site tag (gtag.js) - Google Analytics