《软件开发中基于用户权限配置系统功能的方法.pdf》由会员分享,可在线阅读,更多相关《软件开发中基于用户权限配置系统功能的方法.pdf(12页珍藏版)》请在专利查询网上搜索。
1、10申请公布号CN104090770A43申请公布日20141008CN104090770A21申请号201410351010X22申请日20140722G06F9/4420060171申请人中国地质大学(北京)地址100083北京市海淀区学院路29号中国地质大学(北京)72发明人邢廷炎梁梅刘立74专利代理机构北京万象新悦知识产权代理事务所普通合伙11360代理人贾晓玲54发明名称软件开发中基于用户权限配置系统功能的方法57摘要本发明公布了一种软件开发中基于用户权限配置系统功能的方法,该方法包括将用户进行分类并确定用户对应的角色和权限;建立基于角色的权限访问控制模型;建立应用软件系统的功能子模。
2、块;建立模块权限的调用接口和方法;生成配置结果信息XML文件;解析上述配置结果信息XML文件,通过配置得到权限所对应的系统功能。本发明提供的技术方案通过用户权限来配置系统功能,使得开发出的软件实现用户根据自身业务需求或自身权限对系统数据进行访问和对系统功能进行操作,实现基于角色的个性化业务功能,从而提高数据访问的安全性和对软件系统使用与操作的效率。51INTCL权利要求书2页说明书7页附图2页19中华人民共和国国家知识产权局12发明专利申请权利要求书2页说明书7页附图2页10申请公布号CN104090770ACN104090770A1/2页21一种软件开发中基于用户权限配置系统功能的方法,其特。
3、征是,通过基于角色的权限访问控制模型建立用户与应用软件系统功能之间的关联关系,使得开发出的应用软件系统实现用户根据自身业务需求或自身权限对系统数据进行访问和对系统功能进行操作,包括如下步骤S1,获取用户在操作一应用软件系统的过程中对系统功能的需求信息,将用户进行分类,并确定用户对应的角色和权限;S2,确定步骤S1所述用户、角色和权限相互之间的关联关系,建立基于角色的权限访问控制模型;S3,建立应用软件系统的功能子模块;S4,确定各功能子模块与权限之间的关联关系,建立模块权限的调用接口和方法;S5,通过模块权限配置界面,为权限分配功能子模块,生成配置结果信息XML文件;S6,解析步骤S5所述配置。
4、结果信息XML文件,通过配置得到权限所对应的系统功能。2如权利要求1所述基于用户权限配置系统功能的方法,其特征是,步骤S1所述用户对应的角色根据用户的工作岗位来确定。3如权利要求1或2任一所述基于用户权限配置系统功能的方法,其特征是,所述用户对应的角色分为管理员、普通用户、调度员、操作工、检查员和领导。4如权利要求1所述基于用户权限配置系统功能的方法,其特征是,步骤S2所述用户、角色和权限相互之间的关联关系具体是用户与角色是多对一的关系;角色与权限是多对多的关系;用户与权限通过角色建立联系。5如权利要求1所述基于用户权限配置系统功能的方法,其特征是,步骤S2所述建立基于角色的权限访问控制模型具。
5、体包括建立用户信息表和角色信息表;再根据用户信息表和角色信息表,为角色分配权限,建立权限信息表。6如权利要求5所述基于用户权限配置系统功能的方法,其特征是,所述用户信息表的字段包括账号、密码、所属单位、用户姓名、用户描述、所属部门、角色代码和账号添加时间,所述账号为主键,角色代码为外键,用于关联角色信息表;角色信息表的字段包括角色代码、角色名称、角色描述、模块代码和URL,所述角色代码为角色信息表的主键;所述权限信息表的字段包括模块代码、模块名称和权限类型,用于表示角色对某一对象可操作的许可权。7如权利要求1所述基于用户权限配置系统功能的方法,其特征是,步骤S3所述功能子模块的类型包括功能操作。
6、模块和数据操作模块。8如权利要求1所述基于用户权限配置系统功能的方法,其特征是,步骤S4所述各功能子模块与权限之间的关联关系的确定具体包括如下过程S41,针对每一个功能子模块设定权限类型,所述权限类型包括模块入口权限、功能操作权限和数据操作权限,得到针对每一个功能子模块的一个或多个权限;S42,将功能子模块的每个权限分配给角色,再通过角色与用户进行关联。9如权利要求1所述基于用户权限配置系统功能的方法,其特征是,步骤S5所述模块权限配置界面包括模块入口权限配置板块、功能操作权限配置板块和数据操作权限配置板块。10如权利要求1所述基于用户权限配置系统功能的方法,其特征是,步骤S4所述模权利要求书。
7、CN104090770A2/2页3块权限的调用接口和方法是通过各功能子模块对应的类实现的;步骤S6所述配置是通过调用相应的模块权限的接口和方法进行的。权利要求书CN104090770A1/7页4软件开发中基于用户权限配置系统功能的方法技术领域0001本发明涉及计算机软件技术领域,具体涉及一种软件开发中基于用户权限配置系统功能的方法。背景技术0002随着管理系统的不断发展,多用户和多应用的业务要求不断增加,这样就要更进一步增加系统的安全性,以保证系统的数据和资源的安全使用,随着计算机技术的发展和信息时代的到来,借助计算机手段来解决上述问题成为可能。越来越多的企业开始意识到信息化管理带给企业的巨大。
8、效益,所以各种各样的软件系统在企业中得到了广泛的实施和应用,大大提高了企业日常办公的自动化程度。0003长期以来,由于多数软件系统都是针对某些用户的具体操作开发系统功能,现有开发方式通常根据业务逻辑和业务管理的分工,把用户进行分组或分类,将每一组类用户定义为一个应用系统的角色,然后针对每一个角色开发相应的程序功能,然而这种开发方式的缺点是当业务分工进行调整时,原有的程序功能不能满足用户的操作需求,必须对相应角色的程序功能进行相应的修改以适应业务分工的调整;并且,用户每次对功能的操作都需要从头开始来定位到自己需要的功能操作结果;而不同用户想要实现的功能不同,迫切希望快速定位到自己想要的结果,目前。
9、,多数软件系统的功能操作都固定不变,其用户操作效率不高,数据的访问也不安全,难以满足系统多用户的不同需求;软件系统开发技术需要解决不同权限的用户访问系统中不同数据和进行不同功能操作,以及在操作过程中效率低下和数据访问不安全的问题。发明内容0004为解决上述现有软件系统开发中存在的技术问题,本发明提供一种软件开发中基于用户权限配置系统功能的方法,通过用户权限来配置系统功能,使得开发出的软件实现用户根据自身业务需求或自身权限对系统数据进行访问和对系统功能进行操作,从而提高数据访问的安全性和对软件系统使用与操作的效率。0005本发明的技术方案是0006一种软件开发中基于用户权限配置系统功能的方法,该。
10、方法通过基于角色的权限访问控制模型建立用户与应用软件系统功能之间的关联关系,即通过用户权限来配置系统功能,从而使得开发出的软件实现用户根据自身业务需求或自身权限对系统数据进行访问和对系统功能进行操作,包括如下步骤0007S1,获取用户在操作一应用软件系统过程中对系统功能的需求信息,将用户进行分类并确定用户对应的角色和权限;0008S2,建立基于角色的权限访问控制模型;0009S3,建立应用软件系统的功能子模块;0010S4,确定各功能子模块与权限之间的关联关系,建立模块权限的调用接口和方说明书CN104090770A2/7页5法;0011S5,通过模块权限配置界面,为权限分配功能子模块,生成配。
11、置结果信息XML文件;0012S6,解析上述配置结果信息XML文件,通过配置得到权限所对应的系统功能。0013针对上述软件开发中基于用户权限配置系统功能的方法,本发明一实施例在步骤S1中确定用户对应的角色是依据工作岗位来确定的,角色分为管理员、普通用户、调度员、操作工、检查员和领导等。步骤S2中的基于角色的权限访问控制模型包括三种主体对象,三种主体对象为用户、角色和权限;模型的基本思想是将访问许可权与用户权限对应,并分配给一定的用户角色,用户通过不同的用户角色获得所拥有的访问许可权,即用户权限。建立基于角色的权限访问控制模型具体包括如下步骤0014S21,确定主体对象之间的关联关系,其关联关系。
12、具体为用户角色与用户之间是一对多的关系,用户与用户权限之间没有直接关系,只有通过角色才享有该角色所具有的用户权限,从而访问相应的功能子模块;0015S22,建立用户信息表和用户角色信息表;0016S23,根据用户信息表和用户角色信息表,为用户角色分配用户权限,建立用户权限信息表。0017在本发明一实施例中,建立基于用户角色的用户权限访问控制模型是首先确定三种主体对象之间的关系,即角色跟用户之间是一对多的关系,用户跟权限之间没有直接关系,用户角色与用户权限之间是多对多的关系,只有通过角色才享有该角色所具有的用户权限,从而访问相应的功能子模块,通过数据库中的主外键相关联以及角色作为桥梁来建立用户与。
13、用户权限之间的关系,建成基于用户角色的用户权限访问控制模型,其核心思想就是将权限与角色建立对应关系,使得某个角色拥有某些特定的权限,然后为用户分配其所适合的角色这样用户与访问权限就相关联起来,如某个业务对象客体设为O,某个用户设为U,与该用户对应的角色设为R,用户U对业务对象客体O具有的权限记为PU,O,通过用户U所赋予的角色R对业务对象O的用户权限记为PRRU,O,则有如下关系PU,OPRRU,O。0018依据需求分析和数据表设计原理与方法,定义用户、角色和权限,设计用户信息表、角色信息表和权限信息表,确定各表的字段名称、数据类型以及描述,设计各表的主外键,将相关表通过主外键相关联。在本发明。
14、一实施例中,用户信息表的字段包括账号、密码、所属单位、用户姓名、用户描述、所属部门、角色代码、账号添加时间等,其中账号为用户表的主键,用以标识唯一性,角色代码为外键,用以关联角色表。用户角色信息表的字段包括角色代码、角色名称、角色描述、模块代码、URL等,其中角色代码为角色信息表的主键,用以标识唯一性,模块代码为外键,用以关联权限信息表。用户权限信息表定义了用户角色对某一对象可操作的许可权,其字段包括模块代码、模块名称和权限类型等,其中模块代码为主键,同时作为角色信息表的外键将它们关联。0019步骤S3建立功能子模块具体是根据业务需求进行功能设计,确定系统包括的各系统功能子模块,其类型分为功能。
15、操作模块和数据操作模块,从而得到系统的功能子模块。例如,将一个业务应用软件系统划分为数据浏览、产品下载、后台管理等功能子模块,其中产品下载、后台管理等属于功能操作模块,数据浏览等属于数据操作模块。说明书CN104090770A3/7页60020步骤S4中,各功能子模块与用户权限之间的关联关系的确定具体包括如下过程首先根据应用软件系统的功能设定三种类型的用户权限,分别为模块入口权限、功能操作权限和数据操作权限;再针对每一个功能子模块设定其用户权限类型。具体是依据功能设计设定三种类型的用户权限,分别为模块入口权限、功能操作权限和数据操作权限。对应每一个功能子模块,其权限除均包括模块入口权限,还包括。
16、功能操作权限或数据操作权限。其中模块入口权限是控制用户能否进入到系统某个功能子模块,用户对系统某个功能子模块有两种状态,一种是能够进入,另一种就是不能够进入。功能操作权限是指用户进入到某一功能子模块后能够进行的具体操作,也包括两种状态能够进行操作和不能够进行操作。数据操作权限是指用户对某个对象能够进行相关的具体操作,如工作人员能够对基础数据进行浏览、修改或删除等。然后将每一个功能子模块的权限分配给角色,通过角色与用户进行关联。对应每一个功能子模块分配用户权限,包括模块入口权限、功能操作权限和数据操作权限数据操作的用户角色;例如,一个业务应用软件系统包括数据浏览、产品下载和后台管理等功能子模块,。
17、用户角色包括管理员、普通用户和领导,管理员分配有后台管理子模块的模块入口权限、功能操作权限和数据操作权限,领导分配有产品下载子模块的模块入口权限和功能操作权限,普通用户分配有数据浏览子模块的模块入口权限等。0021步骤S4中,模块权限的调用接口和方法的建立是通过建立各功能子模块对应的类来实现的,各功能子模块对应的类包括调用该功能子模块的接口和方法。在本发明一实施例中,根据系统功能模块设计有用户登录子模块以及各业务功能子模块,如数据浏览模块、产品下载模块和后台管理模块等,根据功能子模块设计相应的接口和方法,其目的是实现各子模块的调用,如用户登录子模块设有用户类、权限类和密码类等,通过编程语言和A。
18、DONET数据库连接技术来实现接口和方法,其各业务功能子模块的外部接口通过对用户权限信息表中的角色代码和用户角色信息表中的模块代码相关联,应用SQL语言得到执行结果。0022步骤S5中的模块权限配置界面包括三个板块,分别为模块入口权限配置板块、功能操作权限配置板块和数据操作权限配置板块,界面风格大方美观并易于操作。通过模块权限配置界面为用户权限分配功能子模块包括,为用户角色配置用户权限和为用户权限配置功能子模块,具体是首先通过模块权限配置界面来选择要分配用户权限的用户角色可进入的模块、可操作的功能和可操作的数据,再通过XML接口生成配置结果信息XML文件。0023步骤S6中的配置是通过调用相应。
19、的模块权限的接口和方法进行的,具体包括如下步骤0024S61,用户登录系统,调用密码类的接口,对用户输入的密码进行解密并与用户信息表进行匹配比较,若密码相同则可进入系统,调用用户类的接口获取用户信息表中的数据。0025S62,通过解析步骤S5生成的配置结果信息XML文件,用得到用户的角色代码来关联用户角色信息表中的数据,调用权限类的接口,与用户权限信息表中的角色代码和用户角色信息表中的模块代码进行关联,得到用户权限,从而获得该角色对应的特定的功能操作和数据操作等功能子模块。0026本发明的有益效果为0027发明提供一种软件开发中基于用户权限配置系统功能的方法,通过用户权限来配说明书CN1040。
20、90770A4/7页7置系统功能,从而使得开发出的软件实现用户根据自身业务需求或自身权限对系统数据进行访问和对系统功能进行操作,解决不同权限的用户数据安全访问以及高效操作系统功能的问题,实现系统用户依据自身所具有的权限对数据进行访问以及根据自己的业务需求对系统功能的高效操作,实现基于角色的个性化业务功能,从而提供工作效率和工作质量。附图说明0028图1是本发明一实施例的流程图;0029图2是本发明一实施例用户、角色与权限之间联系的示意图;0030图3是本发明一实施例中模块权限配置界面的截图;0031图4是本发明一实施例在一软件系统开发中应用本发明方法的流程图;具体实施方式0032下面结合附图和。
21、具体实施方式,对本发明进行进一步详细描述,但不以任何方式限制本发明的范围。0033本发明提供一种基于用户权限配置系统功能的软件开发方法,该方法通过用户权限来配置系统功能,从而使得开发出的软件实现用户根据自身业务需求或自身权限对系统数据进行访问和对系统功能进行操作,图1为本实施例中用户权限功能配置流程图,包括如下步骤0034S1,将用户进行分类,确定用户角色,包括0035通过对业务系统的需求分析,了解系统记录和查询人员的主要信息,以及部门和岗位等人员信息。根据不同职能分布在不同部门的信息,从岗位的角度来对用户进行分类,依据不同工作岗位性质确定用户角色,可分为管理员、普通用户、调度员、领导等角色。。
22、其中,管理员主要是管理系统后台,维护与更新数据库,对用户进行权限分配等操作,普通用户在权限范围内进行数据的查询、产品的浏览与下载等操作,调度人员在权限范围内进行项目的跟进,分配等操作,领导具有最高权限,可进入系统任意模块,进行功能模块操作,浏览和下载最高密级程度的数据、产品等。0036S2,为用户角色分配用户权限,建立基于角色的权限访问控制模型0037在确定用户角色后,设计用户信息表和角色信息表,作为S2中为用户角色分配用户权限的基础,最终建立基于角色的权限访问控制模型,具体包括如下步骤0038S21,基于角色的权限访问控制模型的基本思想是将访问许可权分配给一定的角色,用户通过饰演不同的角色获。
23、得角色所拥有的访问许可权。首先确定三种主体对象,即用户、角色、权限,并确定三种对象的关联以及它们之间的关系的定义,其中用户与角色是多对一的关系,通过用户账号关联用户表和角色表,角色与权限之间呈现多对多关系,用户与权限之间的联系通过角色来实现,这样就建立基于角色的权限访问控制模型,权限的访问通过角色来控制。图2是本实施例中用户、角色与权限之间联系的示意图。0039S22,依据需求分析和数据表设计原理与方法,定义用户、角色和权限,设计用户信息表、角色信息表以及权限信息表,确定各表的字段名称、数据类型以及描述,设计各表的主外键,将相关表通过主外键相关联。例如可设计用户信息表字段包括账号、密码、所属单。
24、位、用户姓名、用户描述、所属部门、角色代码、账号添加时间等,其中账号为用户表的主键,说明书CN104090770A5/7页8用以标识唯一性,角色代码为外键,用以关联角色表。角色信息表字段包括角色代码、角色名称、角色描述、模块代码、URL等,其中角色代码为角色表的主键,用以标识唯一性。权限是对某一数据对象可操作的权利,字段包括角色代码、模块名称和控件类型等。0040S23,确定三种对象之间的关系,构建基于角色的权限访问控制模型,即角色跟用户之间是一对多的关系;用户跟权限之间没有直接关系,通过主外键相关联以及角色作为桥梁来建立用户与权限之间的关系,建成基于角色的权限访问控制模型,如某个用户U对某个。
25、业务对象O具有的权限记为PU,O,则有如下关系PU,OPRRU,O,其中,PRRU,O是通过用户U所赋予的角色R对业务对象O的权限。0041S3,建立功能子模块,确定各功能子模块与用户权限之间的关联关系,具体包括如下步骤0042S31,根据业务需求进行功能设计,确定业务系统各子系统功能模块、具体操作模块以及数据操作模块,得到系统功能模块结构图。0043S32,依据功能设计确定三种权限定义,分别为模块入口权限、功能操作权限、数据操作权限。其中模块入口权限是控制用户能否进入到系统某个功能模块,用户对系统某个功能模块有两种状态,一种是能够进入,另一种就是不能够进入。功能操作权限是指用户进入到某一功能。
26、模块后能够进行的某些具体操作,也包括两种状态能够进行操作和不能够进行操作。数据操作权限是指用户对某个对象能够进行相关的操作,如工作人员能够对基础数据进行浏览、修改或删除等。0044S33,建立各功能子模块与用户权限之间的关联关系,具体包括针对业务系统功能设计,通过编程语言实现各功能模块,给每一个功能模块分配一个能够修改数据的角色,如将一个业务系统划分为数据浏览、产品下载、后台管理等功能模块,给管理员分配能够进入后台管理模块的权限,领导能够进入产品下载模块的权限,普通用户能够进入数据浏览模块的权限。0045S34,设计相应功能模块的类,提供可实现功能模块的接口和方法,如系统根据功能模块设计用户类。
27、、权限类、密码类等,用于实现用户、角色、权限三种对象的关联,其中用户类的外部接口通过用户信息表里用户账号实现关联,输出用户表信息,权限类外部接口通过角色代码和模块代码相关联,实现角色具有操作功能模块权限,密码类外部接口通过接收外部输入密码,实现对其进行判断是否符合要求。0046S4,通过模块权限配置界面,为用户权限分配功能子模块,生成配置结果信息XML文件,具体包括如下步骤0047S41,依据软件设计思想和界面设计原则,并结合业务功能,设计开发系统模块权限配置界面,界面包括模块入口权限配置、功能操作权限以及数据操作权限三大板块,界面设计风格大方美观、易于操作,图3是本实施例中模块权限配置界面的。
28、截图。0048S42,在模块权限配置界面,为角色进行权限配置,即通过选择要分配权限的角色,分配可进入的模块、可操作的功能以及操作的数据,通过XML接口生成配置结果信息XML文件。本实施例中,权限配置结果信息XML文件为0049说明书CN104090770A6/7页900500051S5,解析配置结果信息XML文件,调用模块权限相对应的接口和方法,通过编程实现用户功能权限配置,具体包括如下步骤0052S51,用户登录系统,调用密码类和接口,对输入的密码进行解密并与用户信息表进行匹配比较,若密码相同则可进入系统,调用用户类和接口获取用户信息表里的数据。0053S52,解析XML文件,通过角色代码来。
29、关联角色表信息,调用权限类和接口,与角色代码、模块代码实现相关联,实现角色特定的功能操作和数据操作等。0054本实施例利用本发明提供的基于用户权限配置系统功能的方法开发出业务应用说明书CN104090770A7/7页10软件系统,使用该软件系统的流程如图4所示,包括如下过程0055用户通过输入密码登录系统调用密码类对输入的密码进行解密并与用户信息表进行匹配比较,若密码相同则可进入系统,调用用户类的接口获取用户信息表里的数据,通过SQL语句得到角色和权限的信息,解析XML文件,通过角色代码来关联角色表信息,调用权限类的接口,与角色代码、模块代码实现相关联,获得角色特定的功能操作和数据操作。说明书CN104090770A101/2页11图1图2图3说明书附图CN104090770A112/2页12图4说明书附图CN104090770A12。