网络访问控制系统中XACML框架扩展系统及方法与流程

文档序号:12007371阅读:500来源:国知局
网络访问控制系统中XACML框架扩展系统及方法与流程
本发明属于计算机技术领域,更进一步涉及计算机网络安全技术领域中的一种可扩展访问控制标记语言(eXtensibleAccessControlMarkupLanguage,XACML)框架扩展系统及方法。本发明可用于网络访问控制系统中访问控制结果的冲突检测及冲突消解,生成可扩展访问控制标记语言策略规则,以确保网络访问控制系统中授权用户的正确访问,同时拒绝非授权用户的访问。

背景技术:
OASIS发布的可扩展访问控制标记语言XACML可通过多种属性类型定义细粒度的访问控制规则,但属性的细粒度化容易导致策略规则冲突,可扩展访问控制标记语言XACML中给出了若干冲突消解算法,从结果可判定角度规避了策略规则冲突对访问请求决策的影响,但其未能从管理角度分析造成冲突的细节原因,结果难以分析并容易造成权限泄漏。为了检测和消解策略规则冲突,目前的方法主要是在策略判定之前对策略规则进行策略,对可扩展访问控制标记语言XACML策略规则管理有如下方法:中国科学院软件研究所拥有的专利技术“一种XACML策略规则检测方法”(申请号200810119404.7授权公告号CN100592315C)提出针对XACML策略规则进行了规则状态定义、规则状态相关性定义、冲突类型分析,并在此基础上,建立了基于语义树的策略索引并实施具体的XACML策略规则检测。该方法的具体步骤是:第一,构建XACML策略规则分析的形式化模型;第二,制定XACML中的权限继承和权限蕴含规则;第三,定义XACML中规则状态的关系,分为状态覆盖、状态相交或状态无关;第四,通过描述属性层次操作关联类型;第五,建立基于资源语义树的策略索引结构;第六,运行基于属性层次操作关联的冲突检测算法;第七,运行基于状态相关的其他类型冲突检测算法。该专利技术存在的不足是:当一个网络访问控制系统中存在大量用户和大量资源,需要制定大量访问控制规则时,将每个规则中的属性进行形式化过于复杂,并且生成的策略索引树将很庞大,从而冲突检测效率很低下。因此该方法只适用于拥有少量用户和资源的网络访问控制系统中,只能检测少量访问控制规则之间的冲突,从而无法确保大量授权用户的正确访问和拒绝非授权用户的访问。F.Huang,Z.HuangandL.Liu发表的论文“ADL-basedmethodforaccesscontrolpolicyconflictdetecting”(Internetware,Beijing,China,2009,pp.1-5,ACM,USA)公开一种利用描述逻辑(DescriptionLogic,DL)将XACML策略规则形式化,利用推理工具的一致性检测功能对形式化的策略规则进行检测的方法。该方法的具体步骤是:第一,将XACML策略规则中的基本元素,如:Subject、Resource、Action和Effect元素及元素的属性映射到描述逻辑中的概念及概念之间的关系;第二,将每一个XACML策略规则相应映射为描述逻辑策略规则实例;第三,利用推理机的实例一致性检测功能对规则实例进行检测。该方法存在的不足是:由于描述逻辑缺乏足够支持访问控制规则语义的描述能力,当一个访问控制系统需要对拥有多个属性的授权用户进行访问控制,需要制定细粒度的访问控制规则时,用描述逻辑描述策略规则实例将很复杂,从而无法确保网络访问控制系统中拥有多属性的授权用户的正确访问。综上所述,目前的现有技术是将已制定好的XACML策略规则形式化后再进行冲突检测的方法,由于形式化方法的复杂性,只适用于检测少量访问控制规则之间的冲突,而用于检测大量访问控制规则之间的冲突时,检测的效率很低下,且很容易检测不出冲突,从而容易导致授权给用户的权限不一致和未授权用户的非法访问。由于描述逻辑缺乏足够支持访问控制规则语义的描述能力,当一个访问控制系统需要根据用户的多个属性进行决策时,基于描述逻辑无法描述细粒度的访问控制规则,从而无法检测出细粒度的访问控制规则之间的冲突,容易导致网络访问控制系统中权限的泄漏。

技术实现要素:
本发明的目的在于针对上述现有技术的不足,提出一种网络访问控制中扩展XACML框架系统和方法,将可扩展访问控制标记语言XACML框架中的策略管理点PAP进行扩展,以确保网络访问控制系统中授权用户的正确访问,同时拒绝非授权用户的访问。实现本发明目的的思路是,根据访问控制系统的访问控制要求,利用语义网规则语言SWRL制定访问控制规则、主体权限继承规则和主体权限蕴含规则,利用规则推理机自动推理生成访问控制规则对应的访问控制结果,并推理生成隐含的访问控制结果。对访问控制结果利用一致性检测推理机进行冲突检测,访问控制结果之间的冲突即反应了制定的对应的访问控制规则之间的冲突,从而完成对访问控制规则的冲突检测。当访问控制结果之间存在冲突时,利用语义网规则语言SWRL制定冲突消解规则,再通过规则推理机推理生成消解规则对应的访问控制结果,从而完成对访问控制规则的冲突消解。将最后没有冲突的访问控制结果和访问控制结果对应的访问主体和客体的本体,自动转换为可扩展访问控制标记语言XACML策略规则,为可扩展访问控制标记语言XACML框架中的策略决策点PDP提供用于决策的策略规则,提高网络访问控制系统中访问控制决策结果的一致性和正确性,从而确保网络访问控制系统中授权用户能够获得正确的和一致的访问操作权限,同时拒绝非授权用户的访问。本发明的系统,包括本体构建模块、规则制定模块、规则推理模块、一致性检测模块和策略规则生成模块,其中:本体构建模块,用于利用网络本体语言OWL,完成网络访问控制系统中的主体、客体、操作权限,以及主体和客体实例的属性的本体构建。规则制定模块,用于利用语义网规则语言SWRL,根据网络访问控制系统中主体对客体的访问控制要求、主体的上下级关系、客体的上下层关系和访问控制结果冲突消解算法类型,制定访问控制规则、主体权限继承规则、主体权限蕴含规则和冲突消解规则。规则推理模块,用于对本体构建模块构建的本体和规则制定模块制定的规则进行规则推理,生成规则制定模块中的规则所对应的访问控制结果。一致性检测模块,用于检测规则推理模块生成的访问控制结果之间是否存在冲突和冲突是否消解。策略规则生成模块,用于将规则推理模块中不存在冲突的访问控制结果,以及本体构建模块中对应此访问控制结果的主体和客体的本体,转换为可扩展访问控制标记语言XACML格式的访问控制策略规则,为可扩展访问控制标记语言XACML框架中的策略决策点PDP提供用于决策的策略规则。本发明的方法,包括步骤如下:(1)构建本体:(1a)本体构建模块将网络访问控制中发起请求的主体集合和请求操作的客体集合,利用网络本体语言OWL,分别定义为主体类和客体类;(1b)将发起请求的主体定义为主体类的实例,将操作的客体定义为客体类的实例;(1c)将主体实例与不同类型数值的关系,用网络本体语言OWL的数据属性表示;(1d)将主体实例对客体实例的操作权限,用网络本体语言OWL的对象属性表示。(2)制定规则:(2a)规则制定模块将主体实例本体和客体实例本体的连接,作为语义网规则语言SWRL访问控制规则的前提,将该主体对该客体拥有的操作权限,作为语义网规则语言SWRL访问控制规则的结论;(2b)将下级主体的正向操作权限和上下级主体实例本体的连接,作为语义网规则语言SWRL权限继承规则的前提,将上级主体继承自下级主体对该客体的正向操作权限,作为语义网规则语言SWRL权限继承规则的结论;(2c)将主体对上层客体的负向操作权限和上下层客体实例本体的连接,作为语义网规则语言SWRL权限蕴含规则的前提,将该主体对该下层客体的负向操作权限,作为语义网规则语言SWRL权限蕴含规则的结论。(3)生成访问控制结果:规则推理模块中的规则推理机,生成访问控制规则对应的访问控制结果,并生成隐含的本体知识和访问控制结果;(4)检测是否存在冲突:一致性检测模块中的一致性检测推理机,检测生成的访问控制结果之间是否存在冲突,若存在,则执行步骤(5);否则,执行步骤(7)。(5)消解冲突:(5a)根据访问控制结果之间的冲突类型和访问控制系统中的访问控制要求,选择访问控制结果冲突消解算法类型;(5b)规则制定模块根据访问控制结果冲突消解算法类型,将冲突的两个访问控制结果的连接作为语义网规则语言SWRL冲突消解规则的前提,将冲突消解后的访问控制结果作为语义网规则语言SWRL冲突消解规则的结论;(5c)将冲突消解规则输入到规则推理模块,根据冲突消解规则,利用规则推理机,生成冲突消解规则对应的访问控制结果。(6)检测冲突是否消解:一致性检测模块中的一致性检测推理机,检测经过步骤(5)后,访问控制结果之间的冲突是否消解,若是,则执行步骤(7);否则,执行步骤(5)。(7)生成可扩展访问控制标记语言策略规则:策略规则生成模块中的可扩展标记语言XML文本转换器,将生成的不存在冲突的访问控制结果,以及构建的本体中对应此访问控制结果的主体和客体的本体,转换成可扩展访问控制标记语言XACML格式的访问控制策略规则,为可扩展访问控制标记语言XACML框架中的策略决策点PDP提供用于决策的策略规则。本发明与现有技术相比较具有如下优点:第一,本发明的系统通过规则制定模块、规则推理模块和一致性检测模块的引入,利用推理机的自动化特点,克服了现有技术只适用于检测少量访问控制规则之间的冲突,而用于检测大量访问控制规则之间的冲突时,检测的效率很低下,且很容易检测不出冲突,从而容易导致和未授权用户的非法访问的不足,使得本发明减小了对访问控制规则进行冲突检测的复杂性,提高了对访问控制规则进行冲突检测的效率,适用于拥有大量访问控制规则的网络访问控制系统中。此外,通过推理机能自动挖掘出隐含的访问控制结果,从而能检测出隐含访问控制规则之间的冲突,提高了冲突检测的正确率,从而使授权用户的访问结果一致,且阻止非法用户的访问。第二,本发明利用语义网规则语言SWRL制定访问控制规则,克服了现有技术由于描述逻辑缺乏足够支持访问控制规则语义的描述能力,无法检测出细粒度的访问控制规则之间的冲突,容易导致网络访问控制系统中权限泄漏的不足,使得本发明适用于访问控制系统中的访问主体有多个属性需要匹配,需要制定细粒度的复杂的访问控制规则的访问控制系统中,避免了由于无法匹配主体的某个属性而导致的未授权用户对资源的非法访问。附图说明图1是本发明系统的模块图;图2是本发明方法的流程图。具体实施方式下面结合附图对本发明做进一步描述。参照图1,本发明的系统,将可扩展访问控制标记语言XACML框架中的策略管理点PAP进行扩展,完成对访问控制结果的冲突检测及冲突消解和生成没有冲突的可扩展访问控制标记语言XACML,为可扩展访问控制标记语言XACML框架中的策略决策点PDP提供用于决策的没有冲突的策略规则,提高了访问控制系统中访问决策的准确性,以确保网络访问控制系统中授权用户的正确访问,同时拒绝非授权用户的访问。该系统包括本体构建模块1、规则制定模块2、规则推理模块3、一致性检测模块4和策略规则生成模块5。本体构建模块1用于利用网络本体语言OWL,完成网络访问控制系统中的主体、客体、操作权限,以及主体和客体实例的属性的本体构建,为规则制定模块2提供用于制定规则的本体。规则制定模块2用于利用语义网规则语言SWRL,根据网络访问控制系统中主体对客体的访问控制要求、主体的上下级关系、客体的上下层关系和访问控制结果冲突消解算法类型,制定访问控制规则、主体权限继承规则、主体权限蕴含规则和冲突消解规则。规则推理模块3用于对本体构建模块1构建的本体和规则制定模块2制定的规则进行规则推理,生成规则制定模块2中的规则所对应的访问控制结果。一致性检测模块4用于检测规则推理模块3生成的访问控制结果之间是否存在冲突和冲突是否消解。策略规则生成模块5用于将规则推理模块3中不存在冲突的访问控制结果,以及本体构建模块1中对应此访问控制结果的主体和客体的本体,转换为可扩展访问控制标记语言XACML格式的访问控制策略规则,为可扩展访问控制标记语言XACML框架中的策略决策点PDP提供用于决策的策略规则。参照图2,本发明的方法包括步骤如下:步骤1,构建本体。本体构建模块1中的protégé本体编辑器,将网络访问控制中发起请求的主体集合和请求操作的客体集合,分别定义为网络本体语言OWL主体类和客体类。本发明的实施例中定义一个主体类Subject和一个客体类Object。主体是指访问操作的主动发起者,通常指用户,或代表用户意图运行的进程,客体是指访问操作的对象,通常是ftp服务器、web服务器、邮件服务器或文件服务器上的资源。将发起请求的具有相同角色类型的主体归入一个集合中,并作为主体类的子类,这里的角色类型是按照一个网络访问控制系统中的访问主体的职责或者分工进行分类,本发明的实施例中定义一个访问控制系统中有主管者Manager,其下级主体是工程师Engineer,将Manager和Engineer都作为主体类Subject的子类。将每个访问控制请求所能操作的客体归入一个集合中,并作为客体类的子类,本发明的实施例中的访问控制系统中有文件资源“Document/”,其下层文件资源是“Document/TechnicalDoc”,则定义Document和TechnicalDoc是客体类Object的子类。将发起请求的主体定义为主体类的实例,将操作的客体定义为客体类的实例,本发明的实施例中定义manager是类Manager的实例。将操作的一个具体资源定义为客体类或客体类的实例,本发明的实施例中定义document是类Document的实例。将主体实例与不同类型数值的关系,用网络本体语言OWL的数据属性表示。主体实例与不同类型数值的关系表示主体实例拥有的属性,本发明的实施例中定义数据属性has_trustLevel表示主体实例manager的信任级属性,表示为has_trustLevel(manager,trustLevel)。将主体实例对客体实例的操作权限,用网络本体语言OWL的对象属性表示。所述的主体实例对客体实例的操作权限包括六种:允许读出、拒绝读出、允许写入、拒绝写入、允许删除和拒绝删除。本发明的实施例中采用如下对象属性,分别将上述六种操作权限表示为permit_read、permit_write、permit_delete、deny_read、deny_write、deny_delete。定义允许读出和拒绝读出是互斥对象属性、允许写入和拒绝写入是互斥对象属性、允许删除和拒绝删除是互斥对象属性;允许读出和拒绝读出是互斥对象属性,用网络本体语言OWL可表示为:DisjointObjectProperties(permit_read,deny_read)。步骤2,制定规则。规则制定模块2语义网规则语言SWRL编辑器,在上述网络本体语言OWL本体的基础上,根据网络访问控制系统中的主体对客体的访问控制要求制定访问控制规则。将主体实例本体和客体实例本体的连接,作为语义网规则语言SWRL访问控制规则的前提,将该主体对该客体拥有的操作权限,作为语义网规则语言SWRL访问控制规则的结论。本发明的实施例中采用如下访问控制规则:访问控制系统允许主体实例的本体是:该本体实例是类Manager的实例,且该实例的信任级属性has_trustLevel的值大于3,若主体实例符合上述的主体实例的本体,则允许该主体读出客体类Document里的资源,用语义网规则语言SWRL表示该规则,如下:Manager(?subject)∧has_trustLevel(?subject,?trustLevel)∧swrlb:greaterThan(?trustLevel,3)∧Document(?object)→permit_read(?subject,?object)上述规则中,变量?subject表示主体类Manager中的实例,变量?trustLevel表示主体实例拥有的信任值,swrlb:greaterThan(?trustLevel,3)表示该信任值大于3,变量?object表示客体类Document中的实例,permit_read(?subject,?object)是该规则对应的访问控制结果,表示当一个主体对一个客体的满足规则的前提时,则主体?subject对?object拥有的操作权限是permit_read,其中访问控制结果是指一个主体对一个客体拥有的操作权限,本发明的实施例中采用如下访问控制结果:主体实例manager对客体实例document的操作权限是permit_read,访问控制结果可表示为:permit_read(manager,document)。根据访问控制系统中主体的上下级关系制定主体权限继承规则,将下级主体的正向操作权限和上下级主体实例本体的连接,作为语义网规则语言SWRL权限继承规则的前提,将上级主体继承自下级主体对该客体的正向操作权限,作为语义网规则语言SWRL权限继承规则的结论。所述的正向操作权限是指允许读出、允许写入和允许删除。主体权限继承规则表示上层主体继承下层主体的所有正向权限,本发明的实施例中采用如下权限蕴含规则:上层主体Manager继承下层主体Engineer对Document里的资源的允许读出操作权限,用语义网规则语言SWRL表示该规则,如下:Engineer(?subject1)∧Document(?object)∧permit_read(?subject1,?object)∧Manager(?subject)→permit_read(?subject,?object)上述规则中,变量?subject表示主体类Manager中的实例,变量?object表示客体类Document中的实例,permit_read(?subject1,?object)表示主体?subject1对?object拥有的操作权限是permit_read,permit_read(?subject,?object)是该规则对应的访问控制结果,表示当一个主体对一个客体的满足规则的前提时,则主体?subject对?object拥有的操作权限是permit_read。根据访问控制系统中客体的上下层关系制定主体权限蕴含规则。将主体对上层客体的负向操作权限和上下层客体实例本体的连接,作为语义网规则语言SWRL权限蕴含规则的前提,将该主体对该下层客体的负向操作权限,作为语义网规则语言SWRL权限蕴含规则的结论。所述的负向操作权限是指拒绝读出、拒绝写入和拒绝删除。主体权限蕴含规则表示主体对上层资源的负向操作权限蕴含该主体对该上层资源的下层资源拥有该负向操作权限,本发明的实施例中采用如下权限蕴含规则:一个主体对上层资源Document的拒绝读出权限蕴含该主体对下层资源TechnicalDoc的拒绝读出,用语义网规则语言SWRL表示如下:Manager(?subject)∧Document(?object)∧deny_read(?subject,?object)∧TechnicalDoc(?object1)→deny_read(?subject,?object1)上述规则中,变量?subject表示主体类Manager中的实例,变量?object表示客体类Document中的实例,deny_read(?subject,?object)表示主体?subject对?object拥有的操作权限是deny_read,deny_read(?subject,?object1)是该规则对应的访问控制结果,表示当一个主体对一个客体的满足规则的前提时,则表示主体?subject对?object1拥有的操作权限是deny_read。由于语义网规则语言SWRL具有丰富的语义表达能力,且内置了很多函数,所以利用语义网规则语言SWRL能够制定细粒度的访问控制规则:将访问控制规则的前提表示出访问控制主体的多个属性,从而避免了由于描述逻辑DL无法表示多个主体属性而导致的权限泄露和访问控制主体对网络系统的资源的非法访问。步骤3,生成访问控制结果。本发明的实施例中采用Java专家系统外壳Jess规则推理引擎,将步骤1构建的本体和步骤2制定的规则调入规则推理模块3的Java专家系统外壳Jess规则推理引擎中,利用Java专家系统外壳Jess中的SWRLJessTab插件,分别将网络本体语言OWL格式的本体和语义网规则语言SWRL格式的规则,转换为符合Java专家系统外壳Jess规则推理引擎格式要求的事实库和规则库。运行Java专家系统外壳Jess规则推理引擎,推理生成访问控制规则对应的访问控制结果,并推理生成隐含的本体知识,以及主体权限继承规则和主体权限蕴含规则对应的访问控制结果。所述的访问控制结果是指,一个主体对一个客体拥有的操作权限。对推理生成的访问控制结果,利用Java专家系统外壳Jess中的SWRLJessTab插件,进行格式转换,转换为网络本体语言OWL格式的访问控制结果。由于规则推理机能够自动挖掘出访问控制系统中隐含的访问控制结果,从而提高了访问控制规则的冲突检测的准确性,而不会遗漏潜在的冲突,确保了网络访问控制系统能够对授权用户做出一致的访问控制结果,避免用户无法正确得到访问控制操作权限。步骤4,检测是否存在冲突。利用一致性检测模块4的一致性检测推理机,检测步骤3推理生成的访问控制结果之间是否存在冲突,若存在,则执行步骤5;否则,执行步骤7。所述的冲突是指,访问控制结果中,如果一个访问控制结果是一个主体对一个客体拥有一个操作的正向权限,而另一个访问控制结果是该主体对该客体拥有该操作的负向权限,则认为这两个访问控制结果之间存在冲突。访问控制结果之间发生冲突的原因是,如果一个访问控制结果是一个主体对一个客体拥有一个操作的正向权限,而另一个访问控制结果是该主体对该客体拥有该操作的负向权限,则认为这两个访问控制结果之间存在冲突。本发明的实施例中定义主体实例manager对客体实例document既有读出操作的正向权限和负向权限,即访问控制结果分别为:permit_read(manager,document)和deny_read(manager,document),又由于在本体构建中定义permit_read和deny_read是互斥对象属性,即一个主体实例不能对一个客体实例同时拥有这两个互斥的对象属性,经过一致性推理机推理后即能检测出本体之间的不一致性。因为检测访问控制结果的冲突,能反应出访问控制结果对应的访问控制规则之间存在冲突,所以通过检测访问控制结果之间的冲突即能检测出访问控制规则之间的冲突。因为一致性检测推理检测冲突是自动化的过程,能够大大增加冲突检测的准确度,并提高了冲突检测的效率,从而适用于对大量访问控制结果的冲突检测。步骤5,消解冲突。根据访问控制结果之间的冲突类型和访问控制系统中的访问控制要求,选择访问控制结果冲突消解算法类型。访问控制结果之间的冲突类型包括:上级主体继承自下级主体的正向权限与自身的负向权限之间的冲突;主体对上层客体的负向权限蕴含的对下层客体的负向权限与主体自身对下层客体的正向权限之间的冲突。所述的访问控制结果冲突消解算法的类型包括:允许优先、拒绝优先和显性规则优先三种类型;其中允许优先类型是指,如果一个主体对一个客体同时拥有一个操作的正向权限和负向权限,则使该主体对该客体只拥有该操作的正向权限;拒绝优先类型是指,如果一个主体对一个客体同时拥有一个操作的正向权限和负向权限,则使该主体对该客体的只拥有该操作的负向权限;显性规则优先类型是指,如果一个主体对一个客体同时拥有一个操作的正向权限和负向权限,则使该主体对该客体拥有显性访问控制规则对应的访问控制结果。利用规则制定模块2的语义网规则语言SWRL编辑器,根据访问控制结果冲突消解算法类型,利用语义网规则语言SWRL,制定冲突消解规则。本发明的实施例中,有主体实例manager对客体实例既有读出操作的正向权限和负向权限,即访问控制结果分别为:permit_read(manager,document)和deny_read(manager,document),如果选择允许优先的冲突消解算法类型,则需要制定如下的语义网规则语言SWRL冲突消解规则:permit_read(?subject,?object)∧deny_read(?subject,?object)∧Manager(?subject)∧Document(?object)→permit_read1(?subject,?object)上述冲突消解规则重新定义操作权限permit_read1,而不用原来的对应的操作权限permit_read,是因为SWRL推理是基于单调推理,也就是说SWRL不能修改现有的本体知识。将冲突消解规则调入规则推理模块3的Java专家系统外壳Jess规则推理引擎中,根据冲突消解规则,自动生成冲突消解规则对应的访问控制结果。通过访问控制结果的冲突消解,能够使网络访问控制系统中的用户得到一致的访问控制权限,确保了授权用户的正确访问。步骤6,检测冲突是否消解。利用一致性检测模块4的一致性检测推理机,检测步骤5根据冲突消解规则生成的访问控制结果之间的冲突是否消解,若是,则执行步骤7;否则,执行步骤5。步骤7,生成可扩展访问控制标记语言策略规则。策略规则生成模块5中的可扩展标记语言XML文本转换器,将步骤3和步骤5生成的不存在冲突的访问控制结果,以及步骤1构建的本体中对应此访问控制结果的主体和客体的本体,转换成可扩展访问控制标记语言XACML格式的访问控制策略规则,为可扩展访问控制标记语言XACML框架中的策略决策点PDP提供用于决策的策略规则。由于可扩展访问控制标记语言XACML框架中的策略决策点PDP,是根据该框架中的策略管理点PAP生成的可扩展访问控制标记语言XACML策略规则进行决策,策略规则之间的一致性,确保了决策得出的访问控制结果一致,并且,经过冲突消解后得出的正确的访问控制结果,确保了决策得出正确的访问控制结果。由此本发明提出的网络访问控制中扩展XACML框架系统和方法,确保了网络访问控制系统中授权用户的正确访问,同时拒绝非授权用户的访问,从而增强了网络的安全性。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1