一种研发设计资源的访问授权方法及系统

文档序号:7931 发布日期:2021-09-17 浏览:89次 英文

一种研发设计资源的访问授权方法及系统

技术领域

本发明涉及一种研发设计资源的访问授权方法及系统,属于资源共享

技术领域

背景技术

传统的资源授权访问控制场景,通常是基于用户、资源、角色等构建授权机制,实现对具有相似属性的一组或相同类型资源进行授权,其不足是没有考虑用户所处研发设计任务的不同阶段所需资源、任务、角色等的动态变化特性,导致授权速度缓慢、授权不够及时。

研发设计过程通常进行异地协同设计,以大量的资源作为支撑,因此需要实现资源的快速授权,使用户能够及时得到所需资源。在授权模型中引入项目流程,不同的流程阶段对应不同的任务,不同的任务关联着不同的用户角色和资源。实际上,在同一任务中,不同的用户角色可以访问不同的资源。因此,需要在每个任务中对不同的用户角色赋予不同的资源访问权限,同时在每个任务节点处对用户的权限进行回收再分配,从而实现快速授权、动态访问,有利于资源的合理高效利用。

发明内容

本发明的目的在于针对传统资源访问授权存在的静态性、授权不及时和授权过程缓慢的技术问题,提出了一种研发设计资源的访问授权方法及系统。

为了达到上述目的,本发明采取如下技术方案:

所述研发设计资源访问授权方法及系统,包括:一种研发设计资源的访问授权方法及该访问授权方法依托的访问授权系统;所述访问授权系统包括:动态决策模块、任务监控模块、动态感知模块、用户角色库模块、资源库模块、用户信息库模块、权限及策略管理模块、虚拟管理员模块;

任务监控模块分别与用户角色库模块、资源库模块、用户信息库模块以及动态感知模块相连,动态决策模块分别与用户角色库模块、资源库模块以及用户信息库模块相连;权限及策略管理模块与动态决策模块、动态感知模块以及虚拟管理员模块相连,更进一步地:动态决策模块接收资源访问请求以及用户角色库模块、资源库模块、用户信息库模块以及权限及策略管理模块的信息,输出动态访问决策结果;动态感知模块接收任务监控模块发送来的命令,输出信息给权限及策略管理模块以及虚拟管理员模块;虚拟管理员模块接收权限及策略管理模块、动态感知模块传递的信息,输出信息给权限及策略管理模块;用户角色库模块、资源库模块、用户信息库模块接收任务监控模块传递的信息,输出信息给动态决策模块;

所述访问授权系统中各模块的信息流动关系如下:

动态决策模块首先获取并解析资源访问请求,获取用户角色库模块、资源库模块、用户信息库模块提供的信息,依据权限及策略管理模块提供的授权策略做出动态访问决策结果并返回给用户;在当前任务结束后下一任务开始前,任务监控模块将任务变动的命令传递给用户角色库模块、资源库模块、用户信息库模块以及动态感知模块,动态感知模块将用户角色、资源、用户信息变动情况传递给权限及策略管理模块、虚拟管理员模块,虚拟管理员模块将用户角色权限模型传递给权限及策略管理模块,权限及策略管理模块将计算得到的新授权策略传递给动态决策模块以及虚拟管理员模块;

所述访问授权系统中各模块的功能如下:

所述动态决策模块用于获取并解析任意一个发起资源访问请求的用户所发送的资源访问请求。其中,所述资源访问请求包括所述用户信息,当前任务信息以及被访问资源的资源信息;所述动态决策模块还用于:基于所述用户信息、所述当前任务信息、所述资源信息,判断所述用户是否具有访问所述资源的权限,以及响应于所述用户具有访问所述资源的权限,允许所述用户访问所述资源;

当对资源进行授权时,首先构建用户角色树、资源类型关系树,由此使得授权过程存在隐含授权,隐含授权包括用户角色权限的继承和通过资源类型之间包含关系、推导出的衍生权限。在流程节点处设置虚拟管理员,虚拟管理员结合相邻任务的节点信息,计算出用户角色权限模型,传递给下一任务节点处的虚拟管理员,由此实现用户资源访问权限在相邻任务中的打包传递;

所述任务监控模块,用于监控项目的流程节点,并将任务的变动信息传递给动态感知模块。

所述动态感知模块,用于感知当前任务中用户角色、资源实例的变化;所述动态感知模块包括:用户角色感知模块,用于感知当前任务中用户角色类型与上一任务中的不同;资源实例感知模块,用于感知当前任务中资源实例的变化及各个资源实例间的组织关系;通常而言,资源类型不会随任务发生大的变化。

所述用户信息库模块,用于存储用户信息,包括用户的唯一标识、用户名、职位、所属部门以及用户对应的用户角色;

所述用户角色库模块,用于存储预设用户角色信息,即提供用户角色信息及存储服务,预设用户角色信息即表明当前任务中有哪些用户角色可以访问资源。用户角色库由权限策略中进行授权引用;

所述资源库模块,用于存储预设资源信息,预设资源实例信息表明当前任务中具体访问的资源;

其中,资源是对外提供服务的实体,按照资源粒度和资源类型对被访问资源进行层级划分;每一资源信息采用唯一标识索引,权限中心可对资源库进行授权引用;

所述权限及策略管理模块,用于制定授权策略;所述权限及策略管理模块包括:用户角色管理模块,用于根据所述用户信息制定用户角色;资源角色管理模块,用于根据所述被访问资源的资源信息制定资源角色;授权策略管理模块,用于对所述用户角色、所述资源角色及所述任务信息进行关联计算,得到关联计算结果作为所述授权策略;

所述虚拟管理员管理模块,用于管理任务节点上的虚拟管理员及其权限,虚拟管理员的权限是给当前任务中的用户角色分配权限以及收回上一任务中用户角色的权限;

此外,当上一任务中的用户角色在下一任务中仍存在且其可访问的资源仍存在,则将上一任务中的管理员的对该用户角色分配权限的权限传递给下一任务;在当前任务中,管理员需将所有资源分配给新增用户角色,将新增资源分配给所有用户角色;

所述访问授权方法,包括如下步骤:

步骤1、动态决策模块在任务执行过程中,获取并解析用户发送的资源访问请求,所述资源请求包括用户角色信息、任务节点信息和所述被访问资源的信息;

步骤2、权限及策略管理模块基于任务驱动的资源访问控制模型制定授权策略,传递给动态决策模块;

步骤3、动态决策模块分别接收用户角色库模块、资源库模块、用户信息库模块传递的信息,依据权限及策略管理模块传递的授权策略进行计算,响应所述用户具有访问所述资源的权限,允许所述用户访问所述资源;

步骤4、在当前任务结束后下一任务开始前,任务监控模块分别传递任务变动信息给用户角色库模块、资源库模块、用户信息库模块、动态感知模块;

步骤5、动态感知模块将用户角色、资源内容变化信息分别传递给权限及策略管理模块、虚拟管理员模块,虚拟管理员模块对当前任务中的用户的权限进行回收与发放,计算得到用户角色权限模型并传递给权限及策略管理模块,权限及策略管理模块基于虚拟管理员权限继承模型更新授权策略。

有益效果

本发明提供一种研发设计资源的访问授权方法及系统,与现有其他资源的访问授权方法及系统相比,具有如下有益效果:

1.所述方法及系统通过识别访问用户、被访问资源、权限策略,结合任务流程推进,资源、用户角色多类属性,将资源与任务流程、角色与任务流程进行动态绑定;

2.所述方法及系统在对资源授权时,依据项目流程划分将资源、用户分别划分为单个小范围进行授权;

3.所述方法及系统在相邻任务中,依据任务节点信息,对部分用户的部分资源访问权限进行打包继承,将部分权限从一个小区域传递到相邻的另一个小区域,这样就实现了动态、细粒度、快速的资源访问授权过程。

附图说明

图1为本发明所述实施例中的任务2的角色树和资源类型关系树示例图;

图2为本发明所述实施例中的任务3的角色树和资源类型关系树示例图;

图3为本发明所述研发设计资源的访问授权系统的模块间信息流动图。

具体实施方式

下面结合附图及实施例对本发明一种研发设计资源的访问授权方法及系统的具体实施作进一步的说明。

实施例1

本实施例详细阐述了一种研发设计资源的访问授权方法及系统在正常工作情况下具体实施时的输入输出情况。

将某航空发动机协同仿真过程按照流程节点的时间顺序划分为任务1分析任务需求、任务2制定技术方案、任务3协同仿真计算过程、任务4实验结果分析。在任务2中,参与研发设计的预设用户角色如图1所示,包括用户角色R111项目总负责人、用户角色R112项目经理、用户角色R113总设计师、用户角色R121设计师,预设资源类型如图1所示,包括资源类型T111需求分析类、资源类型T112航空发动机设计方案类、资源类型T121航空发动机模型类、资源类型T122航空发动机设计相关专利,预设用户包括用户u111张XX、用户 u112郑XX、用户u113王XX、用户u121赵XX,用户u122李XX,用户u123钱XX,分别对应用户角色R111、R112、R113、R121,其中R121包括用户u121、u122、u123,预设被访问资源包括资源r111、资源r112、资源r121、资源r122,分别对应资源类型T111、T112、 T121、T122。

访问权限规则如下:用户角色R111能够访问资源类型T111,用户角色R112能够访问资源类型T112,用户角色R113能够访问资源类型T122,用户角色R121能够访问资源T122。上述权限规则可记作:(1)R111→T111(r111);(2)R112→T112(r112);(3)R113→T122(r122); (4)R121→T121(r121)。此时,对于各用户可访问资源范围为:RA(u111)={r111,r112,r121,r122}; RA(u112)={r112,r121,r122};RA(u113)={r121,r122};RA(u121)={r121};RA(u122) ={r121};RA(u123)={r121}。

对于任务3协同仿真计算过程,参与研发设计任务的预设用户角色如图2所示,包括用户角色R211总设计师、R221热力学仿真分析设计师、R222流体力学仿真分析设计师、R231 热力学仿真分析设计师助理、R232流体力学仿真分析设计师助理;预设资源类型如图2所示,包括资源类型T211技术方案类、资源类型T212软件类、资源类型T221自研软件model1、资源类型T222商业软件ANSYS Fluent;预设用户包括用户u211王XX,与任务2同一个人、用户u221赵XX,与任务2同一个人用户u222李XX,与任务2同一个人)、用户u231周 XX、用户u232吴XX、用户u223曹XX,分别对应用户角色R211u211、用户角色R221包括用户u221、u222、u223;预设被访问资源包括资源r211,与任务2相同、资源r212、资源 r221、资源r222,分别对应资源类型T211、T212、T221、T222。据此构建新的角色树和资源类树,如图2所示。

访问权限规则如下:用户角色R211可访问资源类型212,用户角色R231能够访问资源类型T221,用户角色R232可访问资源类型T222。上述权限规则可记作:(1);(2);(3)。根据隐含权限策略,结合任务2中的用户角色权限模型可得到各用户的资源访问范围如下: RA(u211)={r211,r212,r221,r222};RA(u221)={r211,r212,r221};RA(u222)={r211,r212, r222};RA(u231)={r221};RA(u232)={r221};RA(u233)={r222}。

如图3所示,任务监控模块02分别与虚拟管理员模块08以及动态感知模块01相连,任务监控模块02分别与用户角色库模块04、资源库模块05、用户信息库模块06以及动态感知模块03相连,动态决策模块01分别与用户角色库模块04、资源库模块05以及用户信息库模块06相连;权限及策略管理模块07与动态决策模块01、动态感知模块03以及虚拟管理员模块08相连,更进一步地:动态决策模块01接收资源访问请求以及用户角色库模块04、资源库模块05、用户信息库模块06以及权限及策略管理模块07的信息,输出动态访问决策结果;动态感知模块03接收任务监控模块02发送来的命令,输出信息给权限及策略管理模块07以及虚拟管理员模块08;虚拟管理员模块08接收权限及策略管理模块07、动态感知模块03传递的信息,输出信息给权限及策略管理模块07;用户角色库模块04、资源库模块05、用户信息库模块06接收任务监控模块02传递的信息,输出信息给动态决策模块01。

具体地,在用户角色库模块04中存储某航空发动机协同仿真过程中所涉及到的用户角色信息,包括角色名称、角色ID、可参与任务ID、角色描述等。在资源库模块05存储某航空发动机协同仿真过程中所涉及到的资源实例信息和资源类型信息,其中资源类型信息包括资源类型名称、资源ID,资源实例信息包括资源名称、资源ID、资源类型、父级资源ID、子级资源ID、可参与任务ID等。在用户信息库模块06存储某航空发动机协同仿真过程中所涉及到的用户信息,包括用户名、用户ID、角色ID、当前参与任务ID等。在任务监控模块02 存储某航空发动机协同仿真过程按照流程节点的时间顺序划分的任务信息,包括任务名称、任务ID、任务开始时间、任务结束时间、可参与任务角色ID、可参与任务资源类型ID。将项目依据流程节点的时间顺序划分为多个任务,通过对角色、任务、资源类型的属性设置,将他们分别进行动态绑定。

在任务2执行期间内,动态决策模块01获取并解析用户提出的资源访问请求,包括该用户拥有的角色信息、用户当前参与的任务信息和该用户申请访问的资源信息。权限及策略管理模块07依据任务2的权限规则制定相应的授权策略,并传递给动态决策模块01,此时的授权是仅针对与任务2相关的资源和角色。动态决策模块01分别接收用户角色库模块04、资源库模块05、用户信息库模块06传递的信息,再依据权限及策略管理模块07传递的授权策略进行计算,响应该用户是否具有访问该资源的权限,做出允许或拒绝访问应答。例如,用户u113提交访问资源r121的请求,系统做出允许访问的应答;用户u113提交访问资源r111 的请求,系统做出拒绝访问的应答。

在任务2结束后,任务3开始前,任务监控模块02分别传递任务变动信息给用户角色库模块04、资源库模块05、用户信息库模块06、动态感知模块03。动态感知模块03将用户角色、资源内容变化信息分别传递给权限管理模块07和虚拟管理员模块08。此时虚拟管理员模块08会根据角色和资源类型的变动信息给任务3中的用户角色分配权限以及收回任务2中用户角色的权限。当任务2中的用户角色在任务3中仍存在且其可访问的资源类型仍存在,则将任务2中该用户角色的权限的期限延长到任务3期间。在任务3中,虚拟管理员需将所有资源按类型分配给新增用户角色,将新增资源按类型分配给所有用户角色。虚拟管理员模块08计算得到用户角色权限模型传递给权限及策略管理模块07,权限及策略管理模块07更新此时的授权策略,并传递给动态决策模块01。在任务2到任务3的过程中,依据任务关联的资源、用户角色信息,对部分用户的部分资源访问权限进行打包继承,将部分权限从任务 2延长到任务3,减少了授权的次数。

以上所述的具体描述或实施例,对发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

完整详细技术资料下载
上一篇:石墨接头机器人自动装卡簧、装栓机
下一篇:一种基于腔体式光折变晶体PUF的身份验证系统

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类