社交云服务系统中应用的访问控制方法

文档序号:7801896阅读:196来源:国知局
社交云服务系统中应用的访问控制方法
【专利摘要】本发明提出一种社交云服务系统中应用的访问控制方法。其中,所述方法包括:S1,根据多个应用的关联性将多个应用划分为多个应用分组;S2,获取每个应用分组中应用的角色,并根据应用的角色生成角色分组,其中,角色分组和多个应用分组中至少一个应用分组相关联;S3,获取角色分组中角色的角色类型、上级角色和角色属性,并根据角色类型、上级角色和角色属性采用集中授权和/或分级授权的方式对用户的应用进行授权。本发明实施例方法,支持用户在使用应用协同的过程中的沟通、交流和协作,使得用户在业务应用中的角色的描述信息能够按照规则的配置成为社交域中的用户认证信息的有效来源。
【专利说明】社交云服务系统中应用的访问控制方法
【技术领域】
[0001]本发明涉及云服务系统,尤其涉及一种社交云服务系统中应用的访问控制方法。【背景技术】
[0002]基于角色的访问控制是在应用软件系统中广泛采用的一种访问控制方法,该方法使用角色来描述一组相关的应用,将角色作为关联用户和应用的中介,从而简化对用户进行应用授权的过程。由于基于角色的访问控制要求授权过程集中完成,因此随着大型组织中业务应用规模的不断增长和非流程类业务应用的增加,由单个管理员集中完成所有应用的用户授权的难度越来越大。
[0003]社交云服务系统是基于网络为多个用户群体同时提供交流协作支持的垂直云服务系统,它为不同群体提供完全相互独立的网络交流协作空间,例如,如图1所示。每个独立的网络交流协作空间称为一个社交域,每个社交域由用户、群组、关系和应用共四部分组成,并拥有独立的访问地址、用户界面、用户空间、应用空间和数据空间。多个相互独立的社交域可以为每个用户提供多个独立的网络交流协作空间,使网络空间中的社交环境与现实中的社交环境更加接近,从而能够避免公共的网络空间中的社交环境中存在的由单一的社交空间而引起的用户社交域混合的问题。
[0004]在组织中,社交域以人为线索将组织内部的各种信息、业务流程、人和群体组织起来,既可以为组织成员提供交流和协作的服务,又可以作为组织内部不同方面应用的入口,最终成为组织内部的社交门户。以社交门户为入口的各个方面的应用通常采用基于角色的访问控制方法或者其他扩展的基于角色的访问控制模型,不同方面的应用通常会使用不同的角色模型,而且它们的具体授权方式也会有因业务的规模、管理方式和业务流程等存在差异。对于流程性较强、业务规模较小的应用,采用基于角色的访问控制方法即可。对于流程性较强、业务规模较大的应用,用户角色的划分比较细致,其访问控制在采用基于角色的访问控制的基础上,需要支持面向角色的分级授权,即用户角色授权是分散的;对于流程性较弱、协作性较强的应用,用户角色划分不会很细致,其访问控制在采用基于角色的访问控制的基础上,需要支持面向应用的分级授权,即用户角色授权是集中的,应用角色授权是分散的。
[0005]与传统的信息门户不同,社交门户不仅可以作为应用的入口,而且可以在应用中为用户提供结识、沟通、交流和协作的空间,即通过社交门户中的推荐引擎和用户信息展示来帮助用户结识其他用户,通过社交门户中的群组和社交应用来支持用户之间的沟通、交流和协作。因此,应用的访问控制如何与支持用户结识、沟通、交流和协作相结合也是社交云服务应用访问控制中亟待解决的关键问题。

【发明内容】

[0006]本发明旨在至少解决上述技术问题之一。
[0007]为此,本发明的第一个目的在于提出一种社交云服务系统中应用的访问控制方法。该方法支持用户在使用应用协同的过程中的沟通、交流和协作,并使得用户在业务应用中的角色的描述信息能够按照规则的配置成为社交域中的用户认证信息的有效来源。
[0008]为了实现上述目的,本发明第一方面实施例的社交云服务系统中应用的访问控制方法,包括:所述社交云服务系统包括多个社交域,每个社交域包括多个用户和多个应用,所述方法具体包括:S1,根据所述多个应用的关联性将所述多个应用划分为多个应用分组;S2,获取每个应用分组中应用的角色,并根据所述应用的角色生成角色分组,其中,所述角色分组和所述多个应用分组中至少一个应用分组相关联;以及S3,获取所述角色分组中角色的角色类型、上级角色和角色属性,并根据所述角色类型、上级角色和角色属性采用集中授权和/或分级授权的方式对用户的应用进行授权。
[0009]本发明实施例的社交云服务系统中应用的访问控制方法,具有以下有益效果:
(I)、将角色与社交域中的群组和群组角色关联起来,从而使得以社交域作为入口的相同应用分组的用户可以在社交域中关联一个或者一组群组中的指定群组角色,支持用户在使用应用协同的过程中的沟通、交流和协作。(2)、将角色的描述信息与社交域中的用户认证信息关联起来,使得用户在业务应用中的角色的描述信息能够按照规则的配置成为社交域中的用户认证信息的有效来源。
[0010]本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
【专利附图】

【附图说明】
[0011]本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中,
[0012]图1为现有技术中社交云服务系统的示意图;
[0013]图2是根据本发明一个实施例的社交云服务系统中应用的访问控制方法的流程图;
[0014]图3(a)_(c)是根据本发明一个实施例的社交云服务系统中应用的访问控制方法的不意图;
[0015]图4是根据本发明一个实施例的社交云服务系统中应用的访问控制方法的授权示意图;
[0016]图5是根据本发明一个实施例的二级用户角色授权的流程图;
[0017]图6是根据本发明一个实施例的二级用户应用授权的流程图;
[0018]图7是根据本发明一个实施例的角色模型的示意图;以及
[0019]图8是根据本发明一个具体实施例的社交云服务系统中应用的访问控制方法的流程图。
【具体实施方式】
[0020]在本发明的描述中,需要理解的是,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。[0021]流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属【技术领域】的技术人员所理解。
[0022]下面参考附图描述根据本发明实施例的社交云服务系统中应用的访问控制方法。
[0023]本发明的目的是提出一种支持分级授权而且能够与社交云服务提供的协作和交流服务相结合的社交云服务应用访问控制方法。图2是根据本发明一个实施例的社交云服务系统中应用的访问控制方法的流程图,图3(a)_(c)是根据本发明一个实施例的社交云服务系统中应用的访问控制方法的示意图,图8是根据本发明一个具体实施例的社交云服务系统中应用的访问控制方法的流程图。如图2、图3和图8所示,该社交云服务系统中应用的访问控制方法包括,
[0024]SI,根据多个应用的关联性将多个应用划分为多个应用分组。
[0025]S2,获取每个应用分组中应用的角色,并根据应用的角色生成角色分组,其中,角色分组和多个应用分组中至少一个应用分组相关联。
[0026]S3,获取角色分组中角色的角色类型、上级角色和角色属性,并根据角色类型、上级角色和角色属性采用集中授权和/或分级授权的方式对用户的应用进行授权。
[0027]具体而言,对用户的应用进行授权时,可同时采用集中授权和分级授权两种方式。集中授权采用扩展的基于角色的授权,即,通过对用户授权角色和对应用授权角色来实现对用户的应用授权;分级授权包含两级授权,即一级授权和二级授权,并且分级授权可分为面向应用的分级授权和面向角色的分级授权两种方式。
[0028]在本发明的实施例中,集中授权的方式可以为:
[0029]S31,在一级授权中完成应用分组中的应用对角色分组中的角色的授权和用户对角色的授权。
[0030]S32,在一级授权完成的同时完成应用分组中应用对用户的授权。
[0031]具体而言,如图3(a)所示,在扩展的基于角色的授权中,应用对角色的授权和用户对角色的授权均在一级授权中完成。当对应用和用户对同一角色授权的均完成后,应用对用户的授权也同时完成。在应用对角色的授权完成之后,被授权角色的描述信息同时按照规则被添加到社交域的用户认证信息中,用户也一并以指定的群组角色加入到与角色关联的群组中。
[0032]在本发明的实施例中,步骤S3具体还包括:
[0033]S33,在面向应用的分级授权中,在一级授权中完成应用分组中的应用对角色分组中的角色的授权,并在二级授权中完成用户对应用分组中的应用的授权。
[0034]具体而言,如图3(b)所示,在面向应用的分级授权中,一级授权完成应用对角色的授权,即完成角色和应用、应用操作的关联;二级授权完成用户和应用的关联。此时,要求用于确定被授权用户的角色的授权方式是集中授权,对应用的授权方式是分级授权且负责分级授权的角色是其各级的上级角色,即,要求用于确定被授权用户的角色和负责分级授权的角色具有相同的角色属性值或用户属性值。在应用对角色的授权完成后,被授权角色的描述信息同时按照规则被添加到社交域的用户认证信息中,用户也一并以指定的群组角色加入到与角色关联的群组中。
[0035]S34,在面向角色的分级授权中,在一级授权中完成应用分组中应用对角色分组中的角色的授权,并在二级授权中完成用户对角色分组中的角色的授权。
[0036]如图3(c)所示,在面向角色的分级授权中,一级授权完成应用的角色授权,即完成角色和应用、应用操作的关联,二级授权完成用户的角色授权。此时,要求被授权的角色的授权模式是分级授权,即要求被授权角色存在上级角色且角色属性为前置属性;同时,在进行被授权角色的应用授权时,授权模式必须选择集中授权。当对应用和用户对同一角色授权的均完成后,应用对用户的授权也同时完成。在应用对角色的授权完成之后,被授权角色的描述信息同时按照规则被添加到社交域的用户认证信息中,用户也一并以指定的群组角色加入到与角色关联的群组中。
[0037]下面结合图4详细说明一下本发明实施例的社交云服务系统中应用的访问控制方法中的授权流程。图4是根据本发明一个实施例的社交云服务系统中应用的访问控制方法的授权示意图,如图4所示,
[0038]a)设置角色分组的信息、角色的基本信息,以及应用分组的信息、应用的基本信息、应用的操作信息。
[0039]b)设置功能角色间的二级授权关系,对于需要二级授权的功能角色确定负责对其进行二级授权的功能角色,负责授权的角色和被授权的角色需要同时存在关联的数据角色或者同时不存在关联数据角色,而且负责授权的角色应当是被授权角色的各级上级角色;对于前一种情况,要求用于细分两个功能角色关联的数据角色的用户属性是前置属性;
[0040]c)进行一级用户角色授权,候选角色应当是不关联数据角色的功能角色或者数据角色,而且不能是b)中设置的需要二级授权的功能角色及其关联的数据角色;
[0041]d)进行一级应用角色授权,即对应用确定其对每个功能角色是否授权,如果授权且功能角色存在关联的数据角色而且不能是b)中设置的需要二级授权的功能角色,则需要进一步选择授权方式是集中授权或者分级授权;当采用分级授权方式时还需要设置负责二级应用用户授权的功能角色,负责二级应用用户授权的功能角色必须存在关联的数据角色,而且用于细分两个功能角色关联的数据角色的用户属性必须是相同的,用户属性可以是前置属性或者后置属性;
[0042]e)进行二级用户角色授权,仅在在面向角色的分级授权中存在;二级用户角色授权根据当前用户的角色提取其可以授权的角色列表和用户列表,让当前用户在上述范围内确定哪些用户拥有哪些角色,进一步结合被授权角色关联的应用列表确定已完成角色授权用户可以访问的应用;确定用户的待授权角色列表和每个角色的可授权用户列表的流程如图5所示。图5是根据本发明一个实施例的二级用户角色授权的流程图,如图5所示,在本发明的实施例中,
[0043]S501,获取用户的角色列表。
[0044]S502,获取角色列表中的当前角色及当前角色的属性值。
[0045]S503,判断当前角色是否为数据角色。
[0046]S504,如果当前角色是数据角色,则获取当前角色相关联的功能角色及功能角色的属性值。
[0047]S505,根据功能角色查找功能角色负责授权的其它功能角色。[0048]S506,根据当前角色相关联的功能角色的属性值和功能角色负责授权的其它功能角色获取当前角色负责授权的数据角色作为用户可授权的角色。
[0049]S507,如果当前角色不是数据角色,则查找当前角色负责授权的功能角色作为用户可授权的角色。
[0050]S508,获取待授权角色及待授权角色的属性值。
[0051]S509,判断待授权角色是否是数据角色。
[0052]S510,如果待授权角色是否是数据角色,则获取待授权角色相关联的功能角色及待授权角色相关联的功能角色的属性值。
[0053]S511,在当前角色的属性值所确定的指定表中查找与待授权数据角色的属性值具有相同的字段值的角色,以及记录具有相同的字段值的角色作为可授权角色的待授权用户。
[0054]S512,如果待授权角色是否是数据角色,则在待授权角色的属性值所确定的指定表中查找指定字段值与用户在指定表中指定字段值相同的角色,并记录指定字段值相同的角色对应的用户作为可授权角色的待授权用户。
[0055]S513,判断是否还有未处理的待授权角色。
[0056]S514,如果没有未处理的待授权角色,则判断是否还有未处理的角色。其中,如果有未处理的待授权角色,则重复上述S508-S512
[0057]S515,如果没有未处理的角色,则显示用户的待授权角色及每个可授权角色对应的待授权用户,其中,如果有未处理的角色,则重复上述S502-S513。
[0058]f)进行二级用户应用授权,仅在面向应用的分级授权中存在;二级用户应用用户授权根据当前用户的角色提取其可授权的应用列表和用户列表,让当前用户在上述范围内确定哪些用户可以访问哪些应用,如图6所示。图6是根据本发明一个实施例的二级用户应用授权的流程图,如图6所示,在本发明的实施例中,
[0059]S601,获取用户的角色列表。
[0060]S602,获取角色列表中的第一角色。
[0061]S603,判断第一角色是否是数据角色。
[0062]S604,如果第一角色是数据角色,则获取与第一角色相关联的功能角色,其中,如果第一角色不是数据角色,则跳过S604。
[0063]S605,获取由功能角色负责二级授权的应用列表,并将应用列表作为用户可授权的应用。
[0064]S606,获取应用列表中的可授权应用,并获取可授权应用授权的功能角色列表。
[0065]S607,获取角色列表中的第二角色。
[0066]S608,判断第二角色是否为数据角色。
[0067]S609,如果第二角色为数据角色,则获取第二角色的属性值,其中,第二角色的属性值与数据角色的属性值相同,并从数据列表中获取与功能角色相关联的数据角色。
[0068]S610,查找已授权的数据角色对应的用户,并将数据角色对应的用户作为可授权应用的待授权用户。
[0069]S611,如果第二角色不为数据角色,则根据功能角色的属性值所确定的指定表获取用户的字段值。[0070]S612,并在指定表中查找与所述字段值对应的用户,并将所述用户作为所述可授权应用的待授权用户。
[0071]S613,判断用户的角色列表是否还有未处理的角色。
[0072]S614,如果没有未处理的角色,则判断是否还有未处理的可授权应用,其中,如果有未处理的角色,则重复上述S607-S612。
[0073]S615,如果没有未处理的可授权应用,则显示用户的可授权应用及每个可授权应用对应的待授权用户,其中,如果有未处理的可授权应用,则重复上述S606-S614。
[0074]下面详细说明一下本发明实施例中授权元素和授权关系。
[0075]USERS = {user+}:用户的集合;
[0076]user = (userid, username, Userproperty1, Userproperty2,..., Userpropertyn):用户,userid和username分别表示用户id和用户名,Userpropertyi表示用户属性;
[0077]ROLEGROUPS = {roIegroup+1:角色分组的集合;
[0078]rolegroup = (rolegroupid, rolegroupname):角色分组,rolegroupid 和roIegroupname分别表示角色分组id和角色分组名称;
[0079]APPGROUPS = {appgroup+}:应用分组的集合,应用分组必须有关联的角色分组,一个应用分组只能关联一个角色分组,一个角色分组可以被多个应用分组关联;
[0080]appgroup = (appgroupid, appgroup_name, rolegroupid):应用分 组,appgroupid、appgroup_name和rolegroupid分别表示应用分组id、应用分组名称和应用分组关联的角色分组id ;
[0081]ROLES = {role+}:角色的集合,每个角色需要关联一个角色分组;
[0082]role = (roleid, rolename, rolegroupid, roletype, uproleid, roleattribute,roleauthtype, authroleid, rolesnsgroups):角色。
[0083]- - roleid、rolename、rolegroupid:角色 id、角色名称、角色分组 id ;
[0084]- - roletype:角色类型,分为功能角色和数据角色;功能角色决定用户能够使用的应用和应用操作,数据角色决定用户在应用中能够对什么范围的数据进行指定的操作,数据角色不能单独存在,必须与惟一确定的功能角色关联;功能角色分级,功能角色可以独立存在,即不关联数据角色的功能角色,也可以根据用户的某项属性与一组数据角色关联,即关联数据角色的功能角色;角色分类如图7所示,图7是根据本发明一个实施例的角色模型的不意图;
[0085]- - uproleid:上级角色,功能角色可以有或者没有上级角色,功能角色和它的上级功能角色必须同时具有或者不具有关联的数据角色;数据角色必须有关联数据角色的功能角色作为其上级角色;
[0086]- - roleattribute:角色属性,功能角色的角色属性分为前置属性和后置属性两类,前置属性是指用户被授权指定角色之前就有的属性,后置属性是指用户因授权角色而具有的属性;不关联数据角色的功能角色的角色属性是具有该角色用户的属性,这个属性必须是前置属性;关联数据角色的功能角色的角色属性是用于区分其关联的数据角色的用户属性,这个属性可以是前置属性或者后置属性;如果功能角色存在上级角色,则功能角色的角色属性与其上级功能角色的角色属性相同;数据角色的角色属性是它关联的功能角色的用户属性的值;[0087]- - roleauthtype e {0,1}:角色授权类型,O表示集中授权,I表示分级授权;如果功能角色存在上级角色且角色属性为前置属性,则角色授权类型可以是集中授权或者分级授权;否则,其角色授权类型必须是集中授权;数据角色的角色授权类型与它关联的功能角色相同;
[0088]- - authroleid:负责二级角色授权的功能角色,当rauthtype = I时有效,必须是当前角色的各级上级角色;
[0089]- - rolesnsgroups = {(group, grouprole) , grouprole e {O, 1}:角色关联的社交域中的群组和群组角色;一个角色可以关联多个群组的不同群组角色(O表示群组普通成员,I表示群组管理员),一个角色实际关联的群组是它的基本信息中定义的关联群组的集合和它的所有上级群组的基本信息中定义的关联群组的集合的并集;
[0090]APPS= {app+}:应用的集合,每个应用需要关联一个应用分组;
[0091]app = (app id, appgroupid, apptype, appname, app icon, appaddr): /Si M? appid、appgroupid、apptype、appname、app icon和appaddr分别表示应用id、应用所属应用分组id、应用类型、应用名称、应用图标、应用访问地址;其中应用类型apptype e {O, 1},0表示社交云服务平台内的应用,I表示社交云服务平台外的应用;
[0092]OPS= {op+}:应用操作的集合,每个应用可以关联一组自定义的操作,用于区分不同角色的用户在应用中的实际权限;
[0093]op = (opid, appid, opname):应用操作,opid、appid 和 opname 分别表示应用操作id、应用操作关联的应用id和应用操作名称; [0094]APPOPQAPPSxOPS={(叩P,叩+)+}:应用和应用操作的关联,一个应用可以关联多个
自定义的应用操作;
[0095]ROLE_APPOP_ROLEQROLESxAPPOPxROLE={(roie/ app, op, rolef},角色和应用、应用
操作、角色应用操作授权方式、分级授权角色之间的多对多映射集合;
[0096]assigned_app_appop_role (role) = {role e ROLES I (role, app, op+, role') e ROLE_APP0P_R0LE}:应用对角色的授权,在一级的集中授权阶段完成;授权要素包括角色role、应用app、应用操作列表op+、负责对具有角色role的用户进行应用app的二级授权的角色role’。当role’为空时,表示应用app对角色role的授权方式是集中授权;当;role’不为空时,表示应用app对角色role的授权方式是集中授权分级授权;当角色role是不关联数据角色的功能角色或者是需要二级角色授权的关联数据角色的功能角色时,应用app对角色role的授权方式必须是集中授权;
[0097]ROLE_USERgROLESxUSERS={(mle, user)}:角色和用户之间的多对多映射集合;
[0098]assigned_user_levelI (role) = {role e ROLES, roleauthtype(role)=0 I (role, user) e R0LE_USER}: 一级用户角色授权,roleauthtype (role)表示取角色role的roleauthtype属性;一级用户角色授权要求被授权角色role的角色授权类型是集中授权,其角色属性可以是前置属性或者后置属性;当被授权角色role是数据角色且其关联的功能角色的角色属性是后置属性时,用户角色授权后应将用户的角色属性对应的用户属性值置为与所选数据角色的角色属性值;
[0099]assigned_user_level2 (role) = {role e ROLES, roleauthtype(role)=II (role, user) e R0LE_USER}, 二级用户角色授权,roleauthtype (role)表示取角色role的roleauthtype属性。二级用户角色授权要求被授权角色role存在上级角色,其角色属性是前置属性且角色授权类型是分级授权;
[0100]USER_APPOPQUSERSxAPPOP={(user, app, op+)+},用户和应用、应用操作之间的多对
多映射集合;
[0101]assigned_app_appop (user) = {user e USERS I (user, app, op+) e USER_ΑΡΡ0Ρ},用户应用授权,仅在面向应用的二级授权中存在。用户应用授权要求被授权应用的授权方式为分级授权,被授权用户的角色存在上级角色,其角色属性为前置属性且角色授权类型是集中授权。
[0102]本发明实施例的社交云服务系统中应用的访问控制方法,具有以下有益效果:
[0103](I)、将角色与社交域中的群组和群组角色关联起来,从而使得以社交域作为入口的相同应用分组的用户可以在社交域中关联一个或者一组群组中的指定群组角色,支持用户在使用应用协同的过程中的沟通、交流和协作。
[0104](2)、将角色的描述信息与社交域中的用户认证信息关联起来,使得用户在业务应用中的角色的描述信息能够按照规则的配置成为社交域中的用户认证信息的有效来源。
[0105]应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
[0106]在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
[0107]尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
【权利要求】
1.一种社交云服务系统中应用的访问控制方法,其特征在于,所述社交云服务系统包括多个社交域,每个社交域包括多个用户和多个应用,所述方法包括: S1,根据所述多个应用的关联性将所述多个应用划分为多个应用分组; S2,获取每个应用分组中应用的角色,并根据所述应用的角色生成角色分组,其中,所述角色分组和所述多个应用分组中至少一个应用分组相关联;以及 S3,获取所述角色分组中角色的角色类型、上级角色和角色属性,并根据所述角色类型、上级角色和角色属性采用集中授权和/或分级授权的方式对用户的应用进行授权。
2.如权利要求1所述的方法,其特征在于,所述集中授权包括一级授权,所述步骤S3具体包括: 在所述一级授权中完成所述应用分组中的应用对所述角色分组中的角色的授权和所述用户对所述角色的授权;以及 在所述一级授权完成的同时完成所述应用分组中应用对所述用户的授权。
3.如权利要求1所述的方法,其特征在于,所述分级授权包括一级授权和二级授权,所述步骤S3具体包括: 在面向应用的分级授权中,在所述一级授权中完成所述应用分组中的应用对所述角色分组中的角色的授权,并在所述二级授权中完成所述用户对所述应用分组中的应用的授权;以及 在面向角色的分级授权中,在所述一级授权中完成所述应用分组中应用对所述角色分组中的角色的授权,并在所述二级授权中完成所述用户对所述角色分组中的角色的授权。
4.如权利要求3所述的方法,其特征在于,所述角色的角色类型包括数据角色和功能角色,所述在二级授权中完成所述用户对所述应用分组中的应用的授权,具体包括: 获取所述用户的角色列表,并获取所述角色列表中的第一角色,以及判断所述第一角色是否是所述数据角色,如果所述第一角色是所述数据角色,则获取与所述第一角色相关联的功能角色,并获取由所述功能角色负责所述二级授权的应用列表,并将所述应用列表作为所述用户可授权的应用; 获取所述应用列表中的可授权应用,并获取所述可授权应用授权的功能角色列表,以及获取所述角色列表中的第二角色,并判断所述第二角色是否为所述数据角色;以及 如果所述第二角色为所述数据角色,则获取所述第二角色的属性值,其中,所述第二角色的属性值与所述数据角色的属性值相同,并从所述数据列表中获取与所述功能角色相关联的数据角色,以及查找已授权的数据角色对应的用户,并将所述数据角色对应的用户作为所述可授权应用的待授权用户,如果所述第二角色不为所述数据角色,则根据所述功能角色的属性值所确定的指定表获取所述用户的字段值,并在所述指定表中查找与所述字段值对应的用户,并将所述用户作为所述可授权应用的待授权用户。
5.如权利要求4所述的方法,其特征在于,所述在将用户作为所述可授权应用的待授权用户之后,还包括: 判断所述用户的角色列表是否还有未处理的角色,如果没有未处理的角色,则判断是否还有未处理的可授权应用,如果没有未处理的可授权应用,则显示所述用户的可授权应用及每个可授权应用对应的待授权用户。
6.如权利要求3所述的方法,其特征在于,所述角色的角色类型包括数据角色和功能角色,所述在二级授权中完成所述用户对所述角色分组中的角色的授权,具体包括: 获取所述用户的角色列表,并获取所述角色列表中的当前角色及所述当前角色的属性值,以及判断所述当前角色是否为数据角色; 如果所述当前角色是所述数据角色,则获取所述当前角色相关联的功能角色及所述功能角色的属性值,并根据所述功能角色查找所述功能角色负责授权的其它功能角色,以及根据所述当前角色相关联的功能角色的属性值和所述功能角色负责授权的其它功能角色获取所述当前角色负责授权的数据角色作为所述用户可授权的角色,如果所述当前角色不是所述数据角色,则查找所述当前角色负责授权的功能角色作为所述用户可授权的角色;获取待授权角色及所述待授权角色的属性值,并判断所述待授权角色是否是数据角色,如果所述待授权角色是否是数据角色,则获取所述待授权角色相关联的功能角色及待授权角色相关联的功能角色的属性值,并在所述当前角色的属性值所确定的指定表中查找与待授权数据角色的属性值具有相同的字段值的角色,以及记录所述具有相同的字段值的角色作为可授权角色的待授权用户;以及 如果所述待授权角色是否是数据角色,则在所述待授权角色的属性值所确定的指定表中查找指定字段值与所述用户在所述指定表中指定字段值相同的角色,并记录所述指定字段值相同的角色对应的用户作为所述可授权角色的待授权用户。
7.如权利要 求6所述的方法,其特征在于,所述在记录指定字段值相同的角色对应的用户作为所述可授权角色的待授权用户之后,还包括: 判断是否还有未处理的待授权角色,如果没有未处理的待授权角色,则判断是否还有未处理的角色,如果没有未处理的角色,则显示所述用户的待授权角色及每个可授权角色对应的待授权用户。
【文档编号】H04L29/08GK103929426SQ201410162787
【公开日】2014年7月16日 申请日期:2014年4月22日 优先权日:2014年4月22日
【发明者】杜炤, 刘奇峰, 刘婷 申请人:清华大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1