一种在使用D-Bus的智能设备中进行安全访问的方法和系统技术方案

技术编号:12825513 阅读:37 留言:0更新日期:2016-02-07 14:40
本发明专利技术公开了一种在使用D-Bus的智能设备中进行安全访问的方法和系统,其中所述方法包括:配置D-Bus服务各接口的敏感权限;确定来自一进程的访问请求是否涉及敏感权限;在所述请求涉及敏感权限及被请求进程提供校验接口时,利用所述校验接口按照被请求进程的校验规则进行校验;在校验通过时D-Bus转发访问请求消息给被请求进程。本发明专利技术方法和系统实现统一安全审查校验,既满足简单安全需求又满足复杂安全需求,从而可以适应不同行业的安全要求。

【技术实现步骤摘要】
【专利说明】一种在使用D-Bus的智能设备中进行安全访问的方法和系统
本申请涉及智能设备中的数据传输,尤其涉及一种在使用D-BUS的智能设备中进行安全访问的方法和系统。
技术介绍
D-Bus是freedesktop下开源的Linux进程间通信(IPC)机制,使用GPL许可证发行。本身Linux的其它IPC通信机制还包括:管道(fifo)、共享内存、信号量、消息队列、Socket等。D-Bus专为两种具体情况设计:1、同一桌面会话的应用间的通信,以允许整合桌面会话成为一个整体,并解决进程的生命周期问题,这被称之为sess1n bus ;2、桌面会话和操作系统间的通信,操作系统通常包括内核和任何系统守护进程或进程,这被称之为system bus。就内置桌面会话而言,流行的GNOME和KDE桌面有着截然不同的IPC解决方案经验,如C0RBA和DC0P。D-Bus的建立基于这些经验,并且精心设计,以满足这些桌面应用的特殊需求,因此D-Bus具有很强的灵活性。然而,从安全角度讲,尽管D-Bus做了一些安全策略配置,但是这些策略配置由服务提供者根据自己服务需求来提供。这导致不同安全需求需要分散进行配置,不便进行安全管理,也不具备统一的审查校验机制。
技术实现思路
本申请的目标在于在使用D-Bus的智能设备中提供一种具有统一安全审查校验、既满足简单安全需求又满足复杂安全需求的安全访问方法和系统。本申请的目标由一种在使用D-Bus的智能设备中进行安全访问的方法实现,该方法包括:配置D-Bus服务各接口的敏感权限;确定来自一进程的访问请求是否涉及敏感权限; 在访问请求涉及敏感权限及被请求进程提供校验接口时,利用校验接口按照被请求进程的校验规则进行校验;在校验通过时D-Bus转发访问请求消息给被请求进程。本申请的目标还由一种使用D-Bus的智能设备中的安全访问系统实现,该系统包括:配置单元,用于配置D-Bus服务各接口的敏感权限;敏感权限确定单元,用于确定来自一进程的访问请求是否涉及敏感权限;校验单元,用于在访问请求涉及敏感权限及被请求进程提供校验接口时利用校验接口按照被请求进程的校验规则进行校验;D-Bus转发单元,用于在校验通过时将请求消息转发给被请求进程。通过本申请的方法和系统,由于D-Bus具有了统一的敏感权限校验,使得D-Bus具体服务的实现可以适应不同行业的安全要求,因为安全中心是各个行业或者部门各自提供的,D-Bus利用其安全中心校验接口来进行校验,因此必然满足其安全需求的,例如:某行业需要限制某设备访问、限制某些敏感文件访问、或者限制敏感数据访问等等。对于任何涉及到敏感安全的访问,只需要通过本申请的方法和系统即可实现安全访问,不仅有利于设备安全性,而且还有益于设备的扩展性。除非明确指出,在此所用的单数形式“一”、“该”均包括复数含义(即具有“至少一”的意思)。应当进一步理解,说明书中使用的术语“具有”、“包括”和/或“包含”表明存在所陈列的特征、步骤、操作、元件和/或部件,但不排除存在或增加一个或多个其他特征、步骤、操作、元件、部件和/或其组合。如在此所用的术语“和/或”包括一个或多个列举的相关项目的任何及所有组合。除非明确指出,在此公开的任何方法的步骤不必精确按照所公开的顺序执行。【附图说明】本专利技术将在下面参考附图并结合优选实施例进行更完全地说明。图1为D-Bus现有安全策略的原理示意图。图2为根据本专利技术方法的一实施例的流程图。图3为根据本专利技术方法的另一实施例的流程图。图4为根据本专利技术系统的一实施例的结构示意图。图5为根据本专利技术系统的另一实施例的结构示意图。为清晰起见,这些附图均为示意性及简化的图,它们只给出了对于理解本专利技术所必要的细节,而省略其他细节。【具体实施方式】通过下面给出的详细描述,本专利技术的适用范围将显而易见。然而,应当理解,在详细描述和具体例子表明本专利技术优选实施方式的同时,它们仅为说明目的给出。D-Bus最主要的用途是在Linux桌面环境为进程提供通信,同时能将Linux桌面环境和Linux内核事件作为消息传递到进程。D-Bus是一个消息总线系统,其功能已涵盖进程间通信的所有需求,并具备一些特殊的用途。D-Bus是3层架构的进程间通信系统,包括以下几个部分:-libdbus库,提供给各个应用程序调用,使应用程序具有通信和数据交换的能力,两个应用程序可以直接进行通信,就像是一条socket通道,两个程序之间建立通道之后,就可以通讯了。-消息守护进程,在libdbus的基础上创建,可以管理多个应用程序之间的通信。每个应用程序都和消息守护进程建立dbus的连接,然后由消息守护进程进行消息的分派。-各种包装库,有libdbus-glib,libdbus-qt等等,目的是将dbus的底层api进行一下封装。图1示出了 D-Bus现有安全策略的原理示意图。如图1中所示,D_Bus现有安全策略配置文件仅仅是根据目的地匹配规则来决定是否转发请求消息,如果目的地匹配,则将来自一应用进程的请求消息转发给另一应用进程。D-Bus不进行敏感权限的具体校验。图2示出了根据本专利技术方法的一实施例,用于在使用D-Bus的智能设备如移动电话、Pad等中实现安全访问,该方法包括步骤:步骤S10,配置D-Bus服务各接口的敏感权限。术语“敏感权限”指访问敏感设备、敏感资源的权限。敏感权限由用户定义好并集成到系统中,常用的敏感权限例如包括但不限于代表蓝牙使用权限、存储卡使用权限、相机使用权限、WiFi使用权限、和电话使用权限。在实施例中,通过对现有D-Bus服务策略(policy)文件扩展语法关键字,以用来指出服务各接口涉及到何种敏感权限。例如,在现有xml语法基础上,在原有policy关键字基础之上扩充method_permiss1n关键字,它作为allow/deny关键字的属性出现,以用来描述本服务接口中method涉及到的敏感权限名称,涉及多个敏感权限的,可以用’ |’符号连接起来。比如下面规则:〈allow send_destinat1n = 〃com.service.time〃send_interface = 〃com.service, time, interface"send_member = "wall—clock—settings"send_type = "method_call"method_permiss1n = "SYS.PERMISS1N.ADMIN_HME"/>每当D-Bus自身服务启动时,均对配置文件进行解析,以识别新的权限关键字语法,从而识别出哪些服务接口需要进行敏感权限校验。 步骤S20,确定来自一进程的访问请求是否涉及敏感权限。如果确定访问请求不涉及敏感权限,处理转到步骤S41,D_Bus将请求消息转发给被请求进程。否则,处理进行到步骤 S30o步骤S30,在被请求进程提供校验接口时,利用校验接口按照被请求进程的校验规则进行校验。不同行业根据不同安全需求有不同的安全中心,因而有不同的安全校验规则。安全中心提供用于敏感权限校验的接口,然后集成到D-Bus中,以便D-Bus用来进行权限校验。在获取校验结果后,处理进行到步骤S40。作为例子,例如公安系统某信息安全中当前第1页1&本文档来自技高网...

【技术保护点】
一种在使用D‑Bus的智能设备中进行安全访问的方法,其特征在于,所述方法包括:配置D‑Bus服务各接口的敏感权限;确定来自一进程的访问请求是否涉及敏感权限;在所述请求涉及敏感权限及被请求进程提供校验接口时,利用所述校验接口按照被请求进程的校验规则进行校验;在校验通过时D‑Bus转发访问请求消息给被请求进程。

【技术特征摘要】

【专利技术属性】
技术研发人员:宋仓龙
申请(专利权)人:北京元心科技有限公司
类型:发明
国别省市:北京;11

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

1