CN112632492B - 一种用于矩阵化管理的多维权限模型设计方法 - Google Patents
一种用于矩阵化管理的多维权限模型设计方法 Download PDFInfo
- Publication number
- CN112632492B CN112632492B CN202011505863.6A CN202011505863A CN112632492B CN 112632492 B CN112632492 B CN 112632492B CN 202011505863 A CN202011505863 A CN 202011505863A CN 112632492 B CN112632492 B CN 112632492B
- Authority
- CN
- China
- Prior art keywords
- information
- management object
- user
- information management
- authority
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
- G06F16/2433—Query languages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/26—Visual data mining; Browsing structured data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/45—Structures or tools for the administration of authentication
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Storage Device Security (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提出一种用于矩阵化管理的多维权限模型设计方法,包括以下步骤:系统管理员通过信息管理对象对用户或角色授予信息权限:启用信息管理对象后,系统管理员对用户或角色进行信息访问权限授权,并将元数据字段与管理对象进行绑定;在元数据中,定义信息资源的可访问范围,将信息资源的一个数据类型与信息资源对象绑定;系统管理员在授权界面,对用户或角色的每个信息管理对象授予可访问的数据范围权限,通过设定信息管理对象值或条件来控制可访问资源的范围。本发明既能处理业务单据纵向垂直管控,又能处理业务单据的横向业务协同,以信息管理对象作为信息权限控制维度,通过信息管理对象的信息资源授权,方便、快捷、准确地控制信息权限。
Description
技术领域
本发明涉及权限管理技术领域,尤其是一种用于矩阵化管理的多维权限模型设计方法。
背景技术
传统权限管理方法1:权限就是系统(或组织)赋予特定的用户对信息资源(或对象)具有一定操作权利(或职能);例如企业赋予某采购员具有采购物资的权利,即系统赋予某用户具有编制采购计划、录入采购订单、接收采购物资、向供应商付款的权利。具体实现方法就是:分别定义用户对信息资源的操作权限;这是信息系统数据安全的最重要的基础之一。
但是,由于系统管理员需要对所有用户的所有可操作的所有的信息资源都要单独赋权,工作量十分庞大;
传统权限管理方法2:在国际上引入了角色的感念;角色就是一组对特定信息资源可操作的权限;例如,采购员角色就是可以操作,编制采购计划、录入采购订单、接收采购物资、向供应商付款的权利(相当于采购员的职责),这样系统只要赋予某用户是采购员角色,他就有了采购员角色的所有权限。具体实现方法就是:(1)定义角色;(2)将用户与角色绑定。虽然这种方法大大减轻了管理员的赋权工作量,但是该方法存在的主要问题是只能解决系统中的功能权限(职能),无法解决针对机电采购员只能操作他自己管辖的机电类物资的采购,同时需限制其不允许查看或操作其它物资采购员的采购信息;这就是,还要有信息权限;
传统权限管理方法3:信息权限就是用户在系统中只能被赋予对特定信息资源中,其中一部分按某个控制点限定范围的信息,所具有操作的权限。具体实现方法就是:(1)定义信息资源的控制点,如业务单据(销售订单、采购单等)中的公司、部门、个人、客户、供应商等;(2)限定对控制点信息资源的可操作范围(没有明确限定即视为全部有效),例如采用SQL语句按限定条件或取值分为过滤出细分的信息资源;(3)定义可对细分信息资源可操作的角色(权限);(4)将用户与角色绑定。
现有的信息权限实现存在的最大问题是:
(1)信息隔离规则的定义过于复杂,对管理员的技能要求高;
(2)信息隔离规则定义不直观,不易方便地跟踪赋权中的错误,存在较高的信息泄露风险;
(3)通过SQL语言对数据过滤处理的时间超长时,导致系统的性能显著下降,大大降低了用户操作的体验感;
(4)需要权限控制的信息资源较多时,例如复杂多样的业务单据,管理员赋权的工作量仍然十分庞大。
发明内容
本发明解决了上述问题,提出一种在矩阵式组织模式下既能处理业务单据纵向垂直管控,又能处理业务单据的横向业务协同的问题的多维权限控制模型的方法,以信息管理对象作为信息权限控制维度,通过“信息管理对象”的信息资源授权,达到方便、快捷、准确的信息权限控制目的。
为实现上述目的,提出以下技术方案:
一种用于矩阵化管理的多维权限模型设计方法,包括以下步骤:
A、系统管理员通过信息管理对象对用户或角色授予信息权限:
启用信息管理对象后,系统管理员对用户或角色进行信息访问权限授权,并将元数据字段与信息管理对象进行绑定;
在元数据中,定义信息资源的可访问范围,将信息资源的一个数据类型与信息管理对象绑定;如将业务单据中的字段元素与信息管理对象之进行绑定;这样就让系统获得业务单据中的字段与信息管理对象绑定关系,从而可将此字段作为数据库语句的查询条件进行查询。
系统管理员在授权界面,对用户或角色的每个信息管理对象授予可访问的数据范围权限,通过设定信息管理对象值或条件来控制可访问资源的范围;即通过设定信息管理对象值或条件来控制对可访问资源的范围,如“部门”管理对象=“销售部”;若是对角色授予数据权限,则需要设置用户拥有此角色,用户立即包含此角色的数据权限。
B、实际操作阶段对用户的信息权限控制:
用户登录系统后,通过功能权限控制用户请求访问一个信息资源,例如打开一个业务单据;系统获取到信息资源即业务单据与信息管理对象的绑定关系数据;再通过对应的信息管理对象,计算用户的信息管理对象范围数据,写入为用户分配好的计算结果表中;
利用信息资源即业务单据与信息管理对象的绑定关系,获取信息资源即业务单据的字段与信息管理对象生成结果表的数据结合,生成符合生产环境数据库的查询条件语句,并与查询方法的条件拼接,完成对数据范围的限制;
最后返回符合授权维度控制的信息资源即业务单据,并在用户界面展示。
信息管理对象作为控制信息权限的维度,通过信息管理对象进行信息范围授权;大大减轻了系统管理员对每个业务单据启用信息权限控制的绑定配置的工作量;由于给用户赋予的信息权限的设置是在可视化的界面中实现的,系统管理员能非常直观的看到用户被授予的权限;而且可准确的定位和判断信息权限设置的错误,可及时避免由于信息权限设置的错误所导致的信息泄露问题,从而大大提高了信息安全的可控性;同一信息资源可穿透下级组织和平级部门的数据,实现垂直管控和水平管控。
作为优选,所述信息管理对象为数据访问的控制维度,包括用户、角色、部门、组织、集团、项目、操作员、客户、供应商、业务员、预算项、文档类型和文档密级。
作为优选,所述信息管理对象设有一类为全局类型,所述全局类型不区分组织,在整个系统通用的,在授权和过滤数据范围时不受到组织维度的限制,即没有明确限定即视为全部有效。全局类型比如:财务中的预算项,它在整个系统中都一样,各个组织进行授权预算项并填报后,集团可按照组织、预算项的维度查看、统计、审核数据。
作为优选,所述系统管理员对信息管理对象授权时,每个信息管理对象设有值的范围和通配符。例如“项目”管理对象,可赋予@全部,@本级组织及下级组织,@本组织全部,也可对具体的项目进行授权,这样就大大减轻了管理员的赋权,提高了权限分配的灵活性,另外可直观的看到用户拥有项目的权限范围,减少了赋权出现漏洞。
作为优选,所述步骤A具体包括多维信息权限设置过程:
S1.注册信息管理对象:定义需要控制的可访问数据的权限维度;注册信息管理对象时,需确定信息管理对象的标识、名称和是否全局等信息。
S2.授权信息管理对象可访问数据的信息资源:设置信息管理对象的可访问数据源如业务单据,数据源将用于授权和权限解析时使用;
S3.存储信息资源与信息管理对象间的关系:绑定各资源数据类型如业务单据中的字段与信息管理对象的关联关系;由于一个数据源如业务单据可绑定多个信息管理对象;如客户关系系统中,客户数据需要组织、客户类型、业务员等维度隔离数据,那么就需要绑定组织,客户类型,业务员等。在用户打开单据时就可查找到业务单据与信息管理对象关联关系,并解析在用户对应信息管理对象的数据范围和生成适配数据库的查询条件中使用。
S4.设置角色:在功能权限定义中,角色是一组对资源可操作功能权限的集合,例如角色“销售员”可以增加销售订单、修改销售计划;在信息权限定义中,角色是一组权限范围内可访问的数据源;
S5.定义用户:定义所有可操作和运行系统的操作用户,包括用户标识符ID和用户名称;
S6.用户角色分配:将用户分配给一个或几个角色;例如,用户“王小明”即有“销售员”角色,又有“计划员”角色;当给角色分配了信息权限后,属于该角色的用户拥有所有该角色的信息权限;
S7.设置可访问的信息管理对象值:给用户或角色分配可访问的信息管理对象值即信息管理对象参数值;例如信息管理对象为部门,则这里就是分配该用户或角色的部门=“销售部”,以便在该用户操作时,可访问到所有部门属于“销售部”的信息资源如业务单据。
作为优选,所述步骤B具体包括多维信息权限控制过程:
S8.用户登录:用户通过用户标识符ID和用户名称登录到系统中,系统对用户进行统一身份验证;
S9.对信息资源的访问请求:用户请求对信息资源的访问,例如请求打开销售订单列表;
S10.获取用户可访问资源的信息管理对象值:从用户可访问资源的信息管理对象值表格中获取授权数据,例如通过用户标识获取到授权可访问的对象值是“销售部”;
S11.匹配信息资源与信息管理对象间的关系:计算信息管理对象授权数据后,存入预分配结果表中;并生成符合数据库查询的访问条件;
S12.返回用户可访问的信息资源:执行SQL执行语句,得到用户被授权可访问的信息资源,并返回给用户界面显示。
作为优选,所述查询条件语句通过SQL语句进行集合查询,将大大提高系统运行的性能。
本发明的有益效果是:信息管理对象作为控制信息权限的维度,通过信息管理对象进行信息范围授权;大大减轻了系统管理员对每个业务单据启用信息权限控制的绑定配置的工作量;由于给用户赋予的信息权限的设置是在可视化的界面中实现的,系统管理员能非常直观的看到用户被授予的权限;而且可准确的定位和判断信息权限设置的错误,可及时避免由于信息权限设置的错误所导致的信息泄露问题,从而大大提高了信息安全的可控性;同一信息资源可穿透下级组织和平级部门的数据,实现垂直管控和水平管控。
附图说明
图1是实施例1多维信息权限设置过程的逻辑示意图;
图2是实施例1多维信息权限控制过程的逻辑示意图;
图3是实施例3的信息权限垂直管控和水平管控的组织架构图。
具体实施方式
实施例1:
本实施例提出一种用于矩阵化管理的多维权限模型设计方法,包括以下步骤:
A、系统管理员通过信息管理对象对用户或角色授予信息权限:
启用信息管理对象后,系统管理员对用户或角色进行信息访问权限授权,并将元数据字段与信息管理对象进行绑定;
在元数据中,定义信息资源的可访问范围,将信息资源的一个数据类型与信息管理对象绑定;如将业务单据中的字段元素与信息管理对象之进行绑定;这样就让系统获得业务单据中的字段与信息管理对象绑定关系,从而可将此字段作为数据库语句的查询条件进行查询。
系统管理员在授权界面,对用户或角色的每个信息管理对象授予可访问的数据范围权限,通过设定信息管理对象值或条件来控制可访问资源的范围;即通过设定信息管理对象值或条件来控制对可访问资源的范围,如“部门”管理对象=“销售部”;若是对角色授予数据权限,则需要设置用户拥有此角色,用户立即包含此角色的数据权限。
B、实际操作阶段对用户的信息权限控制:
用户登录系统后,通过功能权限控制用户请求访问一个信息资源,例如打开一个业务单据;系统获取到信息资源即业务单据与信息管理对象的绑定关系数据;再通过对应的信息管理对象,计算用户的信息管理对象范围数据,写入为用户分配好的计算结果表中;
利用信息资源即业务单据与信息管理对象的绑定关系,获取信息资源即业务单据的字段与信息管理对象生成结果表的数据结合,生成符合生产环境数据库的查询条件语句,并与查询方法的条件拼接,完成对数据范围的限制;
最后返回符合授权维度控制的信息资源即业务单据,并在用户界面展示。
信息管理对象作为控制信息权限的维度,通过信息管理对象进行信息范围授权;大大减轻了系统管理员对每个业务单据启用信息权限控制的绑定配置的工作量;由于给用户赋予的信息权限的设置是在可视化的界面中实现的,系统管理员能非常直观的看到用户被授予的权限;而且可准确的定位和判断信息权限设置的错误,可及时避免由于信息权限设置的错误所导致的信息泄露问题,从而大大提高了信息安全的可控性;同一信息资源可穿透下级组织和平级部门的数据,实现垂直管控和水平管控。
信息管理对象为数据访问的控制维度,包括用户、角色、部门、组织、集团、项目、操作员、客户、供应商、业务员、预算项、文档类型和文档密级。
信息管理对象设有一类为全局类型,全局类型不区分组织,在整个系统通用的,在授权和过滤数据范围时不受到组织维度的限制,即没有明确限定即视为全部有效。全局类型比如:财务中的预算项,它在整个系统中都一样,各个组织进行授权预算项并填报后,集团可按照组织、预算项的维度查看、统计、审核数据。
系统管理员对信息管理对象授权时,每个信息管理对象设有值的范围和通配符。例如“项目”管理对象,可赋予@全部,@本级组织及下级组织,@本组织全部,也可对具体的项目进行授权,这样就大大减轻了管理员的赋权,提高了权限分配的灵活性,另外可直观的看到用户拥有项目的权限范围,减少了赋权出现漏洞。
参考图1,步骤A具体包括多维信息权限设置过程:
S1.注册信息管理对象:定义需要控制的可访问数据的权限维度;注册信息管理对象时,需确定信息管理对象的标识、名称和是否全局等信息。
S2.授权信息管理对象可访问数据的信息资源:设置信息管理对象的可访问数据源如业务单据,数据源将用于授权和权限解析时使用;
S3.存储信息资源与信息管理对象间的关系:绑定各资源数据类型如业务单据中的字段与信息管理对象的关联关系;由于一个数据源如业务单据可绑定多个信息管理对象;如客户关系系统中,客户数据需要组织、客户类型、业务员等维度隔离数据,那么就需要绑定组织,客户类型,业务员等。在用户打开单据时就可查找到业务单据与信息管理对象关联关系,并解析在用户对应信息管理对象的数据范围和生成适配数据库的查询条件中使用。
S4.设置角色:在功能权限定义中,角色是一组对资源可操作功能权限的集合,例如角色“销售员”可以增加销售订单、修改销售计划;在信息权限定义中,角色是一组权限范围内可访问的数据源;
S5.定义用户:定义所有可操作和运行系统的操作用户,包括用户标识符ID和用户名称;
S6.用户角色分配:将用户分配给一个或几个角色;例如,用户“王小明”即有“销售员”角色,又有“计划员”角色;当给角色分配了信息权限后,属于该角色的用户拥有所有该角色的信息权限;
S7.设置可访问的信息管理对象值:给用户或角色分配可访问的信息管理对象值即信息管理对象参数值;例如信息管理对象为部门,则这里就是分配该用户或角色的部门=“销售部”,以便在该用户操作时,可访问到所有部门属于“销售部”的信息资源如业务单据。
参考图2,步骤B具体包括多维信息权限控制过程:
S8.用户登录:用户通过用户标识符ID和用户名称登录到系统中,系统对用户进行统一身份验证;
S9.对信息资源的访问请求:用户请求对信息资源的访问,例如请求打开销售订单列表;
S10.获取用户可访问资源的信息管理对象值:从用户可访问资源的信息管理对象值表格中获取授权数据,例如通过用户标识获取到授权可访问的对象值是“销售部”;
S11.匹配信息资源与信息管理对象间的关系:计算信息管理对象授权数据后,存入预分配结果表中;并生成符合数据库查询的访问条件;
S12.返回用户可访问的信息资源:执行SQL执行语句,得到用户被授权可访问的信息资源,并返回给用户界面显示。
查询条件语句通过SQL语句进行集合查询,将大大提高系统运行的性能。
实施例2:
本实施例是实现在信息系统的多维信息权限,具体包括以下过程:
1、设置主要表信息:
InfoManageObject :存放信息管理对象配置,主要包含信息管理对象唯一标识id、名称、说明、全局、数据来源表、条件等信息、数据展现方式(树状、列表)。
MetadataInfoObjRel:存放元数据字段与信息管理对象关联关系,主要包含业务单据ID、表名、字段名、管理对象Id、附加条件(某些特殊情况的条件限制)
RoleInfoObjRights:存放角色信息管理对象授权数据,主要包含组织Id、角色Id、信息管理对象名、权限ID(组织管理对象则组织Id、操作员管理对象则操作员Id)
RoleUserRel:存放角色与用户的关联关系,主要包含组织Id、角色Id、用户Id
InfoObjRightsResult:存放用的信息权限结果表,操作员数量大时此表可以分表存储,主要包含组织Id、用户Id、权限ID、信息管理对象Id、业务单据Id。
2、设置信息管理对象启用
信息管理对象启用之后,在授权管理和与业务单据绑定,才可以选择到。这样减少了不可用信息的显示。其中可设置信息管理对象是否全局,一般在对管理对象进行抽象后已经确定管理对象的性质,比如预算项、知识类型则需要全局,像部门、业务员等信息则不能设置成全局。
3、业务单据字段与信息管理对象绑定设置。
在元数据管理中选择业务单据,选择业务单据的字段绑定信息管理对象。建立绑定后,信息管理对象的授权数据,才对业务单据的数据查询有影响。
4、信息管理对象的授权
授权可有多种授权方式,建议采用角色授权,并将角色赋予操作员这样使权限授权更加简单。选择角色,对不同组织的信息管理对象进行授权。选择信息管理对象,信息管理对象的数据展现方式按照设置的方式,比如树状、列表等。当信息管理对象是全局模式,则无需选择具体的组织过滤数据,授权全局的数据权限范围,在允许的查看数据组织中都共享。
5、修改功能菜单附带数据
登录系统后,创建的可操作菜单功能树,将业务功能树增加附加属性业务单据Id,打开菜单都需要传递业务单据ID。若没有绑定业务单据则默认为0,即此单据不支持数据权限过滤。
6、增加权限计算方法
通过登录的操作员ID、打开的业务单据ID获取到单据是否绑定信息管理对象,存在绑定则读取关联数据。传递给信息权限计算方法,系统获取到用户ID、信息关联对象,读取用户的角色授权信息,并将权限数据存入到结果表中。最后再通过绑定信息与计算结果表的关系生成符合当前使用数据库的查询语句。
7、系统方法拦截
系统对读取数据的方法拦截,服务端接收到读取数据请求时,通过业务单据Id判断是否有绑定信息管理对象,若存在绑定关系,则读取绑定的信息管理对象。通过信息管理对象,读取到当前操作员者授权数据范围。系统将生成绑定字段信息的查询条件,最后与请求的条件进行合并查询,得取我们需要的数据。
若没有系统没有采用AOP架构,则比较复杂。编写生成查询语句的帮助类,手工的需要控制的方法中获取条件进行拼接,在进行数据库查询获得需要的数据。
实施例3:
本实施例用于说明信息权限可垂直管控和水平管控,参考图3,列举了华东大区、分公司、办事处三层组织,组织下都有市场部部门。
纵向管控目标是在客户关系中,售前客户对任何一个组织都属性保密数据,都存在着上级可查看下级的售前客户数据。具体的实现方式是:
1.在信息权限设置中:系统管理员启动组织和业务员管理对象,再到元数据中选择售前客户业务单据,并设置组织字段绑定组织信息管理对象,业务员字段绑定业务信息管理对象。
2.在信息权限控制中:这样系统任何人有权限打开售前客户端的操作员,就受到组织和业务员两个数据权限维度的控制。当业务员本人登录系统,则默认只能查看属于本业务员的售前客户数据;当办事处管理人员登录系统,可按照系统管理员分配的业务员的集合查询到需要看到的售前数据;参考表一,分公司总经理可通过角色授予@本组织及以下组织,@全部业务员的数据权限,当分公司总经理登录,则通过组织关系树计算出登录组织及下级组织的范围和满足条件组织的全部业务员,即可看到授权内的售前客户数据。大区市场管理部跟分公司授权相同,即可看到所有分公司、办事处的全部售前客户。由于组织关系树的建立,分公司的数据则天然隔离,这样可实现数据权限的垂直管控。
表一 纵向管控关系表
当系统启动部门管理对象时:
东大区市场管理部经理授权信息为:东大区以下组织及部门,打开商机时,系统自动增加条件约束:
dept IN(SELECT orgid FROM fg_orglist WHERE parent_orgid = 东大区组织Id)
杭州分公司总经理授权信息为:杭州分公司以下组织及部门,打开商机时,系统自动增加条件约束:
dept IN(SELECT orgid FROM fg_orglist WHERE parent_orgid = 杭州分公司Id)
市场部1部部门主管授权信息为:杭州市场1部门,打开商机时,系统自动增加条件约束:
dept IN(SELECT orgid FROM fg_orglist WHERE parent_orgid = 杭州市场1部Id)
市场部操作员1授权信息为:未授权。打开商机时,系统自动增加条件约束:creator = 杭李四Id。
上示例在只启用部门管理对象,也就是纵向管控,通过部门的层级关系树从上到下将商机的数据按照不同用户的所属角色进行隔离和查看。
该示例的横向管控目标是:对于市场部门搞活动,则大区的市场部人员需要到分公司或者客户出差,那么报销显然不会将报销单提交到分公司报销,而是直接在本组织提交财务部门报销。横向管控的具体实现方式是:
1.在信息权限设置时:系统管理员启动组织、操作员、部门管理对象,再到元数据中选择报销单业务单据,并设置组织字段绑定组织信息管理对象、操作员字段绑定操作员信息管理对象、部门字段绑定部门信息管理对象。系统管理员对组织、操作员、部门进行数据授权。
2.在信息权限控制时:报销人员登录本组织后,默认查询自己的报销单,操作员在未授权时,默认范围时当前登录的操作员。参考表二,部门主管授权范围本组织、登录人员管理的部门、部门的全部员工,这样部门主管即可查看部门范围内的所有报销单据。财务主管授权范围可多组织,多部门、授权组织下的全部操作员,这样财务主管即可查看本组织、所有部门,以及其他组织部门中的报销单。这样的授权既实现垂直管控也实现水平管控。
表二 水平管控关系表
当系统启动部门管理对象时:
东大区财务经理授权信息为:东大区以下组织及部门、东大区财务部、东大区行政部,打开报销单时,系统自动增加条件约束:
dept IN(SELECT orgid FROM fg_orglist WHERE parent_orgid = 东大区组织Id UNION ALL SELECT deptid FROM fg3_limit_rights WHERE manageObj=‘Dept’ANDuserid = 东财刘一Id)
杭州分公司财务经理授权信息为:杭州分公司以下组织及部门、杭州市场1部、杭州市场2部、绍兴办事处,打开报销单时,系统自动增加条件约束:
dept IN(SELECT orgid FROM fg_orglist WHERE parent_orgid = 杭州分公司Id UNION ALL SELECT deptid FROM fg3_limit_rights WHERE manageObj=‘Dept’ANDuserid = 东财陈二Id)
市场部1部部门主管授权信息为:杭州市场1部门,打开报销单时,系统自动增加条件约束:
dept IN(SELECT orgid FROM fg_orglist WHERE parent_orgid = 杭州市场1部Id)
市场部操作员1授权信息为:未授权。打开报销单时,系统自动增加条件约束:creator = 东财李四Id。
上示例中财务部、市场管理部、行政部都是同级部门,但财务部同时授予市场管理、行政部门,因此即可查看平级部门:市场部门、行政部门所有的报销单。
在系统中抽取了部门、业务员、操作员、项目、文档(类别和密级)、供应商、客户等信息管理对象。当元数据业务类型绑定多一个信息管理对象,权限的控制维度也随之增加一个维度的过滤。比如:报销单增加操作员信息管理对象来满足一般财务人员不允许查询领导的报销单。
同时启用部门、操作员管理对象:
东大区财务经理授权信息为:部门授权信息东大区以下组织及部门、东大区财务部、东大区行政部;操作员授权信息为@全部,@全部为通配符,再打开单据前对当前信息管理对象授权的数据进行计算存放于物理表fg3_limit_rights中,打开报销单时,系统自动增加条件约束:
dept IN(SELECT orgid FROM fg_orglist WHERE parent_orgid = 东大区组织Id UNION ALL SELECT deptid FROM fg3_limit_rights WHERE manageObj=‘Dept’ANDuserid = 东财刘一Id)AND creator IN(SELECT creator fg3_limit_rights WHEREmanageObj=‘Operator’AND userid = 东财刘一Id);
东大区财务人员1授权信息为:部门授权信息东大区以下组织及部门、东大区财务部、东大区行政部;操作员授权信息为除领导外的所有操作员,打开报销单时,系统自动增加条件约束:
dept IN(SELECT orgid FROM fg_orglist WHERE parent_orgid = 东大区组织Id UNION ALL SELECT deptid FROM fg3_limit_rights WHERE manageObj=‘Dept’ANDuserid = 东财陈二Id)AND creator IN(SELECT creator fg3_limit_rights WHEREmanageObj=‘Operator’AND userid = 东财陈二Id)。
通过部门管理对象限制的条件和操作员限制的条件,两个受限维度过滤报销单的数据。
在日常的系统使用中,还有人员招聘、收文和发文等等,都需要灵活的设置权限,来满足客户的需求,提示了系统的可操作性、维护性,甚至满足多集团的数据权限控制。
Claims (7)
1.一种用于矩阵化管理的多维权限模型设计方法,其特征是,包括以下步骤:
A、系统管理员通过信息管理对象对用户或角色授予信息权限:
启用信息管理对象后,系统管理员对用户或角色进行信息访问权限授权,并将元数据字段与信息管理对象进行绑定;
在元数据中,定义信息资源的可访问范围,将信息资源的一个数据类型与信息管理对象绑定;
系统管理员在授权界面,对用户或角色的每个信息管理对象授予可访问的数据范围权限,通过设定信息管理对象值或条件来控制可访问资源的范围;
B、实际操作阶段对用户的信息权限控制:
用户登录系统后,通过功能权限控制用户请求访问一个信息资源;系统获取到信息资源与信息管理对象的绑定关系数据;再通过对应的信息管理对象,计算用户的信息管理对象范围数据,写入为用户分配好的计算结果表中;
利用信息资源与信息管理对象的绑定关系,获取信息资源的字段与信息管理对象生成结果表的数据结合,生成符合生产环境数据库的查询条件语句,并与查询方法的条件拼接,完成对数据范围的限制;
最后返回符合授权维度控制的信息资源,并在用户界面展示。
2.根据权利要求1所述的一种用于矩阵化管理的多维权限模型设计方法,其特征是,所述信息管理对象为数据访问的控制维度,包括用户、角色、部门、组织、集团、项目、操作员、客户、供应商、业务员、预算项、文档类型和文档密级。
3.根据权利要求1所述的一种用于矩阵化管理的多维权限模型设计方法,其特征是,所述信息管理对象设有一类为全局类型,所述全局类型不区分组织,在整个系统通用的,在授权和过滤数据范围时不受到组织维度的限制,即没有明确限定即视为全部有效。
4.根据权利要求1所述的一种用于矩阵化管理的多维权限模型设计方法,其特征是,所述系统管理员对信息管理对象授权时,每个信息管理对象设有值的范围和通配符。
5.根据权利要求1所述的一种用于矩阵化管理的多维权限模型设计方法,其特征是,所述步骤A具体包括多维信息权限设置过程:
S1.注册信息管理对象:定义需要控制的可访问数据的权限维度;
S2.授权信息管理对象可访问数据的信息资源:设置信息管理对象的可访问数据源,数据源将用于授权和权限解析时使用;
S3.存储信息资源与信息管理对象间的关系:绑定各资源数据类型与信息管理对象的关联关系;
S4.设置角色:在功能权限定义中,角色是一组对资源可操作功能权限的集合,在信息权限定义中,角色是一组权限范围内可访问的数据源;
S5.定义用户:定义所有可操作和运行系统的操作用户,包括用户标识符ID和用户名称;
S6.用户角色分配:将用户分配给一个或几个角色;当给角色分配了信息权限后,属于该角色的用户拥有所有该角色的信息权限;
S7.设置可访问的信息管理对象值:给用户或角色分配可访问的信息管理对象值。
6.根据权利要求5所述的一种用于矩阵化管理的多维权限模型设计方法,其特征是,所述步骤B具体包括多维信息权限控制过程:
S8.用户登录:用户通过用户标识符ID和用户名称登录到系统中,系统对用户进行统一身份验证;
S9.对信息资源的访问请求:用户请求对信息资源的访问;
S10.获取用户可访问资源的信息管理对象值:从用户可访问资源的信息管理对象值表格中获取授权数据;
S11.匹配信息资源与信息管理对象间的关系:计算信息管理对象授权数据后,存入预分配结果表中;并生成符合数据库查询的访问条件;
S12.返回用户可访问的信息资源:执行SQL执行语句,得到用户被授权可访问的信息资源,并返回给用户界面显示。
7.根据权利要求1所述的一种用于矩阵化管理的多维权限模型设计方法,其特征是,所述查询条件语句通过SQL语句进行集合查询。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011505863.6A CN112632492B (zh) | 2020-12-18 | 2020-12-18 | 一种用于矩阵化管理的多维权限模型设计方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011505863.6A CN112632492B (zh) | 2020-12-18 | 2020-12-18 | 一种用于矩阵化管理的多维权限模型设计方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112632492A CN112632492A (zh) | 2021-04-09 |
CN112632492B true CN112632492B (zh) | 2021-08-13 |
Family
ID=75317248
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011505863.6A Active CN112632492B (zh) | 2020-12-18 | 2020-12-18 | 一种用于矩阵化管理的多维权限模型设计方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112632492B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116186652B (zh) * | 2022-12-22 | 2024-01-02 | 博上(山东)网络科技有限公司 | 一种权限管理方法、系统、设备及可读存储介质 |
CN117273479A (zh) * | 2023-08-21 | 2023-12-22 | 杭州微宏科技有限公司 | 一种集团数据管理系统、方法和存储介质 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8887271B2 (en) * | 2009-06-15 | 2014-11-11 | Sap Se | Method and system for managing object level security using an object definition hierarchy |
CN102354356B (zh) * | 2011-09-29 | 2014-06-04 | 用友软件股份有限公司 | 数据权限管理装置和方法 |
CN104573430B (zh) * | 2013-10-21 | 2018-05-18 | 华为技术有限公司 | 一种数据访问权限控制方法及装置 |
CN103646218B (zh) * | 2013-12-12 | 2016-09-28 | 用友网络科技股份有限公司 | 数据访问权限和行为权限的定义装置和定义方法 |
CN107315931A (zh) * | 2017-07-05 | 2017-11-03 | 成都牵牛草信息技术有限公司 | 表单字段值操作权限授权方法 |
CN107506658A (zh) * | 2017-07-10 | 2017-12-22 | 上海最会保网络科技有限公司 | 一种用户权限管理系统及方法 |
CN109784016B (zh) * | 2018-12-29 | 2021-06-29 | 奇安信科技集团股份有限公司 | 一种权限管理方法、系统、电子设备和介质 |
CN110443010B (zh) * | 2019-07-22 | 2022-05-03 | 安徽智恒信科技股份有限公司 | 一种在信息系统中权限可视化配置控制方法、装置、终端及存储介质 |
CN111046354A (zh) * | 2019-11-05 | 2020-04-21 | 京东数字科技控股有限公司 | 一种访问和客户端访问管理方法、系统及介质 |
-
2020
- 2020-12-18 CN CN202011505863.6A patent/CN112632492B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN112632492A (zh) | 2021-04-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108694557B (zh) | 工作流及其审批节点的表单字段操作权限的设定方法 | |
Hu et al. | Assessment of access control systems | |
Chong et al. | Multi-tenant data architecture | |
EP2116954A1 (en) | Apparatus and method for accessing data in a multi-tenant database according to a trust hierarchy | |
US8306999B2 (en) | Computer-implemented systems, methods, and computer program product for providing row-level security in a database network | |
US6732100B1 (en) | Database access method and system for user role defined access | |
US20220215120A1 (en) | Providing a computational script into an input slot of a computational step of a data pipeline | |
US11356456B2 (en) | Multi-participant and cross-environment pipelines | |
US20120240194A1 (en) | Systems and Methods for Controlling Access to Electronic Data | |
CN112632492B (zh) | 一种用于矩阵化管理的多维权限模型设计方法 | |
US20020083059A1 (en) | Workflow access control | |
Kunz et al. | Attribute quality management for dynamic identity and access management | |
CN101453475A (zh) | 一种授权管理系统及方法 | |
EP3702954A1 (en) | Methods and systems for extending row-level security policies | |
US11044256B1 (en) | Classification management | |
Morgado et al. | A security model for access control in graph-oriented databases | |
CN111198878A (zh) | 一种基础信息调研系统及方法 | |
KR20200017514A (ko) | 제3자 필드를 통하여 폼 필드의 필드값에 대하여 권한을 부여하는 방법 | |
US20240340287A1 (en) | Systems and methods to store and manage entity verification information to reduce redundant entity information and redundant submission of requests | |
CN117633837A (zh) | 数据访问处理方法、装置、系统及存储介质 | |
US20140317008A1 (en) | Method and system for providing and controlling access to candidate information in collections of partner companies | |
JP2004303051A (ja) | データ管理方法、データ管理装置、情報処理装置、及び通信ネットワークシステム | |
CN110111067A (zh) | 一种多用户交互式网络服务平台及使用其的通信方法 | |
KR20010091899A (ko) | 네트워크 환경에의 액세스를 검증하기 위한 방법 및 시스템 | |
CN117195184A (zh) | 一种统一管理权限的方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CB03 | Change of inventor or designer information |
Inventor after: Feng Lixin Inventor after: Li Boming Inventor after: Shi Zhongshao Inventor before: Feng Lixin Inventor before: Li Boming |
|
CB03 | Change of inventor or designer information |