一种基于ASP的冲突访问控制策略方法

未命名 07-12 阅读:137 评论:0

一种基于asp的冲突访问控制策略方法
技术领域
1.本发明涉及访问控制系统的冲突解决模型研究,具体涉及一种基于asp的冲突访问控制策略方法。


背景技术:

2.传统的访问控制模型,如自主访问控制、强制访问控制和基于任务的授权控制,仅限于使用静态策略对权限控制进行建模。与传统的访问控制建模方案不同,基于角色的访问控制支持动态系统的策略表达。基于角色的访问控制策略是基于角色和权限定义的。此外,基于角色的访问控制允许在需要限制或放宽权限时通过更改用户角色来应对操作环境的更改。然而,与其他传统的访问控制模型类似,基于时间角色的访问控制也不允许指定环境。这些缺点催生了允许指定条件(即环境)的访问控制模型,如基于组织的访问控制。基于组织的访问控制是一种环境感知的访问控制模型,是一阶逻辑中常用的基于角色的访问控制模型的扩展。基于组织的访问控制的一个关键特性是它能够在高抽象级别(即抽象策略)上表示安全策略。因此,与底层系统操作相关的具体策略将从抽象策略中推断出来。现代的基于策略的管理系统必须依赖于底层操作环境的环境和动态策略。实现自适应安全机制的主要目标是使管理系统能够在其操作环境发生变化时调整其保护策略。因此,一个典型的自适应访问控制框架必须提供一个有效的机制,以处理由于动态系统环境中发生意外事件或行为而经常发生的异常情况,从而使运行时访问控制决策能够在环境变化时而做较小的调整。为了处理环境的变化,从而在出现异常情况时做出相对应的决定,自适应访问控制
3.系统必须解决下面几个问题,例如:1.基于“不完全”环境数据的推理,即不可用或有噪声的环境数据;2.基于“不完整”策略集的推理;3.解决动态系统中由运行时环境更改引起的不一致;4.解决异常策略导致的不一致,这些异常策略以增量方式添加到知识库中,并且明显与预定义的默认策略和环境相关策略冲突。回答集编程可以用不完备的数据进行推理,同时asp表示的默认值和异常以及使默认值无效的方式,有助于避免异常策略之间起冲突。当我们使用回答集编程时,就可以解决第一个和第二个问题。利用回答集语义下的归纳学习方法自动的学习冲突解决模式,即检测到冲突后自动的寻求解决策略,可以使第三个问题和第四个问题得到解决。


技术实现要素:

4.本发明给出了一种基于问答集语义下的自动推理方案,该方案明确地表示不完全环境数据和不完全策略集。该方案分离了缺省、环境相关和异常策略的规范。该方法得益于asp的非单调性,即默认和异常都是用“否定即失败”来显式表示的。在强制执行访问控制策略时,非单调特性允许在环境环境更改或必须强制执行异常策略时重写预定义的策略。
5.本发明采用的技术方案是:一种基于逻辑编程的冲突访问控制策略方法,包括:
6.步骤1:默认策略,即系统进行访问的过程中没有冲突时采取的策略;
7.步骤2:环境相关禁止策略,即根据具体环境为某用户定义的禁止访问控制执行策
略;
8.步骤3:环境相关通行策略,即根据具体环境为某用户定义了某id的异常权限访问执行策略;
9.步骤4:异常策略,即在系统访问时出现了异常情况时定义的相关策略使得访问选择最优化;
10.步骤5:冲突检测,使用asp规则生成用于检测每个潜在访问控制策略。
附图说明
11.图1是本发明的总体流程图;
具体实施方式
12.下面结合附图和具体实施方式对本发明进行详细说明。
13.本发明一种用于航空器维护的逻辑知识系统,流程图如图1所示,具体按照以下步骤实施:
14.步骤1:默认策略,即系统进行访问的过程中没有冲突时采取的策略;
15.步骤2:环境相关禁止策略,即根据具体环境为某用户定义的禁止访问控制执行策略;
16.步骤3:环境相关通行策略,即根据具体环境为某用户定义了某id的异常权限访问执行策略;
17.步骤4:异常策略,即在系统访问时出现了异常情况时定义的相关策略使得访问选择最优化;
18.步骤5:冲突检测,使用asp规则生成用于检测每个潜在访问控制策略。
19.本发明可以根据具体情况及情景设计出符合最佳处理办法的访问控制系统,提高了系统的正确率以及增强了系统的智能化,使得系统在处理问题时有了更加可靠的能力。
20.所述步骤1包括:
21.使用asp的默认表示功能,可以使用以下推理规则推断具体策略。
22.ispemitted(user,action,asset):-23.dprm(role,action,asset),
24.ua(user,role),
25.not isprohibited(user,action,asset).
26.如果为角色为role的任何用户指定了默认权限策略dprm,以便对资产asset执行操作action,将用户user分配给角色role,并且没有理由禁止用户user对资产asset执行操作action,则推断用户user允许对资产asset执行操作action。
27.以下是分别代表正常权限和禁止规则的两个默认访问控制策略:
28.dprm(role1,action1,asset1).
29.dprh(role2,action2,asset2).
30.如果以下三个条件都成立,则这些是冲突的默认策略:
31.1.action1=action2.
32.2.asset1=asset2.
exconflict(user,action,asset,id1,id2).
61.如果为用户user指定了id为id的异常权限策略以对资产asset执行操作action,并且未撤消id为id的异常权限策略,则推断用户user对资产asset执行操作action的具体权限。
62.以下分别是表示强制权限和禁止策略的两个异常访问控制策略:
63.exprm(user1,action1,asset1,id1).
64.exprh(user2,action2,asset2,id2).
65.如果以下所有条件都成立,我们认为exprm和exprh是冲突的异常策略:
66.1.action1=action2.
67.2.asset1=asset2.
68.3.user1=user2.
69.4.exprm和exprh都是有效的策略(即未撤回).
70.在这种情况下,会发生具体的冲突,因为允许和禁止用户同时对同一组资产执行相同的操作。
71.所述步骤5包括:
72.使用以下规则检测冲突的默认策略和环境相关策略:
73.dconflict(role1,role2,action,asset):-dprm(role1,action,asset),dprh(role2,action,asset),not sod(role1,role2).
74.该规则规定:如果为角色role1指定了默认权限策略dprm以对资产asset执行操作action,并且为角色role2指定了默认禁止策略dprh以对同一组资产asset执行相同操作action,然后,为角色role1和role2设计的对资产asset执行操作action的默认权限和禁止策略之间存在冲突。
75.异常策略在运行时以增量方式添加。因此,异常策略之间的冲突必须在最少的人工干预下自动检测和解决。为此,我们使用以下检测规则:
76.exconflict(user,action,asset,id1,id2):-exprm(user,action,asset,id1),exprh(user,action,asset,id2),not withdraw(id1),not withdraw(id2).
77.该规则规定:如果为用户user指定了异常权限策略exprm以对资产asset执行操作action,并为同一用户指定了异常禁止策略exprh以对同一资产执行相同操作,并且exprm和exprh策略不被撤回,然后检测到异常权限和禁止策略之间的冲突,这些策略允许同时禁止用户对资产asset执行操作action。一旦检测到异常策略之间的冲突,应使异常权限策略失效。

技术特征:
1.一种基于逻辑编程的冲突访问控制策略方法,其特征在于,包括以下步骤:步骤1:默认策略,即系统进行访问的过程中没有冲突时采取的策略;步骤2:环境相关禁止策略,即根据具体环境为某用户定义的禁止访问控制执行策略;步骤3:环境相关通行策略,即根据具体环境为某用户定义了某id的异常权限访问执行策略;步骤4:异常策略,即在系统访问时出现了异常情况时定义的相关策略使得访问选择最优化;步骤5:冲突检测,使用asp规则生成用于检测每个潜在访问控制策略。2.根据所述权利要求1所述的基于逻辑编程的冲突访问控制策略方法,其特征在于,所述步骤1包括:使用asp的默认表示功能,可以使用以下推理规则推断具体策略;ispemitted(user,action,asset):-dprm(role,action,asset),ua(user,role),notisprohibited(user,action,asset).如果为角色为role的任何用户指定了默认权限策略dprm,以便对资产asset执行操作action,将用户user分配给角色role,并且没有理由禁止用户user对资产asset执行操作action,则推断用户user允许对资产asset执行操作action;以下是分别代表正常权限和禁止规则的两个默认访问控制策略:dprm(role1,action1,asset1).dprh(role2,action2,asset2).如果以下三个条件都成立,则这些是冲突的默认策略:条件1:action1=action2.条件2:asset1=asset2.条件3:对于任一用户,知识库包含ua(user,role1)和ua(user,role2).在所有这些条件都成立的情况下,会发生具体的冲突,因为用户将被允许和禁止对同一组资产执行相同的操作。3.根据所述权利要求1所述的基于逻辑编程的冲突访问控制策略方法,其特征在于,所述步骤2包括:使用asp的默认表示功能,可以使用以下推理规则推断具体策略;isprohibited(user,action,asset):-cdprh(role,action,asset,context),ua(user,role),holds(user,action,asset,context),not exprm(user,action,asset,id).如果为角色为role的任何用户指定了环境相关禁止策略cdprh,以便在特定环境context下对资产asset执行操作action;为角色role分配了用户user,关联环境context保持,并且没有理由相信存在异常的情况下,即允许用户user对资产asset执行操作action,则推断禁止用户user对资产asset执行操作action;exprm之类的策
略是用户级策略,可能会在运行时由于异常情况而增量添加,因此它们可能会使预定义策略的结果无效;将以下两个环境相关的访问控制策略分别表示环境相关的权限和禁止规则:cdprm(role1,action1,asset1,ce1).cdprh(role2,action2,asset2,ce2).如果以下四个条件都成立,则这些策略是冲突的环境相关策略:条件1:action1=action2.条件2:asset1=asset2.条件3:对于任一用户,知识库包含ua(user,role1)和ua(user,role2).条件4:对于一些三元组(user,action,asset),同时保持ce1和ce2.在所有这些条件都成立的情况下,会发生一个具体的冲突,因为允许和禁止用户同时对同一资产执行相同的操作。4.根据所述权利要求1所述的基于逻辑编程的冲突访问控制策略方法,其特征在于,所述步骤3包括:使用asp的默认表示功能,可以使用以下推理规则推断具体策略;isprohibited(user,action,asset):-cdprh(role,action,asset,context),ua(user,role),holds(user,action,asset,context),not exprm(user,action,asset,id),withdraw(id).如果为角色为role的任何用户指定了环境相关禁止策略cdprh,以便在特定环境context下对资产asset执行操作action;将用户user分配给角色role,关联环境context保持,异常地允许用户user(通过异常策略id)对资产asset执行操作action,随后撤销异常id为id的异常策略,则推断禁止用户user对资产asset执行操作action。5.根据所述权利要求1所述的基于逻辑编程的冲突访问控制策略方法,其特征在于,所述步骤4包括:使用asp的默认表示功能,可以使用以下推理规则推断具体策略;ispemitted(user,action,asset):-exprm(user,action,asset,id),not exconflict(user,action,asset,id1,id2).如果为用户user指定了id为id的异常权限策略以对资产asset执行操作action,并且未撤消id为id的异常权限策略,则推断用户user对资产asset执行操作action的具体权限;以下分别是表示强制权限和禁止策略的两个异常访问控制策略:exprm(user1,action1,asset1,id1).exprh(user2,action2,asset2,id2).如果以下所有条件都成立,我们认为exprm和exprh是冲突的异常策略:1.action1=action2.
2.asset1=asset2.3.user1=user2.4.exprm和exprh都是有效的策略(即未撤回).在这种情况下,会发生具体的冲突,因为允许和禁止用户同时对同一组资产执行相同的操作。6.根据所述权利要求1所述的基于逻辑编程的冲突访问控制策略方法,其特征在于,所述步骤5包括:使用以下规则检测冲突的默认策略和环境相关策略:dconflict(role1,role2,action,asset):-dprm(role1,action,asset),dprh(role2,action,asset),not sod(role1,role2).该规则规定:如果为角色role1指定了默认权限策略dprm以对资产asset执行操作action,并且为角色role2指定了默认禁止策略dprh以对同一组资产asset执行相同操作action,然后,为角色role1和role2设计的对资产asset执行操作action的默认权限和禁止策略之间存在冲突;异常策略在运行时以增量方式添加;因此,异常策略之间的冲突必须在最少的人工干预下自动检测和解决;为此,我们使用以下检测规则:exconflict(user,action,asset,id1,id2):-exprm(user,action,asset,id1),exprh(user,action,asset,id2),not withdraw(id1),not withdraw(id2).该规则规定:如果为用户user指定了异常权限策略exprm以对资产asset执行操作action,并为同一用户指定了异常禁止策略exprh以对同一资产执行相同操作,并且exprm和exprh策略不被撤回,然后检测到异常权限和禁止策略之间的冲突,这些策略允许同时禁止用户对资产asset执行操作action;一旦检测到异常策略之间的冲突,应使异常权限策略失效。

技术总结
本发明属于访问控制策略方法领域,公开了一种基于逻辑编程的冲突访问控制策略方法,包括以下步骤:1.默认策略,即系统进行访问的过程中没有冲突时采取的策略;2.环境相关禁止策略,即根据具体环境为某用户定义的禁止访问控制执行策略;3.环境相关通行策略,即根据具体环境为某用户定义了某id的异常权限访问执行策略;4.异常策略,即在系统访问时出现了异常情况时定义的相关策略使得访问选择最优化。基于以上步骤,本发明可以根据具体情况及情景设计出符合最佳处理办法的访问控制系统,提高了系统的正确率以及增强了系统的智能化,使得系统在处理问题时有了更加可靠的能力。统在处理问题时有了更加可靠的能力。统在处理问题时有了更加可靠的能力。


技术研发人员:牛秦洲 苏星月 王志鹏
受保护的技术使用者:桂林理工大学
技术研发日:2023.03.18
技术公布日:2023/7/7
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐