CN103004135A - 访问控制方法及访问控制服务器 - Google Patents

访问控制方法及访问控制服务器 Download PDF

Info

Publication number
CN103004135A
CN103004135A CN2011800012361A CN201180001236A CN103004135A CN 103004135 A CN103004135 A CN 103004135A CN 2011800012361 A CN2011800012361 A CN 2011800012361A CN 201180001236 A CN201180001236 A CN 201180001236A CN 103004135 A CN103004135 A CN 103004135A
Authority
CN
China
Prior art keywords
access
main body
access control
operating right
request
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2011800012361A
Other languages
English (en)
Other versions
CN103004135B (zh
Inventor
张彬
李国辉
李岩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of CN103004135A publication Critical patent/CN103004135A/zh
Application granted granted Critical
Publication of CN103004135B publication Critical patent/CN103004135B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/02Standardisation; Integration
    • H04L41/0213Standardised network management protocols, e.g. simple network management protocol [SNMP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/101Access control lists [ACL]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供一种访问控制方法及访问控制服务器。该方法包括:访问控制服务器解析接收到的访问请求,提取访问请求中的主体、客体和请求操作;在访问控制策略文件查找访问请求中的客体,根据查找到客体的访问控制标签,确定访问请求中的主体对访问请求中的客体的操作权限;访问控制策略文件为基于XML Schema文档生成的模型树XML文档,模型树XML文档的元素为访问控制的客体,模型树XML文档的元素的访问控制标签定义有允许访问客体的主体和主体对客体的操作权限;访问控制服务器将访问请求中的请求操作与查找到的访问请求中主体的操作权限进行匹配,根据匹配结果确定访问决策,并返回包括访问决策的访问应答。

Description

访问控制方法及访问控制服务器
技术领域
本发明实施例涉及网络技术, 尤其涉及一种访问控制方法及访问控制 服务器。 背景技术
在网络管理***中包含两类网络设备: 网络管理站和被管设备。 网络 管理员操纵网络管理站向被管设备发出访问请求, 比如查询设备状态的请 求、 或修改设备配置参数的请求。 被管设备接收到访问请求后, 按访问请 求执行操作, 然后向网络管理站应答操作结果。 网络管理站和被管设备间 的报文交互需遵从网络配置协议 (Network Configuration Protocol, 简称 NETCONF ) , NETCONF提供了安装、 操作和删除网络设备配置的机制。
为了网络设备的安全, 需要对访问被管设备的访问请求进行访问控 制。 不同网络管理员具有不同的访问权限, 不同网络管理员允许访问的网 管数据的子集也不同, 因此访问控制服务器接收到访问请求后, 需判断该 网络管理请求是否符合预先定义的访问策略, 对于符合策略的访问请求予 以执行。 根据用户身份来限制用户对某些信息项的访问的过程称为访问控 制。
NETCONF采用可扩展标记语言( Extensible Markup Language , 简称
XML )语言描述网络管理站的访问请求和被管设备的应答报文以及网管数 据。 目前关于 XML文档的访问控制机制, 在访问策略的简洁性和直观性 都不能很好地使 NETCONF支持 XML文档的访问控制, 导致访问控制过 程中处理时间较长, 消耗的资源较多。 发明内容 本发明实施例提供一种访问控制方法及访问控制服务器, 用以解决现 有 XML文档的访问控制过程处理时间较长, 消耗的资源较多的缺陷。
根据本发明实施例的一个方面, 本发明实施例提供一种访问控制方 法, 包括:
访问控制服务器解析接收到的访问请求, 提取所述访问请求中的主 体、 客体和请求操作;
在所述访问控制策略文件查找所述访问请求中的客体, 根据查找到客 体的访问控制标签, 确定所述访问请求中的主体对所述访问请求中的客体 的操作权限; 所述访问控制策略文件为基于 XML Schema文档生成的模型 树 XML文档, 所述模型树 XML文档的元素为访问控制的客体, 所述模 型树 XML文档的元素的访问控制标签定义有允许访问所述客体的主体和 所述主体对所述客体的操作权限;
所述访问控制服务器将所述访问请求中的请求操作与查找到的所述 访问请求中主体的操作权限进行匹配, 根据匹配结果确定访问决策, 并返 回包括所述访问决策的访问应答。
根据本发明实施例的另一个方面, 本发明实施例还提供一种访问控制 服务器, 包括:
提取模块, 用于访问控制服务器解析接收到的访问请求, 提取所述访 问请求中的主体、 客体和请求操作;
查找模块, 用于在所述访问控制策略文件查找所述访问请求中的客 体, 根据查找到客体的访问控制标签, 确定所述访问请求中的主体对所述 访问请求中的客体的操作权限; 所述访问控制策略文件为基于 XML Schema文档生成的模型树 XML文档, 所述模型树 XML文档的元素为访 问控制的客体, 所述模型树 XML文档的元素的访问控制标签定义有允许 访问所述客体的主体和所述主体对所述客体的操作权限;
匹配模块, 用于所述访问控制服务器将所述访问请求中的请求操作与 查找到的所述访问请求中主体的操作权限进行匹配;
决策模块, 用于根据匹配结果确定访问决策, 并返回包括所述访问决 策的访问应答。
本发明实施例提供的访问控制方法及访问控制服务器, 将存储网络配 置协议的 XML Schema文档转换成模型树 XML文档, 用模型树 XML文 档中的元素定义访问控制的客体, 通过元素的访问控制标签定义不同主体 对该客体的操作权限, 从而为网络配置协议建立了访问策略文件。 由于访 问策略文件基于模型树 XML文档, 相对于 XML文档而言短小简练, 用 访问请求中提取的客体在模型树 XML文档中查找访问控制的客体, 相对 于在 XML文档中查找客体的处理效率会较高。查找访问请求中该客体后, 根据客体的访问控制标签中的定义内容, 可快速获取访问请求中的主体对 该客体的操作权限。 因此, 访问控制服务器处理访问请求的时间较短, 消 耗的资源较少。 附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案, 下面将对实 施例或现有技术描述中所需要使用的附图作一简单地介绍, 显而易见地, 下 面描述中的附图是本发明的一些实施例, 对于本领域普通技术人员来讲, 在 不付出创造性劳动性的前提下, 还可以根据这些附图获得其他的附图。
图 1为本发明实施例提供的一种访问控制方法流程图;
图 2为本发明实施例提供的一种访问策略文件的建立方法流程图; 图 3为本发明实施例提供的另一种访问控制方法流程图;
图 4A为本发明实施例提供的一种访问控制服务器实施例结构示意 图;
图 4B为本发明实施例提供的另一种访问控制服务器实施例结构示意 图; 图 5为图 4A或图 4B中查找模块的结构示意图;
图 6为图 4A或图 4B中匹配模块的结构示意图;
图 7为图 4A或图 4B中决策模块的结构示意图。 具体实施方式
为使本发明实施例的目的、 技术方案和优点更加清楚, 下面将结合本 发明实施例中的附图, 对本发明实施例中的技术方案进行清楚、 完整地描 述, 显然, 所描述的实施例是本发明一部分实施例, 而不是全部的实施例。 基于本发明中的实施例, 本领域普通技术人员在没有做出创造性劳动前提 下所获得的所有其他实施例, 都属于本发明保护的范围。
XML 文件中的内容是受到约束的, 这些约束包括: 词汇的约束、 元 素取值的约束和文档结构的约束。 词汇的约束, 即约束 XML文件中可以 出现的元素和属性,例如,约束一个 XML文件中只能出现< 6^011>、 <age>、 <name>元素, 除此以外不能有其他元素; 元素取值的约束, 例如描述年龄 的< §6>元素, 约束 < §6>元素的值必须是整数, 而不能是小数, 并且不能 小于 0, 也不能 >200; 文档结构的约束, 即元素间的嵌套关系 (父子关系) 和子元素出现的顺序。例如约束 <a>元素必须包含 <b>元素,可选的包含 <c> 元素; <b>元素在 <a>元素中至少出现 1次, 最多可以出现 4次; <b>、 <c> 同为 <a>的子元素, 但 <b>元素必须排在 <c>元素的前面。 用于描述这些约 束规则的文件称为 XML建模( XML schema ) 文件, 一个 XML文件应当 遵从一个或多个 XML schema文件的约束。 XML schema文件用建模语言 写作而成, 不同的建模语言有不同的语法和格式, 当前比较常用的建模语 言有 XSD、 Relax NG。
如下实施例中, 访问控制服务器执行的各步骤以及访问控制服务器各 模块执行的功能均可由计算机等设备的处理器执行。 图 1为本发明实施例提供的一种访问控制方法流程图。 如图 1所示, 该访问控制方法包括:
步骤 11 : 访问控制服务器解析接收到的访问请求,提取所述访问请求 中的主体、 客体和请求操作。
网络管理员通过网络配置协议客户 (client ) 端向网络配置协议服务 ( server ) 端发送访问请求。 访问请求的客体可采用 NETCONF协议规定 的 XPATH表达式或者子树过滤表达式定义。 位于网络配置协议服务端的 访问控制服务器解析接收到的访问请求, 以获取其中包括的主体、 客体和 请求操作。 其中, 主体用于表示发出访问请求的网络管理员, 客体用于表 示服务端中被访问的网管数据, 请求操作表示主体请求对客体进行的操 作。
步骤 12:访问控制服务器在所述访问控制策略文件查找所述访问请求 中的客体, 根据查找到的客体的访问控制标签, 确定所述访问请求中的主 体对所述访问请求中的客体的操作权限。
访问策略文件中需针对每个客体定义可访问的主体和不同主体对该 客体的操作权限。本发明实施例将 XML Schema文档转换成包括元素树状 态结构关系的模型树 XML文档, 基于模型树 XML文档生成访问策略文 件。访问策略文件中客体为网管数据的抽象表达,而不是实际的网管数据。 模型树 XML文档中的元素为客体。 即客体用模型树 XML文档中的元素 来表达。 在各元素的访问控制标签中定义允许访问该客体的各个主体和各 个主体对该客体的操作权限, 定义有允许访问客体的主体和主体对该客体 的操作权限的模型树 XML文档称为访问策略文件。
步骤 13:访问控制服务器将所述访问请求中的请求操作与查找到的所 述主体的操作权限进行匹配, 根据匹配结果返回所述访问请求的访问应 答。
如果访问请求中的请求操作对应的权限与访问控制策略文件中定义 的访问请求中的主体对该客体的操作权限相同, 或者, 访问请求中的请求 操作对应的权限小于访问控制策略文件中定义的操作权限, 确定访问请求 中的请求操作与访问控制策略文件中定义的操作权限相匹配, 返回允许访 问的访问应答, 否则返回拒绝访问的访问应答。
本实施例提供的访问控制方法, 将存储网络配置协议的 XML Schema 文档转换成模型树 XML文档, 用模型树 XML文档中的元素定义访问控 制的客体, 通过元素的访问控制标签定义不同主体对该客体的操作权限, 从而为网络配置协议建立了访问策略文件。 由于访问策略文件基于模型树 XML文档, 相对于 XML文档而言短小简练, 用访问请求中提取的客体在 模型树 XML文档中查找访问控制的客体, 相对于在基于 XML文档的访 问策略文件中查找客体的处理效率会较高。 查找访问请求中该客体后, 根 据客体的访问控制标签中的定义内容, 可快速获取访问请求中的主体对该 客体的操作权限。 因此, 访问控制服务器处理访问请求的时间较短, 消耗 的资源较少。
图 2为本发明实施例提供的一种访问策略文件的建立方法流程图。 本 实施例以为 NETCONF建立访问策略文件为例进行说明。 如图 2所示, 该 方法包括:
步骤 21 : 将 NETCONF的 XML Schema文档转换成树状结构的模型 树 XML文档。
表 1为 XML Schema文档中部分内容。 表 2为基于表 1生成的 XML 模型文档。 如表 1 所示, 在 XML Schema 文档中 L11 行定义有一元素 "NetConfState" , 在 L17 行中定义了元素" NetConfState"的一个子元素 "capability" , 在 L25 行中定义了元素 "NetConfState"的另一个子元素 "schema"„ 如表 2所示, XML模型文档中建立了 XML Schema文档中的 元素结构关系。 其中, 元素 "NetConfState"为元素 "capability"和元素 "schema"的先辈客体。
表 1 NETCONF的 XML Schema文档中部分内容
L 7 < xs:sc ema> 表 2 基于表 1生成的 XML模型文档
<?XML version=" 1.0" encoding="UTF-8"?>
<mon:monitor XMLns:mon="urn:ietf:params:XML:ns:NetConf:state: 1.0"> < mon:NetConffitate >
< mon: capabilities > < mon: capability />
</ monxapabilities >
< mon:schemas >
< mon:schema/>
</ mon:schemas >
</ mon:NetConffitate >
< mon:monitorInfo/>
</ mon:monitor> 步骤 22: 将模型树 XML文档的每个元素作为访问控制的客体, 在每 个元素的访问控制标签中, 为相应客体定义允许访问该客体的主体和该主 体对该客体的操作权限。
本发明实施例定义了新的访问控制标签" sbacl", 用于在 XML模型文 档的元素上定义允许访问相应客体的主体和该主体对该客体的操作权限。 如表 3A所示, 本发明实施例采用以下形式 (客体 sbacl = "主体 : 操作 符") 为客体定义访问控制策略。
表 3A 本发明实施例为一个客体定义的访问控制策略
< mon: capabilities >
< mon:capability sbacl="priser: Ge"/>
</ monxapabilities > 表 3B 表 3A定义的访问控制策略中的客体
< mon: capabilities >
< mon: capability />
</ mon capabilities > 表 3B所示的内容为表 3A定义的访问策略文件中的客体, 其中元素 "capability"代表客体的名称。 如表 3A 所示的访问控制策略, 元素 "capability"的访问控制标签" sbacl"中显示定义了允许访问 "capability"的主 体为 priser, priser的操作权限为 "Ge,,。 在同一客体上为同一主体只能定义 唯一的操作权限。 在定义操作权限时, 可以根据需要将多个操作权限进行 合并。
基于表 2的模型 XML文档建立的访问策略文件如表 4所示。 如表 4 所示, 元素" NetConfState"的访问控制标签 sbacl 中显示定义了主体 "netconfuserl"的操作权限为 "Ge"。 元素 "NetConfState"的子元素 "capability"的访问控制标签 sbacl 中显示定义了 "netconfuser2"的操作权限 为" Ge,,。 元素" NetConfState"的子元素" schema"的访问控制标签 sbacl中没 有显示定义操作权限。 那么, 子元素 "schema"的操作权限, 可追溯到定义 有操作权限的 "schema"的最近先辈 "NetConfState"中定义的操作权限。
表 4 基于表 2的模型 XML文档建立的访问策略文件
<?XML version=" 1.0" encoding="UTF-8"?>
<mon:monitor XMLns:mon="urn:ietf:params:XML:ns:NetConf: state: 1.0"
sbacl combination =" Permit-overrides">
< mon:NetConffitate sbacl="netconfuserl: ge">
< mon: capabilities >
< mon: capability sbacl=" netconfuser2:g-"/>
</ monxapabilities >
< mon:schemas >
< mon:schema/>
</ mon:schemas >
</ mon:NetConffitate >
< mon:monitorInfo sbacl=" netconfuser3:g-; image:~"/>
</ mon:monitor> 以下先对本发明实施例定义的操作权限进行说明。在 NETCONF中主 要有 get、 get-config, edit-config等操作。 为了减少访问策略文件中的字符 串长度并方便使用,本发明实施例将 NETCONF的以上操作分别简化为 G, g, e 等操作符, 另外定义一个操作符 表示拒绝进行任何操作。 本发 明实施例定义的操作符与操作名的映射关系如表 5所示。
表 5 本发明实施例定义的一种操作符与操作名的映射关系 操作名 操作符 操作含义
Get G 获取配置和状态数据的操作 get-config g 获取配置数据的操作
edit-config e 编辑配置数据的操作 如表 5所示, NETCONF get操作和 get-config操作 , 相当于传统 ACL 中的读操作是性质相同、 范围大小不同的两个操作, 在每一条操作权限表 达式中,只能出现两者的一个。 NETCONF edit-config操作相当于传统 ACL 中的写操作。 按照 NETCONF协议, 在进行访问控制时, edit-config操作 可以与 get或是 get-config之一组合使用。 根据网络管理的实际需要, 在 对数据进行 edit-config操作时必须具有 get或 get-config操作权限, 因此, edit-config的权限大于 get和 get-config的权限; 另外, 由于 get操作既可 以获取状态数据也可以获取配置数据,使得 get操作的权限大于 get-config。 所以, get, get-config、 edit-config这三个权限大小的关系为: g<G<e。
本发明实施例中访问策略文件中操作符包含两个占位符, 一个是 R 位, 另一个 E位。 R位用于设置"读"操作权限, 可设置 "G/g/-,,操作, 分别 表示允许 get操作, get-config操作和不允许读操作。 E位用于设置"编辑" 操作权限, 可设置 "e/-,,操作符, 分别表示允许 edit-config操作和不允许编 辑。 按照上述定义, 两个占位符存在多种组合情形。 组合后的两个占位符 的含义描述如表 6所示。
表 6 组合后的两个占位符的含义描述
g- 允许 get-config , 但不允许 edit-config操作
― 不允许 get或是 get-config , 也不允许 edit-config操作 本实施例的访问策略文件中, 主体和操作权限均用简单的字符串表 达, 在处理访问请求时, 查找到访问请求的客体后, 主体的匹配和操作权 限的匹配较为简单。
图 3为本发明实施例提供的另一种访问控制方法流程图。 该访问控制 方法的执行主体为访问控制服务器。 如图 3所示, 该访问控制方法包括: 步骤 31 : 解析接收到的访问请求, 提取访问请求中的主体、 客体和请 求操作。
NETCONF访问请求的客体的定义可采用 XPATH或者子树过滤进 行定义。 NETCONF访问请求采用 XPATH定义请求的客体的一个实例如 表 7A所示。 假设发送 NETCONF访问请求的主体为 Netconfuser2。 从表 7A所示的访问请求解析出的访问请求三元组如表 7B所示。
表 7A 采用 XPATH定义 NETCONF访问请求的客体的一个实例
表 7B 从表 7 A所示的访问请求解析出的访问请求三元组 如表 7 A 所示, 采用 XPATH 来定义的 NETCONF 访问请求中, <get-config>表示主体的请求操作, select="// capability "表示主体访问请求 的客体, type="XPATH"表示访问请求采用的表达式为 XPATH。 如表 7B 所示, 从表 7A所示的访问请求中解析出, 主体 Netconfuser2的请求操作 为 get-config, 访问请求的客体为 capability。
NETCONF访问请求采用子树过滤表达式定义请求的客体的一个实例 如表 8A所示。 假设发送 NETCONF访问请求的主体为 Netconfuserl。 从 表 8A所示的访问请求解析出的访问请求三元组如表 8B所示.
表 8A 采用子树过滤表达式定义 NETCONF访问请求的客体的一个实例
表 8B 从表 8 A所示的访问请求解析出的访问请求三元组 如表 8A所示,采用子树过滤表达式来定义的 NETCONF访问请求中, <get >表示主体的请求操作, <filter type="subtree">表示访问请求采用的表 达式为子树过滤表达式, < mon: schemas />表示主体访问请求的客体。 ^口 表 8B所示,从表 8A所示的访问请求中解析出, 主体 Netconfuserl的请求 操作为 get, 访问请求的客体为 schemas。
步骤 32: 在访问控制策略文件的客体中查找访问请求中的客体。
步骤 33 :判断查找到的客体的访问控制标签是否显示定义有所述访问 请求中的主体的操作权限。 如果显示定义有该主体的操作权限, 执行步骤
34, 否则执行步骤 35。 步骤 34: 若显示定义有该主体的操作权限, 将显示定义的操作权限作 为该主体对该客体的操作权限。 之后, 执行步骤 36。
如果查找到的客体的访问控制标签显示定义有访问请求中的主体的 操作权限, 则将显示定义的操作权限作为访问请求中的主体对访问请求中 的客体的操作权限。
以表 7B解析出的访问请求三元组为例, 在表 4所示的访问策略文件 的所有客体中查找客体 "capability"。 "capability" 的访问控制标签 sbacl显 示定义有访问请求中的主体 "Netconfuser2" 的操作权限" G-",形成如表 7C 所示的操作权限表。
表 7C 根据表 7B查找到的操作权限表 步骤 35: 若没有显示定义所述主体的操作权限, 向上追溯定义有所述 主体的操作权限的所述客体的最近先辈客体, 将所述主体对所述最近先辈 客体的操作权限确定为所述主体对所述客体的操作权限。 之后, 执行步骤 36。
如果查找到的客体的访问控制标签没有显示定义访问请求中的主体 的操作权限, 则依次向上追溯该客体的先辈客体, 追溯到第一个显示定义 有该主体的操作权限的先辈客体为止, 以该先辈客体定义的操作权限作为 该客体的操作权限。 如果一直追溯到根元素仍然没有显示定义有操作公限 的先辈客体, 确定访问请求的主体没有访问该客体的操作权限。
以表 8B解析出的访问请求三元组为例, 在表 4所示的访问策略文件 的所有客体中查找客体" schemas"。客体" schemas"没有显示定义操作权限, 则向上追溯到客体" schemas"的先辈客体,发现定义有操作权限的最近先辈 客体为 "NetConf State", "NetConfState"的访问控制属性标签 sbacl 为主体 'netconfuserl :"定义的操作权限为" Ge",形成如表 8C所示的操作权限表。。
表 8C 根据表 8B查找到的操作权限表 步骤 36:判断所述访问请求的请求操作对应的权限是否在查找到的所 述主体的操作权限的范围内。 若在范围内, 执行步骤 37, 否则执行步骤 38。
步骤 37: 若在范围内, 确定所述访问请求的请求操作与查找到的所述 主体的操作权限匹配。 之后, 执行步骤 39。
例如, 表 7C 中的操作权限 "g-,,表示允许 get-config 操作, 不允许 edit-config操作, 表 7B中的请求操作为 "get-config" , 因此, 表 7B中的请 求操作 "get-config"对应的权限在表 7C 中的操作权限" g-,,的范围内, 因此 确定表 7A所示的访问请求的请求操作与查找到的操作权限相匹配。
步骤 38: 若不在范围内, 确定所述访问请求的请求操作与查找到的所 述主体的操作权限不匹配。 之后, 执行步骤 39。
例如,表 8C中的操作权限" ge"表示允许 get-config和 edit-config操作, 表 8B 中的请求操作为" get", get-config 的操作权限小于 get, 因此, 表 8B中的请求操作" get"对应的权限不在表 8C中操作权限" ge"的范围内, 因 此确定表 8A所示的访问请求的请求操作与查找到的操作权限不匹配。
步骤 39: 根据匹配结果返回访问应答。
本实施例在访问策略文件中查找到访问请求中的客体后, 优先查找该 客体为访问请求中的主体显示定义的操作权限。 如果没有查找到该客体为 访问请求中的主体显示定义的操作权限, 则依次向上追溯为该主体定义操 作权限的该客体的最近先辈客体, 将查找到的操作权限作为该主体的操作 权限, 如果没有查找到则确定拒绝访问该主体访问该客体。 进一步, NETC0NF访问请求中可能有多个客体,可针对每个客体做 出访问决策, 也可将针对每个客体做出的访问决策进行整合, 以做出最终 的访问决策。 访问控制策略文件还定义了访问请求中有多个客体时对访问 请求进行授权决策时采用的授权决策组合算法。 如表 4 所示, 在模型树 XML 文档的根元素上定义授权决策组合标签(sbacl— combination)。 sbacl— combination 的属性值包括: Deny-overrides 、 Permit-overrides、 All-permit和 All-deny。
从 NETCONF访问请求中解析出的包括多个客体的访问请求三元组如 表 9A所示, 如表 9A所示, 主体" Netconfuserl',在一次访问请求中需访问 三个客体 "AAA"、 "AA/BB"和 "ABC/DDD"。
表 9A 解析出的包括多个客体的访问请求三元组
在访问策略文件中查找表 9A中所有客体的操作权限, 根据表 9A中 的客体在访问策略文件中查找到的操作权限如表 9B所示。 如表 9B所示, 访问策略文件中客体" AAA"为主体 Netconfuserl定义的操作权限为 "g-,,, 访问策略文件中客体" AA/BB"为主体 Netconfuserl 定义的操作权限为 "G-",访问策略文件中客体 "ABC/DDD"为主体 Netconfuserl定义的操作权 限为" - -"。
表 9B 根据表 9A中的客体在访问策略文件中查找到的操作权限
在针对单客体做出访问决策时,将 9A中主体 "Netconfuserl',对每个客 体的请求操作,与表 9B中每个客体为主体" Netconfuserl',定义的操作权限 进行匹配, 根据每个客体的匹配结果做出如表 9C所示的针对每个客体的 访问决策, 在访问应答中包括每个客体的访问决策。
表 9C 针对表 9A中单客体做出访问决策
在针对所有客体做出最终的访问决策时, 对所有客体的访问决策进行 整合后,确定最终的访问决策,返回包括所述最终的访问决策的访问应答。 分另 ll采用授权决策组合算法: Deny-overrides算法、 Permit-overrides算法、 All-permit算法和 All-deny算法,对表 9C中每个访问决策进行整合后形成 的最终访问决策如表 9D所示。
表 9D 对表 9C中每个访问决策进行整合后形成的最终访问决策表
访问请求包括多个客体时, Deny-overrides 算法是指在所有客体的访 问决策中, 有一个访问决策是拒绝时, 不管其它访问决策如何, 都拒绝该 访问请求。 Permit-overrides算法是指指在所有客体的访问决策中, 当有一 个访问决策是许可时, 不管其它访问决策如何, 都许可该访问请求。
All-permit 算法是指在所有客体的访问决策中, 当全部客体的访问决策都 是许可时, 才许可该访问请求。 否则拒绝该访问请求。 All-deny算法是指 在所有客体的访问决策中, 当全部客体的访问决策都是拒绝时, 才拒绝该 访问请求。 否则许可该访问请求。
图 4A 为本发明实施例提供的一种访问控制服务器实施例结构示意 图。 如图 4A所示, 本实施例包括: 提取模块 41、 查找模块 42和匹配模 块 43以及决策模块 44。
提取模块 41 , 用于访问控制服务器解析接收到的访问请求,提取所述 访问请求中的主体、 客体和请求操作。
查找模块 42,用于在所述访问控制策略文件查找所述访问请求中的客 体, 根据查找到客体的访问控制标签, 确定所述访问请求中的主体对所述 访问请求中的客体的操作权限; 所述访问控制策略文件为基于 XML Schema文档生成的模型树 XML文档, 所述模型树 XML文档的元素为访 问控制的客体, 所述模型树 XML文档的元素的访问控制标签定义有允许 访问所述客体的主体和所述主体对所述客体的操作权限。
匹配模块 43 ,用于所述访问控制服务器将所述访问请求中的请求操作 与查找到的所述访问请求中主体的操作权限进行匹配。
决策模块 44, 用于根据匹配结果确定访问决策, 并返回包括所述访问 决策的访问应答。
以上各模块实现的功能可参见图 1对应实施例中描述,在此不再赘述。 本发明另一实施例提供的访问控制服务器如图 4B所示, 在图 4A基 础上还可以包括: 模型树生成模块 45和策略文件生成模块 46。
模型树生成模块 45 , 用于将网络配置协议的 XML Schema文档转换 成包括 XML Schema文档中元素结构关系的模型树 XML文档。
策略文件生成模块 46, 用于在所述模型树 XML文档的元素的访问控 制标签中定义允许访问所述客体的主体和所述主体对所述客体的操作权 限。 以上各模块实现的功能可参见图 2对应实施例中描述,在此不再赘述。 本实施例提供的访问控制服务器, 将存储网络配置协议的 XML Schema文档转换成模型树 XML文档, 用模型树 XML文档中的元素定义 访问控制的客体, 通过元素的访问控制标签定义不同主体对该客体的操作 权限, 从而为网络配置协议建立了访问策略文件。 由于访问策略文件基于 模型树 XML文档, 相对于 XML文档而言短小简练, 用访问请求中提取 的客体在模型树 XML 文档中查找访问控制的客体, 相对于在基于 XML 文档的访问策略文件中查找客体的处理效率会较高。 查找访问请求中该客 体后, 根据客体的访问控制标签中的定义内容, 可快速获取访问请求中的 主体对该客体的操作权限。 因此, 访问控制服务器处理访问请求的时间较 短, 消耗的资源较少。
图 5为图 4A或图 4B中查找模块的结构示意图。 如图 5所示, 查找 模块 42包括: 查找单元 421、 判断单元 422和第一确定单元 423。
查找单元 421 , 用于在所述访问控制策略文件查找所述访问请求中的 客体对应的元素。
判断单元 422, 用于判断查找到的客体的访问控制标签是否显示定义 有所述访问请求中的主体的操作权限。
第一确定单元 423 , 用于若显示定义有所述主体的操作权限, 将显示 定义的操作权限确定为所述主体对所述客体的操作权限。
如图 5所示, 进一步, 查找模块 42还包括: 第二确定单元 424。
第二确定单元 424, 用于若没有显示定义所述主体的操作权限, 向上 追溯定义有所述主体的操作权限的所述客体的最近先辈客体; 将所述主体 对所述最近先辈客体的操作权限确定为所述主体对所述客体的操作权限。
图 6为图 4A或图 4B中匹配模块的结构示意图。 如图 6所示, 匹配 模块 43包括:权限判断单元 431、第三确定单元 432和第四确定单元 433。
权限判断单元 431 , 用于判断所述访问请求的请求操作对应的权限是 否在查找到的所述主体的操作权限的范围内。
第三确定单元 432, 用于若在范围内, 确定所述访问请求的请求操作 与查找到的所述主体的操作权限匹配。
第四确定单元 433 , 用于若不在范围内, 确定所述访问请求的请求操 作与查找到的所述主体的操作权限不匹配。
本实施例在访问策略文件中查找到访问请求中的客体后, 优先查找该 客体为访问请求中的主体显示定义的操作权限。 如果没有查找到该客体为 访问请求中的主体显示定义的操作权限, 则依次向上追溯为该主体定义操 作权限的该客体的最近先辈客体, 将查找到的操作权限作为该主体的操作 权限, 如果没有查找到则确定拒绝访问该主体访问该客体。
图 7为图 4A或图 4B中决策模块的结构示意图。 如图 7所示, 决策 模块 44包括: 组合算法确定单元 441和决策单元 442。
组合算法确定单元 441 , 用于在所述访问请求中包括多个客体时, 根 据所述访问控制策略文件中根元素的授权决策组合标签, 确定授权决策组 合算法。
决策单元 442, 用于根据授权决策组合算法, 对所有客体的匹配结果 进行整合, 确定最终的访问决策, 返回包括所述最终的访问决策的访问应 答。
以上各模块实现的功能可参见图 3对应实施例中描述,在此不再赘述。 访问请求中可能有多个客体, 可针对每个客体做出访问决策, 也可将 针对每个客体做出的访问决策进行整合, 以做出最终的访问决策。
本领域普通技术人员可以理解: 实现上述方法实施例的全部或部分步 骤可以通过程序指令相关的硬件来完成, 前述的程序可以存储于一计算机 可读取存储介质中, 该程序在执行时, 执行包括上述方法实施例的步骤; 而前述的存储介质包括: ROM、 RAM, 磁碟或者光盘等各种可以存储程 序代码的介质。 最后应说明的是: 以上实施例仅用以说明本发明的技术方案, 而非对 其限制; 尽管参照前述实施例对本发明进行了详细的说明, 本领域的普通 技术人员应当理解: 其依然可以对前述各实施例所记载的技术方案进行修 改, 或者对其中部分技术特征进行等同替换; 而这些修改或者替换, 并不 使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (12)

  1. 权 利 要求 书
    1、 一种访问控制方法, 其特征在于, 包括:
    访问控制服务器解析接收到的访问请求, 提取所述访问请求中的主 体、 客体和请求操作;
    在访问控制策略文件查找所述访问请求中的客体, 根据查找到的客体 的访问控制标签, 确定所述访问请求中的主体对所述访问请求中的客体的 操作权限; 所述访问控制策略文件为基于可扩展标记语言 XML Schema文 档生成的模型树 XML文档, 所述模型树 XML文档的元素为访问控制的 客体, 所述模型树 XML文档的元素的访问控制标签定义有允许访问所述 客体的主体和所述主体对所述客体的操作权限;
    所述访问控制服务器将所述访问请求中的请求操作与查找到的所述 访问请求中主体的操作权限进行匹配, 根据匹配结果确定访问决策, 并返 回包括所述访问决策的访问应答。
  2. 2、 根据权利要求 1 所述方法, 其特征在于, 所述在所述访问控制策 略文件查找所述访问请求中的客体, 根据查找到的客体的访问控制标签, 确定所述访问请求中的主体对所述访问请求中的客体的操作权限, 包括: 在所述访问控制策略文件查找所述访问请求中的客体对应的元素; 判断查找到的客体的访问控制标签是否显示定义有所述访问请求中 的主体的操作权限;
    若显示定义有所述主体的操作权限, 将显示定义的操作权限作为所述 主体对所述客体的操作权限。
  3. 3、 根据权利要求 2所述方法, 其特征在于, 在所述判断查找到的客 体的访问控制标签是否显示定义有所述访问请求的主体的操作权限之后, 还包括:
    若没有显示定义所述主体的操作权限, 向上追溯定义有所述主体的操 作权限的所述客体的最近先辈客体; 将所述主体对所述最近先辈客体的操作权限确定为所述主体对所述 客体的操作权限。
  4. 4、 根据权利要求 2或 3所述方法, 其特征在于, 所述将所述访问请 求中的请求操作与查找到的所述访问请求中主体的操作权限进行匹配, 包 括:
    判断所述访问请求的请求操作对应的权限是否在查找到的所述主体 的操作权限的范围内;
    若在范围内, 确定所述访问请求的请求操作与查找到的所述主体的操 作权限匹配;
    若不在范围内, 确定所述访问请求的请求操作与查找到的所述主体的 操作权限不匹配。
  5. 5、 根据权利要求 4所述方法, 其特征在于, 在所述访问请求中包括 多个客体时, 所述根据匹配结果确定访问决策, 并返回包括所述访问决策 的访问应答, 包括:
    根据所述访问控制策略文件中根元素的授权决策组合标签, 确定授权 决策组合算法;
    根据授权决策组合算法, 对所有客体的匹配结果进行整合, 确定最终 的访问决策, 返回包括所述最终的访问决策的访问应答。
  6. 6、 根据权利要求 4、 5或 6所述方法, 其特征在于, 在所述解析接收 到的访问请求之前, 还包括:
    将网络配置协议的 XML Schema文档转换成包括 XML Schema文档中 元素结构关系的模型树 XML文档;
    在所述模型树 XML文档的元素的访问控制标签中定义允许访问所述 客体的主体和所述主体对所述客体的操作权限。
  7. 7、 一种访问控制服务器, 其特征在于, 包括:
    提取模块, 用于访问控制服务器解析接收到的访问请求, 提取所述访 问请求中的主体、 客体和请求操作;
    查找模块, 用于在访问控制策略文件查找所述访问请求中的客体, 根 据查找到客体的访问控制标签, 确定所述访问请求中的主体对所述访问请 求中的客体的操作权限; 所述访问控制策略文件为基于可扩展标记语言 XML Schema文档生成的模型树 XML文档 ,所述模型树 XML文档的元素 为访问控制的客体, 所述模型树 XML文档的元素的访问控制标签定义有 允许访问所述客体的主体和所述主体对所述客体的操作权限;
    匹配模块, 用于所述访问控制服务器将所述访问请求中的请求操作与 查找到的所述访问请求中主体的操作权限进行匹配;
    决策模块, 用于根据匹配结果确定访问决策, 并返回包括所述访问决 策的访问应答。
  8. 8、 根据权利要求 7所述访问控制服务器, 其特征在于, 所述查找模 块包括:
    查找单元, 用于在所述访问控制策略文件查找所述访问请求中的客体 3†应的元素;
    判断单元, 用于判断查找到的客体的访问控制标签是否显示定义有所 述访问请求中的主体的操作权限;
    第一确定单元, 用于若显示定义有所述主体的操作权限, 将显示定义 的操作权限确定为所述主体对所述客体的操作权限。
  9. 9、 根据权利要求 8 所述访问控制服务器, 其特征在于, 所述查找模 块还包括:
    第二确定单元, 用于若没有显示定义所述主体的操作权限, 向上追溯 定义有所述主体的操作权限的所述客体的最近先辈客体; 将所述主体对所 述最近先辈客体的操作权限确定为所述主体对所述客体的操作权限。
  10. 10、 根据权利要求 7、 8或 9所述访问控制服务器, 其特征在于, 所 述匹配模块还包括: 权限判断单元, 用于判断所述访问请求的请求操作对应的权限是否在 查找到的所述主体的操作权限的范围内;
    第三确定单元, 用于若在范围内, 确定所述访问请求的请求操作与查 找到的所述主体的操作权限匹配;
    第四确定单元, 用于若不在范围内, 确定所述访问请求的请求操作与 查找到的所述主体的操作权限不匹配。
  11. 11、 根据权利要求 8所述访问控制服务器, 其特征在于, 所述决策模 块包括:
    组合算法确定单元, 用于在所述访问请求中包括多个客体时, 根据所 述访问控制策略文件中根元素的授权决策组合标签, 确定授权决策组合算 法;
    决策单元, 用于根据授权决策组合算法, 对所有客体的匹配结果进行 整合, 确定最终的访问决策, 返回包括所述最终的访问决策的访问应答。
  12. 12、 根据权利要求 7至 11任一项所述的访问控制服务器, 其特征在 于, 还包括:
    模型树生成模块,用于将网络配置协议的 XML Schema文档转换成包 括 XML Schema文档中元素结构关系的模型树 XML文档;
    策略文件生成模块, 用于在所述模型树 XML文档的元素的访问控制 标签中定义允许访问所述客体的主体和所述主体对所述客体的操作权限。
CN201180001236.1A 2011-07-25 2011-07-25 访问控制方法及访问控制服务器 Expired - Fee Related CN103004135B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2011/001219 WO2012159231A1 (zh) 2011-07-25 2011-07-25 访问控制方法及访问控制服务器

Publications (2)

Publication Number Publication Date
CN103004135A true CN103004135A (zh) 2013-03-27
CN103004135B CN103004135B (zh) 2015-04-29

Family

ID=47216502

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201180001236.1A Expired - Fee Related CN103004135B (zh) 2011-07-25 2011-07-25 访问控制方法及访问控制服务器

Country Status (2)

Country Link
CN (1) CN103004135B (zh)
WO (1) WO2012159231A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109902497A (zh) * 2019-02-26 2019-06-18 南威软件股份有限公司 一种面向大数据集群的访问权限管理方法及***
CN112307486A (zh) * 2019-07-29 2021-02-02 华为技术有限公司 一种权限获取方法、设备和***
CN114553750A (zh) * 2022-02-24 2022-05-27 杭州迪普科技股份有限公司 基于网络配置协议的自动化测试方法及装置
CN115065529A (zh) * 2022-06-13 2022-09-16 北京寰宇天穹信息技术有限公司 一种基于融合主客体关键信息的可信标签的访问控制方法

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104424335A (zh) * 2013-09-11 2015-03-18 方正信息产业控股有限公司 Xml文档的访问控制方法和装置
CN111628975B (zh) * 2020-05-12 2023-06-27 中国人民银行清算总中心 一种组装xml报文的方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060288021A1 (en) * 2005-06-20 2006-12-21 Junichi Kojima Information processor, schema definition method and program
CN101582881A (zh) * 2008-05-14 2009-11-18 华为技术有限公司 访问控制方法和装置
CN101794312A (zh) * 2010-03-08 2010-08-04 上海交通大学 基于安全视图的xml访问控制方法
CN101976249A (zh) * 2010-10-12 2011-02-16 中国科学院软件研究所 一种空间数据库的访问控制方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101727545A (zh) * 2008-10-10 2010-06-09 中国科学院研究生院 一种安全操作***强制访问控制机制的实施方法
CN101452397B (zh) * 2008-11-27 2012-08-22 上海交通大学 虚拟化环境中的强制访问控制方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060288021A1 (en) * 2005-06-20 2006-12-21 Junichi Kojima Information processor, schema definition method and program
CN101582881A (zh) * 2008-05-14 2009-11-18 华为技术有限公司 访问控制方法和装置
CN101794312A (zh) * 2010-03-08 2010-08-04 上海交通大学 基于安全视图的xml访问控制方法
CN101976249A (zh) * 2010-10-12 2011-02-16 中国科学院软件研究所 一种空间数据库的访问控制方法

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109902497A (zh) * 2019-02-26 2019-06-18 南威软件股份有限公司 一种面向大数据集群的访问权限管理方法及***
CN112307486A (zh) * 2019-07-29 2021-02-02 华为技术有限公司 一种权限获取方法、设备和***
CN114553750A (zh) * 2022-02-24 2022-05-27 杭州迪普科技股份有限公司 基于网络配置协议的自动化测试方法及装置
CN114553750B (zh) * 2022-02-24 2023-09-22 杭州迪普科技股份有限公司 基于网络配置协议的自动化测试方法及装置
CN115065529A (zh) * 2022-06-13 2022-09-16 北京寰宇天穹信息技术有限公司 一种基于融合主客体关键信息的可信标签的访问控制方法
CN115065529B (zh) * 2022-06-13 2023-11-03 北京寰宇天穹信息技术有限公司 一种基于融合主客体关键信息的可信标签的访问控制方法

Also Published As

Publication number Publication date
CN103004135B (zh) 2015-04-29
WO2012159231A1 (zh) 2012-11-29

Similar Documents

Publication Publication Date Title
US9430662B2 (en) Provisioning authorization claims using attribute-based access-control policies
US8924415B2 (en) Schema mapping and data transformation on the basis of a conceptual model
US7120869B2 (en) Enhanced mechanism for automatically generating a transformation document
US7305414B2 (en) Techniques for efficient integration of text searching with queries over XML data
EP3835968B1 (en) Creating data in a data store using a dynamic ontology
EP3172866B1 (en) System and method for metadata enhanced inventory management of a communications system
US7478100B2 (en) Method and mechanism for efficient storage and query of XML documents based on paths
CA2522309C (en) Retaining hierarchical information in mapping between xml documents and relational data
CN101686146B (zh) 模糊查询、查询结果处理和过滤条件处理的方法及设备
Novo et al. Semantic interoperability in the IoT: Extending the web of things architecture
CN103004135A (zh) 访问控制方法及访问控制服务器
KR20030048423A (ko) Xml 퀴어리 처리 방법 및 장치
US20090240675A1 (en) Query translation method and search device
CN106796607A (zh) 用于基于模型的搜索及网络数据检索的***和方法
US20140075285A1 (en) Metadata Reuse For Validation Against Decentralized Schemas
US7159171B2 (en) Structured document management system, structured document management method, search device and search method
AU2007275507C1 (en) Semantic aware processing of XML documents
US20110154184A1 (en) Event generation for xml schema components during xml processing in a streaming event model
CN109344306B (zh) 一种领域多标准元数据定制化在线汇交与服务方法及***
Barrett et al. A model based approach for policy tool generation and policy analysis
De Virgilio et al. Modeling heterogeneous context information in adaptive web based applications
CN102299812A (zh) 一种访问控制方法及网络设备
Wahid et al. XML semantic constraint validation for XML updates: A survey
Leonardi et al. A flexible rule-based method for interlinking, integrating, and enriching user data
Muthaiyah et al. Dynamic integration and semantic security policy ontology mapping for semantic web services (sws)

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20150429