[发明专利]一种基于脚本的属性基访问策略表示与执行方法及系统在审
申请号: | 201911059491.6 | 申请日: | 2019-11-01 |
公开(公告)号: | CN110879899A | 公开(公告)日: | 2020-03-13 |
发明(设计)人: | 朱岩;周志远;王中豪;陈娥 | 申请(专利权)人: | 北京科技大学 |
主分类号: | G06F21/62 | 分类号: | G06F21/62 |
代理公司: | 北京君尚知识产权代理有限公司 11200 | 代理人: | 司立彬 |
地址: | 100083*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 脚本 属性 访问 策略 表示 执行 方法 系统 | ||
本发明公开了一种基于脚本的属性基访问策略表示与执行方法及系统,其步骤包括:1)采用基于操作码的脚本语言描述属性基访问控制模型中的策略判决逻辑,并使用标记语言封装策略层次结构,生成基于栈结构脚本的访问策略;2)对于访问请求,脚本解释器依据该属性基访问控制模型确定该访问请求对应的基于栈结构脚本的访问策略并执行,得到该访问请求的判决结果。本发明使得访问策略保留原有高灵活性、高扩展性和高表达能力的同时,又有效的提升了执行效率。
技术领域
本发明主要属于信息技术领域,具体涉及一种基于脚本的属性基访问策略表示与执行方法及系统。
背景技术
基于属性的访问控制技术(ABAC)是一种用于保护共享资源的强大的基于策略的方法,且具备高灵活性、高扩展性和高表达能力等特点。可扩展的访问控制标记语言(XACML)则是ABAC的一个通用标准,该标准使用丰富的逻辑表达式来记录不同的策略和规则并允许资源的所有者(供应商或企业)使用针对策略的评估请求的指定体系结构和工作流施加访问控制。
然而,XACML采用超文本标记语言(XML)来描述访问策略的判定逻辑,这种方式使得访问策略的结构变得非常冗余且需要花费较多的计算和内存资源进行解析,这也极大的限制了XACML的应用范围。同时,XML策略本身仅是对策略的描述而不包含策略的执行过程和指令。
发明内容
针对现有技术中存在的技术问题,本发明通过利用现有的脚本语言来编写访问策略的判决逻辑,访问策略能直接被解释执行而无需编译操作且具备较高的灵活性和可读性。脚本语言则是一种动态语言,其广泛存在于各类计算机系统中,包括区块链、办公软件、数据库、虚拟机、操作系统等,且通常以文本的形式保存并只在被调用时进行解释执行。
本发明采用脚本语言描述策略的判决逻辑并在使用标记语言封装了策略的层次结构。在技术上,脚本语言易于开发和部署,且其直接解释执行的特点使得策略判决时无需经过传统XACML实现中构建策略判定树的过程,同时标记语言又保证了策略的层次结构性。这种方法使得访问策略保留原有高灵活性、高扩展性和高表达能力的同时,又有效的提升了执行效率。
本发明提出了一种基于脚本的访问策略表示与执行方法及系统,包括:
1)脚本解释器,具有一个指令系统及其运行环境。
2)一种基于脚本的访问策略表示方法,是针对属性基访问策略模型的脚本和标记语言的结合。
3)基于脚本的访问策略执行方法,是运行在脚本解释器中使用基于脚本的访问策略对访问请求的判决过程。
在所述方法中,脚本是一段以文本形式保存的代码,由操作码和操作数组成,其中:
1)操作码:是一系列对数据的操作,包括逻辑比较操作码、数值运算操作码、流程控制操作码和实体属性获取操作码;
2)操作数:是操作码的输入参数,类型包括字符串、常数、布尔值、浮点数、引用。
脚本解释器包含了一个指令系统和相应的运行环境,包括策略存储区、运算存储区、寻址单元和运算单元。其中:
1)指令系统:为一组操作码集合及其对应操作的实现。
2)寻址单元:负责将引用类型的操作数替换为实际数据。
3)运算存储区:维护一种数据栈结构,负责在脚本解释执行过程中存储操作码和操作数。
4)策略存储区:负责缓存输入的访问策略和输出的判决结果。
5)运算单元:用于执行操作码中定义的逻辑和算数运算。
所述数据栈结构,具有压栈和出栈两类操作,且栈内的数据具备后进先出的特点。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京科技大学,未经北京科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911059491.6/2.html,转载请声明来源钻瓜专利网。