0 0

数据授权角色互斥怎么处理0

要对数据表进行授权,相应的角色只能查看授权内的数据:
假如对表“ 财务表 ”进行数据授权
角色A只能看2011,2012年的数据,则生成视图“财务表_角色A” (create view  财务表_角色A as select * from 财务表 where 年度 in (2011,2012))
角色B只能看2013年的数据,则生成视图“财务表_角色B” (create view  财务表_角色B as select * from 财务表 where 年度=2013)
要对财务表进行查询,则会根据当前用户拥有的角色使用相应的视图
假设原始的查询语句为 select * from 财务表,当拥有角色A的人员执行查询时,则会动态将“select * from  财务表”更改为“select * from  财务表_角色A”,但是如果当前人员拥有A和B两个角色时,这种方法就不合适,因为系统就不知道如何替换了,目前考虑的实现方案时将“select * from  财务表”更改为“select * from  (select * from  财务表_角色A union select * from  财务表_角色B) 财务表”,但这种方式如果查询语句不仅仅是一条简单的Select语句,如果语句太过复杂的话进行替换时会比较容易出问题,有没有什么好的方法可以实现这种替换或者有更好的数据权限授权方式
2013年10月14日 11:51

1个答案 按时间排序 按投票排序

0 0

可以给角色加上类型字段,即角色类型, 角色类型可以由数据字典表进行管理,也可以是单独的表,角色类型表的有一个字段定义类型约束。给用户授于角色时,检查角色类型,如果角色类型的约束是唯一约束,就检查用户是否已经拥有相同类型的角色了,如果是就提示角色冲突,否就提示成功

2013年10月15日 11:23

相关推荐

    权限系统设计

    权限系统的核心目标是控制不同用户或角色对资源的访问,确保数据安全,同时提供灵活的权限分配机制,以满足复杂的企业管理需求。 首先,权限系统设计的基础是角色(Role)和权限(Permission)的概念。角色是一组...

    可扩展的元数据管理策略.pptx

    - **限制访问权限**:只允许经过授权的用户和进程访问特定元数据。 - **数据加密技术**:如传输层安全 (TLS) 和静止数据加密等技术,保护元数据的安全。 通过以上策略的实施,可以有效地管理和利用元数据,不仅...

    基于角色的访问控制综述.pdf

    RBAC2进一步引入了各种限制条件,如互斥角色、最小权限原则等,以增强系统的安全性。RBAC3则是RBAC0和RBAC1的结合体,既保持了灵活性又提高了安全性。 - **ARBAC97及ARBAC02**:ARBAC97(Administrative RBAC)强调...

    RBAC模型基于角色-功能-资源的权限控制模型.pdf

    基本约束包括最小权限原则、职责分离、角色互斥和角色的受限继承。 2. RBAC1(Hierarchical RBAC):层级RBAC引入了角色之间的继承关系,允许一个角色继承另一个角色的权限,以适应组织结构的层级性。 3. RBAC2...

    一种基于改进RBAC模型的权限管理系统1

    在传统RBAC模型中,用户与权限的管理较为繁琐,角色数量的增长可能导致管理复杂度的增加,且无法有效地处理角色间的权限互斥问题。 改进点如下: 1. **引入用户组概念**:为了减少授权工作量,模型添加了用户组的...

    RBAC权限控制模型简介.docx

    SSD在用户和角色的分配阶段设置约束,如互斥角色、基数约束和先决条件约束。DSD则在会话级别进行约束,可以限制用户在同一时间激活的角色数量。 RBAC3综合了RBAC1和RBAC2的特点,包含了角色分层和约束,是最全面的...

    用友NC56客户化手册(中)

    - 管理员与业务角色互斥是一种设计原则,目的是避免权限冲突。这部分内容详细说明了如何设置这种互斥关系。 - **13.9 流程示例** - 本节通过具体的流程示例来展示权限管理的实际应用。这对于理解如何在实践中...

    基于C语言的宿舍管理系统设计与实现.rar

    1. 用户管理:包括用户注册、登录验证、权限控制等功能,确保只有授权用户才能访问系统,并且不同角色(如管理员、学生)有不同的操作权限。 2. 宿舍信息管理:记录宿舍楼号、楼层、房间号等信息,支持添加、修改和...

    Access-Control-and-Synchronization.rar_access control_synchroniz

    授权策略可以基于角色(如管理员、普通用户)、资源(如文件、数据库)或特定条件(如时间、地点)。 4. 访问控制模型:有多种访问控制模型,如强制访问控制(MAC)、自主访问控制(DAC)和基于角色的访问控制...

    sap hr 权限

    首先,传统的权限分配方案主要基于通用权限角色和结构化授权参数文件。这种方案中,权限管理员会先定义通用角色,然后根据业务需求派生出本地角色,并将本地角色分配给SAP用户。顾问或内部顾问则会在后台配置表定义...

    很好的vc图书管理系统

    VC++ 提供了对多线程的支持,可以利用线程同步机制如互斥量、信号量等来避免数据竞争。 6. **安全性与权限控制**:图书管理系统应具备用户身份验证和权限控制功能,确保只有授权的用户才能访问特定的功能。这通常...

    基于SQL的数据库访问控制安全研究.pdf

    RBAC模型主要用于解决具有大量用户、数据客体和访问权限的系统中的授权管理问题。 在RBAC模型中,数据库用户可以分为三类,分别是安全管理员、审计管理员和数据库用户。这三类用户职责是无交集的,安全管理员和审计...

    c#餐厅自助点菜系统源码

    系统需要实现用户认证和权限控制,这可能涉及到身份验证、角色管理和授权策略。 7. **设计模式**:为了提高代码的可读性和可维护性,开发者可能应用了一些设计模式,如单例模式(管理数据库连接)、工厂模式(创建...

    超全面的权限系统设计方案.docx

    这有助于确保系统的安全性,例如通过限制用户同时拥有互斥角色(如会计和审计员),以及设定用户和角色的数量限制等。 ##### 2.4 RBAC3模型 RBAC3模型是RBAC0、RBAC1和RBAC2的综合,提供了更为全面的权限管理机制...

    倾国倾城服务器端源码

    源码中会运用到线程池、锁机制(互斥锁、读写锁)、信号量等工具,来保证多线程间的同步与协作,防止数据竞争问题。 四、数据库管理 游戏数据的存储和查询通常依赖于数据库,如MySQL、MongoDB等。源码中会有数据库...

    用友T3教程

    而添加用户和设置权限则是为了确保数据安全,通过分配不同级别的权限,确保每个用户只能访问和操作他们被授权的相应功能。 在系统管理中,有两种主要的登录用户角色:admin和账套主管。admin拥有最高权限,可以创建...

    神机妙算最新(ET199锁)写锁 (2).zip

    这种锁可能涉及到硬件层面的锁定机制,也可能是软件层面的权限控制,确保只有授权的用户或设备能够访问并修改特定的数据或资源。 2. **写锁的概念** 写锁,全称为“独占写锁”,在并发控制中扮演关键角色。当一个...

    UDP.rar_udp 多线程_udp 聊天_udp 聊天室_聊天室_聊天室 udp

    这可能涉及到互斥锁、条件变量等同步原语,防止数据竞争和死锁问题。 7. **性能优化**: 在高并发场景下,优化UDP的缓冲区大小、接收窗口大小以及多线程间的协作模式都是提高系统性能的关键。此外,合理设置网络...

Global site tag (gtag.js) - Google Analytics