一种DDS中基于属性的访问控制系统及其方法技术方案

技术编号:38844478 阅读:15 留言:0更新日期:2023-09-17 09:56
本发明专利技术公开了一种DDS中基于属性的访问控制系统及其方法,属于互联网和工业物联网技术领域。访问控制系统包括认证服务器CA、发布者、订阅者和策略判定模块,访问控制方法包括S1、发布者/订阅者访问控制策略的获取;S2、发布者/订阅者属性的获取;S3、控制策略的判定;S4、访问控制的执行。本发明专利技术通过采用一种DDS中基于属性的访问控制系统及其方法,可以将基于属性的访问控制技术与DDS的通信过程相结合,实现动态的发布/订阅权限控制;利用eBPF技术,可以在底层将一些非法的信息进行屏蔽,规避DoS攻击,提高了DDS的通信效率和安全性,同时进一步提高了访问控制机制的性能。步提高了访问控制机制的性能。步提高了访问控制机制的性能。

【技术实现步骤摘要】
一种DDS中基于属性的访问控制系统及其方法


[0001]本专利技术涉及互联网和工业物联网
,尤其是涉及一种DDS中基于属性的访问控制系统及其方法。

技术介绍

[0002]2005年国际电信联盟(ITU)发布《互联网报告—物联网》宣布了无所不在的“物联网”通信时代的来临。“物联网”被称为继计算机、互联网之后的世界信息产业的第三次浪潮。对于当前的网络时代来说,物联网的应用十分广泛,不仅在城市的公共安全中有着广泛应用,同时也在工业产业生产安全中有广泛的应用范围,可以对环境质量进行监控,并且也应用在了智能交通和智能家居中,提升了人们的生活质量和各领域的发展速度。而物联网中DDS通信中间件相比于其他的通信协议有很大的优势。但是传统的DDS技术关注信息发布订阅的实时性、可靠性等指标,对于关键分布式应用环境中面临的安全威胁关注不多,严重制约了DDS在这些领域的深入应用。为此,OMG组织于2016年和2018年分别发布了DDS安全规范1.0版和1.1版,在DDS中增加安全机制以应对未授权的订阅、未授权的发布、非安全的信道传输等安全威胁——DDS security,DDS security虽然解决了大部分的安全问题,但是它的访问控制机制只是根据主题,域等条件进行权限判断,不能适应条件复杂的场景。并且随着移动互联网的发展,物联网中大部分数据都具有动态性的特点,例如DDS数据发布者的位置,会随着发布者的移动,不断的改变。目前DDS Security无法对这种属性值会动态改变的数据进行访问控制,限制了DDS在移动互联网中的应用。/>[0003]访问控制技术是确保通信安全的核心技术之一。现有自主访问控制模型(DAC)、强制访问控制模型(MAC)、基于角色的访问控制模型(RBAC)、基于任务的访问控制模型、与时空相关的访问控制模型、基于属性的访问控制模型(ABAC)等访问控制模型。基于属性的访问控制ABAC,即将访问控制中的主体、客体、权限三大实体用其属性进行统一描述,用实体属性之间的关系对安全需求进行形式化的建模,通过预先定义的属性访问策略实现对主体资源的有效访问。ABAC能够有效解决分布式开放环境下的大规模用户动态扩展问题,进行细粒度访问控制授权。
[0004]eBPF诞生于1992年的伯克利包过滤伯克利包过滤(Berkeley Bag过滤),可以免去内核到用户空间的无用数据包拷贝。2013年,BPF在原有基础上增加了map与tail call等新功能,性能也得到显著提高。修改后版本称eBPF,与经典BPF做区别。eBPF比经典BPF更接近本机语言,且在内核中开放了新的挂载点,可以基于Event运行程序,非常高效,可支持内核内编程,并可以增强其他跟踪器。eBPF和ABAC进行集成需要解决如何让eBPF获取ABAC的判定结果,以及如何根据结果来做一个准确的判断,避免“误杀”——本可以收到的消息却被拦截。

技术实现思路

[0005]为了解决现有技术中存在的问题与不足,本专利技术提出一种DDS中基于属性的访问
控制系统及其方法,可以将基于属性的访问控制(Attribute

Based Access Control,ABAC)技术与DDS的通信过程相结合,利用DDS基于主题的发布/订阅通信机制实时更新发布者/订阅者的属性信息,基于属性值的动态变化,根据预定的访问控制策略实现了动态的发布/订阅权限控制。并在此基础上,利用eBPF技术,可以在底层将一些非法的信息进行屏蔽,规避DoS攻击,提高了DDS的通信效率和安全性,同时进一步提高了访问控制机制的性能。
[0006]为实现上述目的,本专利技术提供了一种DDS中基于属性的访问控制方法,包括以下步骤:
[0007]S1、发布者/订阅者访问控制策略的获取:发布者/订阅者将自身制定的访问控制策略上传到认证服务器CA,CA对其进行签名认证,随后将其下发到发布者和订阅者的PAP(策略管理点)程序,保证访问控制策略的真实性和完整性;
[0008]S2、发布者/订阅者属性的获取:PIP(属性信息点)程序将自身所属的发布者或订阅者的属性信息发布到属性域,并从属性域中订阅所有其他发布者/订阅者的属性信息,将其保存并判断此发布者/订阅者的属性信息是否经过访问控制策略的判定,若未经过访问控制策略的判定则触发步骤S3;
[0009]S3、控制策略的判定:PDP(策略判定点)程序获取PAP(策略管理点)程序存放的访问控制策略以及PIP(属性信息点)程序存放的发布者/订阅者的属性信息,进行访问控制策略的判定,之后将判定结果写入eBPF map;
[0010]S4、访问控制的执行:当PEP(策略执行点)收到数据包,判断是否是DDS数据包,若是DDS数据包,则解析数据包并读取eBPF map中存放的访问控制策略的判定结果,在内核对数据进行过滤或者传送到发布者/订阅者程序进行通信。
[0011]优选的,所述步骤S2中的属性信息为属性域上的主题信息,该主题信息的数据类型由IDL描述为:
[0012][0013][0014]其中结构体Attr包括AttrName(属性名),ArrtType(属性值的类型),AttrValue(属性的值),结构体Attrs利用Attr类型的sequence表示一组发布者/订阅者的属性信息。
[0015]优选的,所述步骤S2中,PIP(属性信息点)程序将订阅到的属性信息以map{ID,{flag,attr1、attr2、

、attrn}}的形式存储,其中ID是发布者/订阅者的唯一标识(guID),flag标识发布者/订阅者的属性信息是否发生改变,attr1、attr2、

、attrn是发布者/订阅
者的属性信息。
[0016]优选的,所述步骤S2中,当PIP(属性信息点)程序将订阅到的属性信息以map{ID,{flag,attr1、attr2、

、attrn}}的形式存储时,首先根据ID去查找其是否存储过这个ID的属性信息,若没有存储过,则将flag的值置为1,将属性信息进行存储并触发访问控制策略的判定,若存储过,则比对订阅到的属性信息和存储的属性信息是否相同,若不相同则将flag的值置为1,将存储过的此ID的属性信息更新并触发访问控制策略的判定,若相同,则不对存储过的此ID的属性信息以及flag进行操作,将订阅到的属性信息进行丢弃。
[0017]优选的,所述步骤S3中:
[0018]S31、PDP(策略判定点)程序轮询PIP(属性信息点)程序中存放的发布者/订阅者的属性信息,获取flag为1的属性信息{ID,{flag,attr1、attr2、

、attrn}},并将flag的值改为0;
[0019]S32、PDP(策略判定点)程序从PAP(策略管理点)程序中获取发布者/订阅者的访问控制策略;
[0020]S33、PDP(策略判定点)程序根据获取的订阅者/发布者的属性信息以及发布者/订阅者的访问控制策本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种DDS中基于属性的访问控制方法,其特征在于:包括以下步骤:S1、发布者/订阅者访问控制策略的获取:发布者/订阅者将自身制定的访问控制策略上传到认证服务器CA,CA对其进行签名认证,随后将其下发到发布者和订阅者的PAP程序;S2、发布者/订阅者属性的获取:PIP程序将自身所属的发布者或订阅者的属性信息发布到属性域,并从属性域中订阅所有发布者/订阅者的属性信息,将其保存并判断此发布者/订阅者的属性信息是否经过访问控制策略的判定,若未经过访问控制策略的判定则触发步骤S3;S3、控制策略的判定:PDP程序获取PAP程序存放的访问控制策略以及PIP程序存放的发布者/订阅者的属性信息,进行访问控制策略的判定,之后将判定结果写入eBPF map;S4、访问控制的执行:当PEP收到数据包,判断是否是DDS数据包,若是DDS数据包,则解析数据包并读取eBPF map中存放的访问控制策略的判定结果,在内核对数据进行过滤或者传送到发布者/订阅者程序进行通信。2.根据权利要求1所述的一种DDS中基于属性的访问控制方法,其特征在于:所述步骤S2中的属性信息为属性域上的主题信息,该主题信息的数据类型由IDL描述为:S2中的属性信息为属性域上的主题信息,该主题信息的数据类型由IDL描述为:其中结构体Attr包括AttrName,ArrtType,AttrValue,结构体Attrs利用Attr类型的sequence表示一组发布者/订阅者的属性信息。3.根据权利要求2所述的一种DDS中基于属性的访问控制方法,其特征在于:所述步骤S2中,PIP程序将订阅到的属性信息以map{ID,{flag,attr1、attr2、

、attrn}}的形式存储,其中ID是发布者/订阅者的唯一标识guID,flag标识发布者/订阅者的属性信息是否发生改变,attr1、attr2、

、attrn是发布者/订阅者的属性信息。4.根据权利要求3所述的一种DDS中基于属性的访问控制方法,其特征在于:所述步骤S2中,当PIP程序将订阅到的属性信息以map{ID,{flag,attr1、attr2、

、attrn}}的形式存储时,首先根据ID去查找其是否存储过这个ID的属性信息,若没有存储过,则将flag的值置为1,将属性信息进行存储并触发访问控制策略的判定,若存储过,则比对订阅到的属性信息和存储的属性信息是否相同,若不相同则将flag的值置为1,将存储过的此ID的属性信息更新并触发访问控制策略的判定,若相同,则不对存储过的此ID的属性信息以及flag进行
操作,将订阅到的属性信息进行丢弃。5.根据权利要求4所述的一种DDS中基于属性的访问控制方法,其特征在于:所述步骤S3中:S31、PDP程序轮询PIP程序中存放的发布者/订阅者的属性信...

【专利技术属性】
技术研发人员:胡敬羽李怡枫
申请(专利权)人:南京磐优信息科技有限公司
类型:发明
国别省市:

相关技术
    暂无相关专利
网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1