您的位置:网站首页 > CAD新闻

产品数据管理系统的权限控制研究

时间:2011-02-26 19:30:57 来源:

本文以在企业的PDM(Product Data Management,产品数据管理)系统实施为背景,分析了用户权限控制对象及其相互关系,对PDM项目实施过程中用户的数据访问权限控制进行了研究。

1、权限控制对象

PDM系统的权限控制是根据用户身份的不同,对处于不同存储位置和状态的数据,为系统用户分配相应的操作权限。因此,用户、产品数据、数据状态、数据位置以及用户对数据的操作构成了权限控制机制中的基本对象。

1.1用户

PDM系统用户存在于两种人员组织结构中,如图1。

一种是由企业各业务部门组成的相对固定的部门机构,不同部门具有不同的岗位和职责,部门内的人员也相对固定,这种属于静态的组织结构。在静态组织结构中,人员分属于各个业务部门,各部门按其职能和岗位的不同,确定所属人员的职责和权限。由于各部门人员相对固定,基于静态组织结构的人员权限比较容易确定,我们依据业务部门划分情况引入用户组的概念,用户组由工作职责和工作性质相同的多个用户所组成,同一用户组中的用户具有相同的职责和权限。一个用户若同时参加多个用户组,其权限可以叠加。

newmaker.com
图1

另一种人员组织结构是基于产品的型号项目成立的项目组或开发团队,项目组成员的工作性质涉及设计、工艺、制造、质量、销售等部门,有时还包括协作单位的成员,项目组或开发团队根据项目的启动而成立,伴随项目的结束而解散,这种属于动态的组织结构。在动态组织结构中,人员的职责和权限相对复杂灵活,我们引入角色的概念对人员的职责和权限进行描述。角色是在项目中根据职责不同划分的一些岗位,如设计师,工艺师,质量师等。动态组织结构的成员来自多个部门,不同成员可以在项目中担任相同的角色,同一成员也可以在不同的项目中担任不同的角色,该成员在不同项目中拥有的权限由其担任的角色决定。

1.2产品数据

PDM系统管理的是与产品相关的各种数据,如工程图档、与产品相关的文档、产品结构等。针对不同类型的产品数据,用户对其访问的控制权限也会不同。例如,对普通零件图与产品总装图的访问权限是不同的,对项目中的设计文档与合同书的访问权限也是不一样的。

1.3数据状态

数据在产品生命周期的不同阶段对应不同的状态,如数据的编制中、审批中、打印中、发布等状态。用户对数据的访问权限随数据状态的不同而变化。例如,当数据处于编制状态时,创建者对其拥有所有的操作权限,当数据被提交进入流程后,处于校核中,审批中等状态时,创建者对其修改、删除的权限将受到限制。

1.4数据位置

数据位置是指PDM系统管理的各类数据的存储位置。数据按其所有者和所处状态的不同,分别有不同的存储位置,存储位置不同,对数据的操作权限也不相同。我们在系统中建立个人工作区、共享数据仓库和归档数据仓库作为不同状态数据的存储位置。

处于编制、设计和修改过程中的产品数据存放在个人工作区。个人工作区属于用户的私有空间,一般位于用户本机,存放用户个人拥有的数据。用户对自己个人工作区的数据拥有所有权,其他用户未经授权不能进行访问。

共享数据仓库用于存放企业用户共享的未正式发布的产品数据,处于校对、审核、批准流程中或工艺会签、标准化审查阶段等不同状态的产品数据都存放在共享数据仓库中。共享数据仓库内存放有企业不同项目的产品数据,为保证数据的安全性,当用户对共享数据仓库中的产品数据进行操作时,系统会对其进行权限验证。

处于批准后发布状态或更改完成状态的产品数据存放在归档数据仓库。归档数据仓库是企业中正式发布的产品数据最终归档存储位置,如经过审批用于指导生产的图档、设计文件、工艺文件及相关的标准、规范等。归档数据仓库具有比共享数据仓库更加严格的数据管理权限,访问归档数据仓库的用户需要经过相应的授权。

1.5用户操作

操作是指用户对产品数据进行的查询、浏览、删除、复制等动作,不同的操作对数据产生的影响是不同的。因此,PDM系统对用户进行各种操作的控制权限也不相同,为方便数据共享,提高产品的研发效率,对于查询、浏览权限的控制会相对较松;从保护企业知识财富的角度考虑,对于复制、删除权限的控制会比较严格。

1.6权限控制对象相互关系

权限控制对象是相互关联,互相影响的。一个数据可以对应多个存储位置和数据状态;数据在不同的存储位置和数据状态会被用户进行不同的操作;一个用户可以被放在不同的用户组,担当多个角色,对多种数据进行不同的操作;一个角色也可以对应多个用户;不同的操作组合形成不同的角色。

综上所述,各对象不是相互独立的,权限控制的设计必须充分考虑所有对象,合理协调其相互关系,对用户、产品数据、数据位置、数据状态进行综合控制。即通过权限设置可以控制用户在一定的条件下对指定的产品数据进行特定的操作。

2、权限控制体系

PDM系统中权限控制有多种设置方式,依据对权限控制对象的分析,提出一种由消息发送规则、访问控制列表、流程权限、动态授权等构成,多层次、静态与动态相结合的数据访问权限控制体系,如图2所示。

newmaker.com
图2 数据访问权限控制体系

2.1消息发送规则

消息发送规则是基于规则的权限授予方式,我们依据企业的业务清况,综合考虑用户所在部门(用户组)、用户在项目中被赋予的角色、数据的类型、数据存储位置和数据状态等因素,利用消息发送规则控制用户对产品数据进行操作的权限。消息发送规则由参与者、对象、条件、消息(消息组)四个要素构成,分别表示用户、产品数据、数据所处的位置或状态、用户对数据的操作。通过设定消息发送规则,可以实现用户在规定的条件下对数据进行合法操作的功能。

2.2访问控制列表

访问控制列表是对消息发送规则权限授予方式的补充,访问控制列表可以超越消息发送规则的限制,针对某个具体数据对象进行权限设置,也可通过访问控制列表设置的排除权限列表覆盖规则权限,限制规则权限高的用户对特定对象的操作权限。

2.3流程权限

流程权限是指流程参与者根据所执行任务类型的不同,具有相对应的对流程对象进行操作的权限,流程节点到达时,流程任务执行者可以对流程对象进行规定的操作,当流程通过这个节点后,该用户不再拥有对流程对象进行操作的权限。

对一些重要的或安全性高的流程节点,我们在该节点的操作开始前设置操作密码验证,防止因误操作或非法用户进入流程而导致数据损失。

2.4动态授权

动态授权由具有授权权限的用户在一些特殊情况下,针对某个具体的数据对象为没有操作权限的用户授权,并且可以灵活设定授权的有效时限,到截止日期时,系统会自动收回对该用户的授权权限。PDM系统具有这种动态授权的功能后,需要授权的用户可以将此对象提交到动态授权流程内,动态授权流程根据对象所处的状态、位置以及创建者将此申请传递给拥有授权权限的用户,由该用户决定是否授权,并将结果通知给申请授权者。

2.5访问监控

为保证产品数据安全,我们在系统中设置了访问监控机制,用户对一些重要数据进行的所有操作都会通过事件通知规则(NTR)被监控。事件通知规则由参与者、对象、条件、发生事件四个要素构成,用来确定当系统中特定事件发生时谁将得到通知,如有人浏览了产品总图,项目总师会得到通知。

3、结束语

本文在研究了权限控制对象的基础上,提出了出一种多层次、动静结合的数据访问权限控制体系,在某大型企业实施后,实现了系统内用户访问产品数据的权限控制。伴随着异地协同技术的兴起,我们进一步需要研究的是异地数据访问安全及权限控制体系问题。