一种数据权限的控制方法及控制装置与流程

文档序号:13940983阅读:216来源:国知局

本发明属于计算机信息安全技术领域,尤其涉及一种数据权限的控制方法及控制装置。



背景技术:

随着信息化技术和互联网的高速发展,对信息化系统的要求不断提高,在许多应用系统中明确提出要实现权限的控制。

目前基于rbac模型,将权限分配在角色上,用户通过继承角色来获得权限。权限一般分为功能权限和数据权限,功能权限主要是指角色对某个业务所具有的读、写、查、改、删除等的许可。数据权限主要是指角色可以访问到的业务数据范围。基于rbac模型的权限管理多侧重于功能权限的控制,对数据权限的控制不灵活,数据权限的颗粒度不能灵活调整。



技术实现要素:

有鉴于此,本发明的目的在于提供一种数据权限的控制方法及控制装置,用于解决现有技术中对数据权限的控制不灵活,数据权限的颗粒度不能灵活调整的问题。

技术方案如下:

本发明提供一种数据权限的控制方法,包括:

接收用户信息;

根据所述用户信息,确定角色信息;

根据所述角色信息,获取与所述角色信息对应的功能权限以及数据权限;

判断所述功能权限是否是配置数据权限;

若判断所述功能权限是配置数据权限,则根据与所述角色信息对应的数据权限访问数据;

根据访问到的数据为至少一个角色信息配置新的数据权限。

优选地,所述根据所述用户信息,确定角色信息包括:

根据所述用户信息,确定与所述用户信息对应的租户信息;其中,所述租户信息与至少一个角色信息存在对应关系;

从与所述租户信息对应的所有角色信息中,确定与所述用户信息对应的角色信息。

优选地,所述根据访问到的数据为至少一个角色信息配置新的数据权限包括:

选择待配置角色信息;

从访问到的数据中,选择待配置数据;

获取所述待配置数据的属性信息;

根据所述属性信息和预设数据规则配置与所述待配置角色信息对应的数据权限。

优选地,所述判断所述功能权限是否是配置数据权限后,还包括:

若判断所述功能权限不是配置数据权限,则根据所述功能权限以及所述数据权限,访问数据。

优选地,所述若判断所述功能权限不是配置数据权限后,所述根据所述功能权限以及所述数据权限访问数据前,还包括:

判断所述数据权限的控制开关是否处于开启状态;

判断所述数据权限的控制开关处于开启状态,则执行根据所述功能权限以及所述数据权限访问数据。

本发明还提供一种数据权限的控制装置,包括:

接收单元,用于接收用户信息;

确定单元,用于根据所述用户信息,确定角色信息;

获取单元,用于根据所述角色信息,获取与所述角色信息对应的功能权限以及数据权限;

第一判断单元,用于判断所述功能权限是否是配置数据权限;

访问单元,用于所述第一判断单元判断所述功能权限是配置数据权限时,根据与所述角色信息对应的数据权限访问数据;

配置单元,用于根据访问到的数据为至少一个角色信息配置新的数据权限。

优选地,所述确定单元包括:

第一确定子单元,用于根据所述用户信息,确定与所述用户信息对应的租户信息;其中,所述租户信息与至少一个角色信息存在对应关系;

第二确定子单元,用于从与所述租户信息对应的所有角色信息中,确定与所述用户信息对应的角色信息。

优选地,所述配置单元包括:

第一选择子单元,用于选择待配置角色信息;

第二选择子单元,用于从访问到的数据中,选择待配置数据;

获取子单元,用于获取所述待配置数据的属性信息;

配置子单元,用于根据所述属性信息和预设数据规则配置与所述待配置角色信息对应的数据权限。

优选地,所述访问单元,还用于所述第一判断单元判断所述功能权限不是配置数据权限时,根据所述功能权限以及所述数据权限,访问数据。

优选地,还包括:第二判断单元,用于判断所述数据权限的控制开关是否处于开启状态;

所述访问单元,还用于所述第二判断单元判断所述数据权限的控制开关处于开启状态时,根据所述功能权限以及所述数据权限访问数据。

与现有技术相比,本发明提供的上述技术方案具有如下优点:

从上述技术方案可知,本申请中通过接收用户信息,根据用户信息确定角色信息,根据角色信息获取与此角色信息对应的功能权限和数据权限;判断此角色的功能权限是否是配置数据权限,判断此角色的功能权限是配置数据权限,则进行数据权限的配置。通过设置具有配置数据权限的角色,使得此角色可以对需要调整数据权限的角色配置数据权限,实现了数据权限的灵活控制,能够灵活调整数据权限的颗粒度。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例提供的一种数据权限的控制方法的流程图;

图2是本发明实施例提供的另一种数据权限的控制方法的流程图;

图3是本发明实施例提供的一种数据权限的控制装置的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明公开了一种数据权限的控制方法,应用在业务系统中,其中,本实施例中业务系统可以为招投标产品系统。本实施例中采用java语言、javascript语言进行开发,统一的前后台交互方式,json格式实现前后端数据流转,servlet(serverapplet,服务连接器)、jsp(javaserverpages,java服务器页面)、aop(aspect-orientedprogramming,面向切换编程)技术实现对业务系统中访问权限的控制。其中,访问权限的控制是基于角色的访问控制方法(rbac,role-basedaccesscontrol)实现的。

参见图1,该实施例包括以下步骤:

s101、接收用户信息;

用户登录业务系统时,需要输入用户信息。其中,用户信息包括账号名称、账号密码等信息。本实施例中并不限定用户信息的具体内容。

s102、根据所述用户信息,确定角色信息;

在业务系统中预先存储有用户信息与角色信息之间的对应关系。建立对应关系的实现方式可以为:记录用户的用户信息,比如用户的出生日期、所在地、身体状况、公司名称、公司职位、账号名称、账号密码等信息,根据用户的用户信息为其分配角色信息,例如主数据管理员、供应商管理员、技术组项目经理、商务组项目经理或招标项目审核人员等角色,建立用户的用户信息与角色信息之间的对应关系。

其中,一个用户可以被分配一个或多个角色,因此用户的用户信息与角色信息之间的对应关系并不是一一对应的,可以一对多。而且,由于用户信息中包括的信息较多,例如出生日期、所在地、身体状况、公司名称、公司职位、账号名称、账号密码等信息,因此在建立用户信息与角色信息之间的对应关系时,可以从用户信息中选取部分信息,建立选取的部分信息与角色信息之间的对应关系。例如,从用户信息中选取出的信息为公司名称、公司职位、账号名称,那么,建立的用户信息与角色信息之间的对应关系为由公司名称、公司职位和账号名称构成的用户信息与角色信息之间的对应关系。

在接收到用户输入的用户信息后,获取存储的用户信息与角色信息之间的对应关系。根据用户信息,从用户信息与角色信息之间的对应关系中查找与角色信息对应的角色信息,进而确定角色信息。

其中,为了保证根据用户输入的用户信息能够查找到与之对应的角色信息,业务系统向用户提供的交互界面上需要至少提供一项输入内容,且输入内容与存储的对应关系中的用户信息中的一项相同。例如,用户在登录一个系统时,通常需要输入的内容包括账号名称和账号密码。本实施例中业务系统提供的交互界面上显示有账号名称输入框和账号密码输入框,为了使得根据用户输入的账号名称和账号密码查找到与之对应的角色信息,因此建立用户信息与角色信息的对应关系时,需要保证用户信息中至少包括账号名称和账号密码。

在本实施例中,基于rbac模型中,当一个用户激活此用户所有的角色的一个子集时,建立一个映射关系,称为session信息,每个session与一个用户关联。

根据用户信息,从session中即可查找到与此用户信息对应的角色信息。

s103、根据所述角色信息,获取与所述角色信息对应的功能权限以及数据权限;

本实施例中基于rbac模型实现基于角色的访问控制,其是在用户和权限之间加入角色的概念,通过为角色分配权限,并为用户分配角色,实现用户授权,达到了用户与权限分离的目的。

权限一般分为功能权限和数据权限,功能权限主要是指主体对某个业务所具有的读、写、查、改、删除等的许可,在应用系统中通常表现为是否显示窗口、是否出现菜单项、功能按钮是否可用等方面。数据权限主要是对相应角色能够访问到的数据范围的定义。

在本实施例中,功能权限除了对某个业务所具有的读、写、查、改、删除等的许可外,还包括配置数据权限。其中,配置数据权限指的是对角色信息中的任意一角色所能够访问到的数据范围进行配置。

s104、判断所述功能权限是否是配置数据权限;

若判断所述功能权限是配置数据权限,则执行步骤s105;

若判断所述功能权限不是配置数据权限,则执行步骤s107;

通常所有的角色都具备对某个业务所具有的读、写、查、改、删除等的许可,只是不同的角色所针对的业务是不同的。例如,供应商管理员对供应商的数据具有读、写、查、改、删除等许可,技术组项目经理对所负责的项目的数据具有读、写、查、改、删除等许可,招标项目审核人员对招标项目数据具有读、写、查、改、删除等许可。但是,并不是所有的角色都具备配置数据权限,通常仅为一个或几个角色设置为具有配置数据权限。即可以对其他角色信息的数据权限进行配置。

在根据角色信息获取到与此角色信息对应的功能权限和数据权限后,判断功能权限是否是配置数据权限。

若判断功能权限是配置数据权限,则说明此角色对其他角色所对应的数据权限具有配置、修改等功能。此时,将进入到数据权限配置界面,进而实现对选择的角色信息所对应的数据权限的配置。

若判断功能权限不是配置数据权限,则说明此角色不具有配置数据权限的功能。此时,将进入到访问数据的界面,根据功能权限和数据权限获取数据。

s105、根据与所述角色信息对应的数据权限访问数据;

s106、根据访问到的数据为至少一个角色信息配置数据权限;

具有配置数据权限这一功能权限的角色还具有数据权限,数据权限限定了此角色可以访问到的数据,进而限定了数据权限的配置范围。

例如,主数据管理员这一角色,其具有配置数据权限的功能。并且主数据管理员具有的数据权限为全部数据,那么主数据管理员可以访问到数据库中存储的所有数据。进而可以利用所有数据,为不同的角色配置不同的数据权限。

在进入数据权限配置界面后,根据具有配置数据权限的功能的角色所具有的数据权限,显示此角色可以配置的所有角色信息。仍然以主数据管理员这一角色为例,由于主数据管理员具有的数据权限为可以访问到全部数据,因此,可以为所有角色配置数据权限。当然,如果一个角色可以访问到的数据有限,那么此角色能够配置数据权限的角色将受到可以访问到的数据的限制。只有根据功能权限可以访问到的数据与具有配置数据权限的角色可以访问到的数据相同的角色,才能被配置数据权限。

例如,角色a根据其功能权限可以访问到的数据为业务a对应的数据库a中的数据。角色b根据其功能权限可以访问到的数据为业务b对应的数据库b中的数据,而角色c的功能权限为配置数据权限。且,角色c的数据权限为可以访问到数据库a和数据库b的数据。那么,角色c可以为角色a和角色b分配配置数据权限。如果角色c的数据权限为可以访问到数据库a的数据,那么,角色c仅可以为角色a配置数据权限。如果角色c的数据权限为可以访问到数据库b的数据,那么,角色c仅可以为角色b配置数据权限。

在数据权限配置界面中,选择被配置数据权限的角色,为选择的角色配置数据权限。

如果角色a自身没有被配置数据权限,则其可以访问到的是角色a的功能权限下所有的数据,即与功能权限对应的业务的全部数据。

而如果角色a被配置为数据权限,则角色a可以访问到的数据将为数据权限内角色a的功能权限下的数据,即角色a可以访问到的是与功能权限对应的业务内的部分数据,角色a可以访问到的数据范围缩小。

本实施例中通过为角色配置数据权限,限制角色可以访问到的数据范围,实现了细化颗粒度的目的。

s107、根据所述功能权限以及所述数据权限访问数据。

判断功能权限不是配置数据权限,则说明是不具有配置数据权限的角色,那么直接根据此角色的功能权限和数据权限,访问数据。

可以理解的是,被配置数据权限的角色原本的数据权限为可以访问到功能权限下能够操作的业务的全部数据。本实施例中,每个业务以数据表的形式存储,那么被配置数据权限的角色原本的数据权限为可以访问到某业务的数据表内存储的全部数据。

在为被配置数据权限的角色配置了新的数据权限后,在此被配置了新的数据权限的角色登录系统并访问数据时,按照新配置的数据权限限制此角色信息可以访问到的数据范围。

由于本实施例中数据以单独的数据表的形式进行存储,使得本实施例中公开的数据权限控制方法可以基于java语言实现组件化的开发,形成独立的组件,便于与业务系统的解耦和,并方便与其他业务系统的耦合。

从上述技术方案可知,本实施例通过接收用户信息,根据用户信息确定角色信息,根据角色信息获取与此角色信息对应的功能权限和数据权限;判断此角色的功能权限是否是配置数据权限,判断此角色的功能权限是配置数据权限,则进行数据权限的配置。通过设置具有配置数据权限的角色,使得此角色可以对需要调整数据权限的角色配置数据权限,实现了数据权限的灵活控制,能够灵活调整数据权限的颗粒度。

本实施例公开了另一种数据权限的控制方法,应用在云应用业务系统中,参见图2,该实施例包括以下步骤:

s201、接收用户信息;

在本实施例中,步骤s201的实现方式与上一实施例中步骤s101的实现方式相同,此处不再赘述。

s202、根据所述用户信息,确定与所述用户信息对应的租户信息;其中,所述租户信息与至少一个角色信息存在对应关系;

本实施例的云应用具有多租户特点,需要对使用云应用的企业或机构租户进行权限控制,企业租户管理人员再对使用云应用的此企业内的不同用户分配角色,进而实现基于角色的权限控制。

系统内预先存储有用户信息与租户信息之间的对应关系。通常情况下,一个租户信息包括至少一个角色信息。

通过租户信息,实现了不同租户下用户之间的数据隔离的目的,提高了数据的安全性。

s203、从与所述租户信息对应的所有角色信息中,确定与所述用户信息对应的角色信息;

session信息中存储有用户信息、租户信息以及角色信息之间的对应关系,在session信息中,通过用户信息确定租户信息和角色信息。

s204、根据所述角色信息,获取与所述角色信息对应的功能权限以及数据权限;

s205、判断所述功能权限是否是配置数据权限;

若判断所述功能权限是配置数据权限,则执行步骤s206;

若判断所述功能权限不是配置数据权限,则执行步骤s2011;

s206、根据与所述角色信息对应的数据权限访问数据;

进入数据权限配置界面,根据具有配置数据权限的角色信息以及当前角色信息的数据权限,获取当前角色可见和可操作的数据。其中,数据以数据实体表的形式存储。可见和可操作的数据以数据实体表信息的方式呈现。

例如,角色信息为主数据管理员,获取到的可见和可操作的数据为物料分类、供应商基本信息、专业信息等数据实体表信息。

s207、选择待配置角色信息;

数据权限配置界面中显示有可被配置数据权限的所有角色信息。显示的角色信息受到具有配置数据权限的角色可以访问到的数据的限制。例如,角色a根据其功能权限可以访问到的数据为业务a对应的数据库a中的数据。角色b根据其功能权限可以访问到的数据为业务b对应的数据库b中的数据,而角色c的功能权限为配置数据权限。且,角色c的数据权限为可以访问到数据库a和数据库b的数据。那么,角色c可以为角色a和角色b分配配置数据权限。此时,数据权限配置界面中显示的角色信息包括角色a和角色b。

如果角色c的数据权限为可以访问到数据库a的数据,那么,角色c仅可以为角色a配置数据权限。此时,数据权限配置界面中显示的角色信息包括角色a,而并不包括角色b。

如果角色c的数据权限为可以访问到数据库b的数据,那么,角色c仅可以为角色b配置数据权限。此时,数据权限配置界面中显示的角色信息包括角色b,而并不包括角色a。

当然,数据权限配置界面中显示的角色信息可以为此租户信息下所有的角色信息,而并不受到具有数据权限配置角色的数据权限的限制。

从显示的所有角色信息中选择一个角色信息。

s208、从访问到的数据中,选择对所述待配置角色信息进行配置的待配置数据;

例如,选择的待配置角色信息为技术组项目经理,从数据权限配置界面上呈现的数据实体表信息中选择待配置数据。

一个数据实体表信息对应一个数据表,数据表中存储有此实体的多项数据。例如,供应商基本信息这一数据实体表信息,其对应存储有供应商基本信息的数据表。物料分类的这一数据实体表信息,其对应存储有物料分类的数据表。

从显示的数据实体表信息中选择一个数据实体表信息,选择的数据实体表信息对应的数据表中存储的数据即为选择的待配置数据。

s209、获取所述待配置数据的属性信息;

待配置数据具有属性,例如,供应商基本信息这一数据实体表信息对应的数据表中存储的供应商信息,其具有的属性包括创建人、创建时间、地点等。不同的待配置数据所具有的属性信息可能相同也可能不同。

s2010、根据所述属性信息和预设数据规则配置与所述待配置角色信息对应的数据权限;

预设数据规则包括7种类型的数据规则。分别为等于、不等于、大于、小于、in、notin、like;其中,等于表示数据实体的数据属性与所配置的规则参数相等;不等于表示数据实体的数据属性与所配置的规则参数不相等;大于表示数据实体的数据属性大于所配置的规则参数;小于表示数据实体的数据属性小于所配置的规则参数;in表示数据实体的数据属性属于所配置的规则参数范围内;notin表示数据实体的数据属性不属于所配置的规则参数的范围内;like表示数据实体的数据属性与所配置的规则参数模糊相似。

从获取到的待配置数据的属性信息中选择一个属性信息,并从预设数据规则中选择数据规则,然后输入属性参数,实现对数据权限的配置。

例如,供应商基本信息的属性信息为创建时间,且选择的数据规则为大于和小于,那么在数据规则为大于时输入创建时间为时间一的属性参数,在选择的数据规则为小于时输入创建时间为时间二的属性参数,为待配置角色信息配置的数据权限将为能够访问到供应商基本信息数据表中创建时间大于时间一且创建时间小于时间二的供应商基本信息。

可以仅根据供应商基本信息中的一个属性信息,选择数据规则配置数据权限,例如,仅根据创建时间这一属性信息配置数据权限。那么,数据权限将仅受到创建时间的限制。

还可以根据供应商基本信息中的多个属性信息,根据数据规则配置数据权限,例如,根据创建时间和创建人这两个属性信息配置数据权限。那么,需要分别根据创建时间和预设数据规则配置数据权限,根据创建人和预设数据规则配置数据权限,数据权限将受到创建时间和创建人的限制。

通过根据属性信息和预设数据规则配置数据权限,可以使得角色可以访问到的数据具有不同的数据颗粒度。实现了对数据权限的颗粒度的控制。

s2011、根据所述功能权限以及所述数据权限访问数据。

在本实施例中,还设置有控制数据权限开启和关闭的控制开关。所述控制开关开启时,表示角色的数据权限设置为具有配置数据权限的角色为其新配置的数据权限,例如,数据权限为供应商基本信息数据表中创建时间大于时间一且创建时间小于时间二的数据,数据权限的颗粒度细。所述控制开关关闭时,表示角色的数据权限不受到具有配置数据权限的角色为其新配置的数据权限的影响,仍然为初始的数据权限,例如,数据权限为供应商基本信息数据表中的全部数据,数据权限的颗粒度粗。

在步骤s2011执行之前,还包括判断数据权限的控制开关是否处于开启状态。

判断数据权限的控制开关处于开启状态,则按照新配置的数据权限访问数据;而判断数据权限的控制开关处于关闭状态时,即使为角色信息新配置了数据权限,此角色信息的数据权限也不会受到新配置数据权限的限制。

其中,按照新配置的数据权限访问数据的实现方式为:利用spring框架的aop技术,采用动态代理的方式,利用<aop:config>的方式配置数据权限,实现了对不能访问到的数据的拦截。进而实现对能够访问到的数据的限制,实现了对业务系统中访问权限的控制。

从上述技术方案可知,本实施例中通过接收用户信息,根据用户信息确定角色信息,根据角色信息获取与此角色信息对应的功能权限和数据权限;判断此角色的功能权限是否是配置数据权限,判断此角色的功能权限是配置数据权限,则进行数据权限的配置。通过设置具有配置数据权限的角色,使得此角色可以对需要调整数据权限的角色配置数据权限,实现了数据权限的灵活控制,能够灵活调整数据权限的颗粒度。同时,利用租户信息实现了将不同租户信息对应的数据隔离的目的,进一步提高了数据的安全性。且通过设置数据权限的控制开关,便于控制整个系统的数据权限。

对应上述数据权限的控制方法,本发明还提供了一种数据权限的控制装置,所述控制装置的结构示意图请参阅图3所示,本实施例中所述控制装置包括:

接收单元301、确定单元302、获取单元303、第一判断单元304、访问单元305、配置单元306和第二判断单元307;

接收单元301,用于接收用户信息;

确定单元302,用于根据所述用户信息,确定角色信息;

可选地,确定单元302包括:

第一确定子单元和第二确定子单元;

其中,第一确定子单元,用于根据所述用户信息,确定与所述用户信息对应的租户信息;其中,所述租户信息与至少一个角色信息存在对应关系;

第二确定子单元,用于从与所述租户信息对应的所有角色信息中,确定与所述用户信息对应的角色信息。

获取单元303,用于根据所述角色信息,获取与所述角色信息对应的功能权限以及数据权限;

第一判断单元304,用于判断所述功能权限是否是配置数据权限;

访问单元305,用于所述第一判断单元判断所述功能权限是配置数据权限时,根据与所述角色信息对应的数据权限访问数据;

访问单元305还用于所述第一判断单元判断所述功能权限不是配置数据权限时,根据所述功能权限以及所述数据权限,访问数据。

配置单元306,用于根据访问到的数据为至少一个角色信息配置新的数据权限。

可选地,配置单元306包括:

第一选择子单元、第二选择子单元、获取子单元和配置子单元;

其中,第一选择子单元,用于选择待配置角色信息;

第二选择子单元,用于从访问到的数据中,选择待配置数据;

获取子单元,用于获取所述待配置数据的属性信息;

配置子单元,用于根据所述属性信息和预设数据规则配置与所述待配置角色信息对应的数据权限。

第二判断单元307,用于判断所述数据权限的控制开关是否处于开启状态。

访问单元305还用于所述第二判断单元判断所述数据权限的控制开关处于开启状态时,根据所述功能权限以及所述数据权限访问数据。

从上述技术方案可知,本实施例中通过接收用户信息,根据用户信息确定角色信息,根据角色信息获取与此角色信息对应的功能权限和数据权限;判断此角色的功能权限是否是配置数据权限,判断此角色的功能权限是配置数据权限,则进行数据权限的配置。通过设置具有配置数据权限的角色,使得此角色可以对需要调整数据权限的角色配置数据权限,实现了数据权限的灵活控制,能够灵活调整数据权限的颗粒度。同时,利用租户信息实现了将不同租户信息对应的数据隔离的目的,进一步提高了数据的安全性。且通过设置数据权限的控制开关,便于控制整个系统的数据权限。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例提供的装置而言,由于其与实施例提供的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1