CN109711141A - 终端中敏感权限模块的调用请求的处理方法及装置 - Google Patents
终端中敏感权限模块的调用请求的处理方法及装置 Download PDFInfo
- Publication number
- CN109711141A CN109711141A CN201811307589.4A CN201811307589A CN109711141A CN 109711141 A CN109711141 A CN 109711141A CN 201811307589 A CN201811307589 A CN 201811307589A CN 109711141 A CN109711141 A CN 109711141A
- Authority
- CN
- China
- Prior art keywords
- call request
- module
- application
- request
- terminal
- 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.)
- Pending
Links
- 238000012545 processing Methods 0.000 title claims abstract description 48
- 238000003672 processing method Methods 0.000 title claims abstract description 22
- 238000000034 method Methods 0.000 claims abstract description 97
- 230000008569 process Effects 0.000 claims abstract description 58
- 230000000977 initiatory effect Effects 0.000 claims abstract description 15
- 238000013475 authorization Methods 0.000 claims description 24
- 230000015654 memory Effects 0.000 claims description 23
- 238000004590 computer program Methods 0.000 claims description 15
- 238000004458 analytical method Methods 0.000 claims description 10
- 238000012546 transfer Methods 0.000 claims description 8
- 230000002045 lasting effect Effects 0.000 claims description 4
- 230000035945 sensitivity Effects 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 12
- 238000012544 monitoring process Methods 0.000 description 7
- 230000006399 behavior Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 238000007689 inspection Methods 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 241000209140 Triticum Species 0.000 description 2
- 235000021307 Triticum Nutrition 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000004898 kneading Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 101150053844 APP1 gene Proteins 0.000 description 1
- 206010000117 Abnormal behaviour Diseases 0.000 description 1
- 101100189105 Homo sapiens PABPC4 gene Proteins 0.000 description 1
- 102100039424 Polyadenylate-binding protein 4 Human genes 0.000 description 1
- 206010048669 Terminal state Diseases 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000005856 abnormality Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 239000011230 binding agent Substances 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003442 weekly effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Telephonic Communication Services (AREA)
- Telephone Function (AREA)
Abstract
本发明提供了一种终端中敏感权限模块的调用请求的处理方法及装置。该方法包括:接收终端中的应用对敏感权限模块进行调用的调用请求;判断所述调用请求是否满足预定条件,其中,所述预定条件包括以下至少之一:所述应用发起所述调用请求时处于后台、所述应用发起所述调用请求时所述终端的屏幕处于关闭状态、所述应用发起所述调用请求时处于前台但所述应用发起所述调用请求之前的预定时长之内在所述应用的界面上未接收到触摸操作;在所述调用请求满足所述预定条件的情况下,对所述调用请求执行预定处理,其中,所述预定处理包括以下至少之一:拒绝所述调用请求、针对所述调用请求发出提醒、询问是否允许所述调用请求。
Description
技术领域
本发明涉及但不限于通信领域,尤其涉及一种终端中敏感权限模块的调用请求的处理方法及装置。
背景技术
数据隐私一直用户关注的焦点,但是隐私泄露事件依然时有发生。终端可以通过麦克风、摄像头、全球定位系统(Global Positioning System,简称为GPS)等传感器收集大量的用户隐私数据,还可以通过内部接口读取到用户隐私数据,例如,联系人、短信、通话记录等等。
为了保护用户隐私数据,目前终端的系统架构提供了应用(APP,包括第三方APP、系统APP等)调用麦克风、摄像头、GPS等传感器或应用读取用户隐私数据时进行权限检查的机制。然而,有些软件可能会在获取用户相关权限后,在用户不知情的情况下利用该权限随意调用传感器获取外界信息或随意读取用户隐私数据,造成用户隐私的泄露。
发明内容
本发明实施例提供了一种终端中敏感权限模块的调用请求的处理方法及装置,以至少解决相关技术中软件在用户不知情的情况下随意调用传感器获取外界信息或随意读取用户隐私数据,造成用户隐私的泄露的问题。
根据本发明的一个实施例,提供了一种终端中敏感权限模块的调用请求的处理方法,包括:
根据本发明的另一个实施例,提供了一种终端中敏感权限模块的调用请求的处理装置,包括:
根据本发明的又一个实施例,还提供了一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
根据本发明的又一个实施例,还提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。
通过本发明,在接收到终端中的应用对敏感权限模块进行调用的调用请求后,针对调用请求进行了异常调用的判断,能够监控到应用处于后台、熄屏、或前台未收到用户的触摸操作的情况下发起的调用请求,并相应的执行拒绝、提醒、询问等操作中的一种或多种。通过该方案,可以解决软件在用户不知情的情况下随意调用传感器获取外界信息或随意读取用户隐私数据,造成用户隐私的泄露的问题,达到了有效监控应用对敏感权限模块(例如,可以包括以下至少之一:麦克风模块、摄像头模块、GPS模块、短信模块、联系人模块、通话记录模块等等)的调用的效果,在某些优选实施例中,还能够实现调用数据的记录、分析和展示。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是本发明实施例的一种终端中敏感权限模块的调用请求的处理方法的移动终端的硬件结构框图;
图2是根据本发明实施例的终端中敏感权限模块的调用请求的处理方法的流程图;
图3是根据本发明实施例的终端中敏感权限模块的调用请求的处理方法中步骤S204的具体流程图;
图4是根据本发明实施例的终端中敏感权限模块的调用请求的处理方法中步骤S204的另一具体流程图;
图5是根据本发明实施例的终端中敏感权限模块的调用请求的处理方法中步骤S206的具体流程图;
图6是根据本发明实施例的终端中敏感权限模块的调用请求的处理方法的具体流程图;
图7是根据本发明实施例的终端中敏感权限模块的调用请求的处理方法的另一具体流程图;
图8是根据本发明实施例的终端中敏感权限模块的调用请求的处理装置的结构框图;
图9是根据本发明实施例的终端中敏感权限模块的调用请求的处理装置的详细结构框图;
图10是根据本发明示例性实施例的系统架构示意图;
图11是根据本发明示例性实施例的整体流程图;
图12是根据本发明示例性实施例的权限检查、申请及异常判断的流程图;
图13是根据本发明示例性实施方式的麦克风和短信的使用时间段统计图;
图14是根据本发明示例性实施方式的应用后台使用麦克风被阻止后提醒用户的界面的示意图。
具体实施方式
在终端的系统(例如,Android系统,iOS系统等等)当中,第三方应用需要访问联系人、短信或调用GPS、Camera、麦克风等敏感信息时,系统的做法是弹出一个权限申请的对话框,用户可以选择允许或拒绝。有些正常的请求用户会选择允许(比如用户使用微信发图片时,微信请求照片读取权限)。但是,这样也有可能会造成隐私泄露,因为获取权限的应用在得到用户授权后就可以具有永久的权限(除非用户进入设置手动关闭它的权限)。这些应用有可能在用户不知情的情况下在后台默默的收集用户的隐私数据。
针对以上的问题,本申请的实施例提供了终端中敏感权限模块的调用请求的处理方案,下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
本申请所提供的方法实施例可以在终端(包括移动终端、计算机终端或者类似的运算装置)中执行。以运行在移动终端上为例,图1是本发明实施例的一种终端中敏感权限模块的调用请求的处理方法的移动终端的硬件结构框图。如图1所示,移动终端10可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储数据的存储器104,可选地,上述移动终端还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述移动终端的结构造成限定。例如,移动终端10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本发明实施例中的终端中敏感权限模块的调用请求的处理方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至移动终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括移动终端10的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
在本实施例中提供了一种运行于终端的敏感权限模块的调用请求的处理方法,图2是根据本发明实施例的终端中敏感权限模块的调用请求的处理方法的流程图,如图2所示,该流程包括如下步骤:
步骤S202,接收终端中的应用对敏感权限模块进行调用的调用请求。
敏感权限模块的概念在本领域中是公知的,其是一系列与用户隐私相关的模块,其能够直接或间接的控制终端的传感器运作、或读取终端中的用户数据,对这些模块的调用需要进行权限检查或权限申请。这类敏感权限模块包括但不限于:联系人模块、短信模块、通话记录模块、GPS模块、Camera模块、麦克风模块等等。
步骤S204,判断所述调用请求是否满足预定条件,其中,所述预定条件包括以下至少之一:所述应用发起所述调用请求时处于后台、所述应用发起所述调用请求时所述终端的屏幕处于关闭状态、所述应用发起所述调用请求时处于前台但所述应用发起所述调用请求之前的预定时长之内在所述应用的界面上未接收到触摸操作。
步骤S206,在所述调用请求满足所述预定条件的情况下,对所述调用请求执行预定处理,其中,所述预定处理包括以下至少之一:拒绝所述调用请求、针对所述调用请求发出提醒、询问是否允许所述调用请求。
本步骤中,所涉及的预定处理旨在防止异常调用,从而防止用户隐私泄露。其中,通过拒绝所述调用请求,可以直接阻断拒绝所述应用使用所请求的隐私权限模块;通过针对所述调用请求发出提醒,例如,若在亮屏状态下可以在屏幕上显示提醒信息,还可以辅以声音、指示灯、震动等提醒方式,若在熄屏状态下,可以通过声音、指示灯或震动等方式进行提醒,通过各种形式的notification提示用户存在有异常调用行为的应用,引起用户警觉;通过询问是否允许所述调用请求,可以采用弹出Dialog的方式让用户来决定是否同意调用,将控制权交给用户,当用户同意时,允许调用请求,该允许调用请求的行为可以是长期允许,为了安全起见,也可以是预定时间段内允许,例如,允许10分钟内该应用对该敏感权限模块的调用,或者,只授权其使用24小时超过24小时后要重新授权。
可选地,上述步骤的执行主体可以为终端。
通过上述步骤,在接收到终端中的应用对敏感权限模块进行调用的调用请求后,针对调用请求进行了异常调用的判断,能够监控到应用处于后台、熄屏、或前台未收到用户的触摸操作的情况下发起的调用请求,并相应的执行拒绝、提醒、询问等操作中的一种或多种。通过该方案,可以解决软件在用户不知情的情况下随意调用传感器获取外界信息或随意读取用户隐私数据,造成用户隐私的泄露的问题,达到了有效监控应用对敏感权限模块(例如,可以包括以下至少之一:麦克风模块、摄像头模块、GPS模块、短信模块、联系人模块、通话记录模块等等)的调用的效果,在某些优选实施例中,还能够实现调用数据的记录、分析和展示。
终端中应用(包括第三方应用和系统应用)要调用终端中的传感器(例如,GPS、麦克风、摄像头等等)或者读取终端中的敏感用户信息(例如,读取短信、联系人信息、通话记录等等)时,可以向终端中的框架层检查或申请敏感权限,一般可以通过两种请求来完成。相应地,在步骤S202中,所述终端中的框架层接收所述应用发起的对所述敏感权限模块进行调用的所述调用请求,其中,所述调用请求包括以下之一:调用权限检查请求checkSelfPermission、调用权限申请请求requestPermission。
终端中的框架层作为系统层面的基础框架,一般是具有通用性的。为了在不改变基础框架的前提下实现本申请所述的方法,一种简单、便捷的方法是增加一个中间件层,该中间件层是一段处理代码,框架层正常处理代码可以通过调用该中间件层对应的接口的形式调用该中间件层,中间件层可以用于在框架层的通用处理的基础上,实现定制的处理功能。在本发明的至少一个示例性实施例中,该中间件层可以包括一用于进行异常调用的判断的异常调用判断组件,还可以包括用于读取进行异常判断所需的信息的信息读取组件,二者配合可以实现异常调用的判断,这样,通过在框架层的基础上调用中间件层,就可以在不改变原有框架基础业务逻辑的基础上采用非常便捷的方式来实现异常调用的判断。该中间件能够和联系人模块、短信模块、GPS模块、Camera模块、麦克风模块等进行通信。对于已经被授权的APP启动调用隐私模块,中间件层首先进行异常调用判断。
因此,作为一个可选的示例性实施方式,如图3的根据本发明实施例的终端中敏感权限模块的调用请求的处理方法中步骤S204的具体流程图所示,步骤S204中,判断所述调用请求是否满足预定条件可以包括:
步骤S2042,所述框架层向所述终端中的中间件层发送所述调用请求对应的调用信息,其中,所述调用请求对应的所述调用信息可以包括:发起所述调用请求的所述应用的标识,以及所述框架层判断是否允许所述调用请求的判断结果;
步骤S2044,所述中间件层根据所述调用信息判断所述调用请求是否满足所述预定条件。
作为一种示例性实施方式,由于应用需要调用敏感权限模块时,会向框架层发起checkSelfPermission或requestPermission,所以,所述框架层可以通过改变checkSelfPermission或requestPermission的接口调用行为,向所述终端中的中间件层发送所述调用请求对应的所述调用信息。也就是说,可以通过所述checkSelfPermission或所述requestPermission中设置的调用接口,将所述调用请求对应的所述调用信息传入所述中间件层。
本领域技术人员应当理解,以上所举例的步骤S204的实现方式仅仅是一种举例,该方案能够比较简单地实现本实施例中的方法,无需对框架层进行改变。但是,本领域技术人员应当能够想到还有很多种方法能够实现步骤S204,例如,直接修改框架层中的权限检查和申请相关的处理流程以加入异常调用判断,例如,直接在框架层中包括一用于进行异常调用的判断的异常调用判断组件以及用于读取进行异常判断所需的信息的信息读取组件,同样能够实现异常调用的判断。除此之外,本领域技术人员也能够理解,可选地还可以采用其他的模块来实现异常调用判断等等,本发明对异常调用判断的具体实现形式不做限定。
图4是根据本发明实施例的终端中敏感权限模块的调用请求的处理方法中步骤S204的另一具体流程图,如图4所示,在所述框架层向所述终端中的中间件层发送所述调用请求对应的调用信息的步骤S2042之前,还包括以下之一:
2040-1,在所述调用请求包括所述checkSelfPermission的情况下,所述框架层根据系统中记录的所述应用对各敏感权限模块的调用权限判断是否允许所述调用请求,并在判断结果为允许的情况下,继续所述框架层向所述终端中的中间件层发送所述调用请求对应的调用信息的步骤;
2040-2,在所述调用请求包括所述checkSelfPermission的情况下,所述框架层根据系统中记录的所述应用对各敏感权限模块的调用权限判断是否允许所述调用请求,并在判断结果为不允许的情况下,所述框架层对所述checkSelfPermission所请求调用的敏感权限模块发起requestPermission,并根据所述敏感权限模块的类型判断是否对所述requestPermission进行自动授权,在判断结果为进行自动授权的情况下,继续所述框架层向所述终端中的中间件层发送所述调用请求对应的调用信息的步骤;
2040-3,在所述调用请求包括所述requestPermission的情况下,所述框架层根据所述requestPermission所请求调用的敏感权限模块的类型判断是否对所述requestPermission进行自动授权,在判断结果为进行自动授权的情况下,继续所述框架层向所述终端中的中间件层发送所述调用请求对应的调用信息的步骤。
作为一个示例性实施例,图5是根据本发明实施例的终端中敏感权限模块的调用请求的处理方法中步骤S206的具体流程图,如图5所示,步骤S206在所述调用请求满足所述预定条件的情况下,对所述调用请求执行预定处理可以包括:
步骤S2062,所述中间件层将判断所述调用请求是否满足所述预定条件的判断结果返回给所述框架层;
步骤S2064,所述框架层在所述判断结果为所述调用请求满足所述预定条件的情况下,对所述调用请求执行预定处理。
图6是根据本发明实施例的终端中敏感权限模块的调用请求的处理方法的具体流程图,如图6所示,在步骤S206对所述调用请求执行预定处理之后,还包括:
步骤S602,将所述调用请求所产生的调用记录存储到数据库,其中,所述调用记录包括以下至少之一:发起所述调用请求的所述应用的标识、调用的所述敏感权限模块的类型、开始调用的时间、结束调用的时间、调用持续的时长。
作为一个示例性实施例,可以由中间件层将所述调用请求所产生的调用记录存储到数据库,中间件层可以获取的数据包括第三方APP访问联系人模块、短信模块、GPS模块的时刻,使用Camera、麦克风的调用时长等等。
图7是根据本发明实施例的终端中敏感权限模块的调用请求的处理方法的另一具体流程图,如图7所示,在步骤S602将所述调用请求所产生的调用记录存储到数据库之后,还包括:
步骤S702,接收调用记录查看请求;
步骤S704,根据所述调用记录查看请求,从所述数据库中读取所述调用记录查看请求所对应的调用记录,并分析和/或显示读取的所述调用记录。
作为一个示例性实施例,对于收集到的信息可以做以下处理:对获取的信息进行可视化分析(柱状图等展示),统计联系人、短信、GPS的访问次数;统计Camera、麦克风调用时长,用户可以随时查看这些信息。这样用户就可以轻松知晓自己的隐私数据被访问的详细情况。
针对于不同种类的异常调用,可以考虑设置不同的预定处理方式,以实现更加灵活多样的异常调用处理方式,提高用户的体验。因此,所述预定条件和所述预定处理之间可以存在对应关系,步骤S206在所述调用请求满足所述预定条件的情况下,对所述调用请求执行预定处理的过程可以包括:根据所述调用请求满足的所述预定条件,确定与所述预定条件相对应的预定处理,并对所述调用请求执行确定的所述预定处理。
这种对应关系可以根据需求进行设置,例如,可以出厂前预先设置,也可以由用户进行设置。作为一个示例性的实施例,预定条件和预定处理之间存在的对应关系可以如下:
在所述预定条件包括所述应用发起所述调用请求时所述终端的屏幕处于关闭状态的情况下,所述预定处理至少包括拒绝所述调用请求;
在所述预定条件包括所述应用发起所述调用请求时处于后台的情况下,所述预定处理至少包括针对所述调用请求发出提醒或询问是否允许所述调用请求;
在所述预定条件包括所述应用发起所述调用请求时处于前台但所述应用发起所述调用请求之前的预定时长之内在所述应用的界面上未接收到触摸操作的情况下,所述预定处理至少包括针对所述调用请求发出提醒或询问是否允许所述调用请求。
本领域技术人员应当理解,以上的对应关系仅仅是一个例子,本实施例的方案并不限于此,对应关系应当可以根据实际应用场景或用户需求进行随意设置。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
在本实施例中还提供了一种终端中敏感权限模块的调用请求的处理装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图8是根据本发明实施例的终端中敏感权限模块的调用请求的处理装置的结构框图,如图8所示,该装置包括:
调用请求接收模块81,用于接收终端中的应用对敏感权限模块进行调用的调用请求;
敏感权限模块的概念在本领域中是公知的,其是一系列与用户隐私相关的模块,其能够直接或间接的控制终端的传感器运作、或读取终端中的用户数据,对这些模块的调用需要进行权限检查或权限申请。这类敏感权限模块包括但不限于:联系人模块、短信模块、通话记录模块、GPS模块、Camera模块、麦克风模块等等。
判断模块82,用于判断所述调用请求是否满足预定条件,其中,所述预定条件包括以下至少之一:所述应用发起所述调用请求时处于后台、所述应用发起所述调用请求时所述终端的屏幕处于关闭状态、所述应用发起所述调用请求时处于前台但所述应用发起所述调用请求之前的预定时长之内在所述应用的界面上未接收到触摸操作;
处理模块83,用于在所述调用请求满足所述预定条件的情况下,对所述调用请求执行预定处理,其中,所述预定处理包括以下至少之一:拒绝所述调用请求、针对所述调用请求发出提醒、询问是否允许所述调用请求。
本步骤中,所涉及的预定处理旨在防止异常调用,从而防止用户隐私泄露。其中,通过拒绝所述调用请求,可以直接阻断拒绝所述应用使用所请求的隐私权限模块;通过针对所述调用请求发出提醒,可以发送notification提示用户存在有异常调用行为的应用,引起用户警觉;通过询问是否允许所述调用请求,可以采用弹出Dialog的方式让用户来决定是否同意调用,将控制权交给用户,当用户同意时,允许调用请求,该允许调用请求的行为可以是长期允许,为了安全起见,也可以是预定时间段内允许,例如,允许10分钟内该应用对该敏感权限模块的调用,或者,只授权其使用24小时超过24小时后要重新授权。
通过上述步骤,在接收到终端中的应用对敏感权限模块进行调用的调用请求后,针对调用请求进行了异常调用的判断,能够监控到应用处于后台、熄屏、或前台未收到用户的触摸操作的情况下发起的调用请求,并相应的执行拒绝、提醒、询问等操作中的一种或多种。通过该方案,可以解决软件在用户不知情的情况下随意调用传感器获取外界信息或随意读取用户隐私数据,造成用户隐私的泄露的问题,达到了有效监控应用对敏感权限模块(例如,可以包括以下至少之一:麦克风模块、摄像头模块、GPS模块、短信模块、联系人模块、通话记录模块等等)的调用的效果,在某些优选实施例中,还能够实现调用数据的记录、分析和展示。
终端中应用(包括第三方应用和系统应用)要调用终端中的传感器(例如,GPS、麦克风、摄像头等等)或者读取终端中的敏感用户信息(例如,读取短信、联系人信息、通话记录等等)时,可以向终端中的框架层检查或申请敏感权限,一般可以通过两种请求来完成。以下结合图9来详细描述终端中敏感权限模块的调用请求的处理装置在终端系统中的分层处理方式,需要说明的是,该方案仅仅是一种优选的实现方式,不应当被理解为是对本申请的保护范围的限定。
图9是根据本发明实施例的终端中敏感权限模块的调用请求的处理装置的详细结构框图,如图9所示,
所述调用请求接收模块81位于所述终端中的框架层,用于接收所述应用发起的对所述敏感权限模块进行调用的所述调用请求,其中,所述调用请求包括以下之一:调用权限检查请求checkSelfPermission、调用权限申请请求requestPermission。
终端中的框架层作为系统层面的基础框架,一般是具有通用性的。为了在不改变基础框架的前提下实现本申请所述的方法,一种简单、便捷的方法是增加一个中间件层,在框架层的基础上调用中间件层来实现异常调用的判断。该中间件层能够和联系人模块、短信模块、GPS模块、Camera模块、麦克风模块等进行通信。对于已经被授权的APP启动调用隐私模块,中间件层首先进行异常调用判断。
因此,作为一个可选的示例性实施方式,如图9所示,所述装置还包括:信息传递模块91,位于所述框架层,用于向位于所述终端中的中间件层的所述判断模块82发送所述调用请求对应的调用信息,所述调用请求对应的所述调用信息包括:发起所述调用请求的所述应用的标识,以及所述框架层判断是否允许所述调用请求的判断结果。
所述判断模块82用于根据所述调用信息判断所述调用请求是否满足所述预定条件。
作为一种示例性实施方式,由于应用需要调用敏感权限模块时,会向框架层发起checkSelfPermission或requestPermission,所以,所述框架层可以通过改变checkSelfPermission或requestPermission的接口调用行为,向所述终端中的中间件层发送所述调用请求对应的所述调用信息。也就是说,所述信息传递模块91用于通过所述checkSelfPermission或所述requestPermission中设置的调用接口,将所述调用请求对应的所述调用信息传入位于所述中间件层的所述判断模块82。
本领域技术人员应当理解,以上所举例的异常调用的监控实现方式仅仅是一种举例,该方案能够比较简单地实现本实施例中的方法,无需对框架层进行改变。但是,本领域技术人员应当能够想到还有很多种方法能够实现异常调用的监控,例如,直接修改框架层中的权限检查和申请相关的处理流程以加入异常调用判断,或者采用其他的模块来实现异常调用判断等等,本发明对此不做限定。
如图9所示,该系统还可以包括权限控制模块92,位于所述终端中的框架层,用于执行以下之一:
在所述调用请求包括所述checkSelfPermission的情况下,根据系统中记录的所述应用对各敏感权限模块的调用权限判断是否允许所述调用请求,并在判断结果为允许的情况下,调用所述信息传递模块91向位于所述终端中的中间件层的所述判断模块82发送所述调用请求对应的调用信息;
在所述调用请求包括所述checkSelfPermission的情况下,根据系统中记录的所述应用对各敏感权限模块的调用权限判断是否允许所述调用请求,并在判断结果为不允许的情况下,对所述checkSelfPermission所请求调用的敏感权限模块发起requestPermission,并根据所述敏感权限模块的类型判断是否对所述requestPermission进行自动授权,在判断结果为进行自动授权的情况下,调用所述信息传递模块91向位于所述终端中的中间件层的所述判断模块82发送所述调用请求对应的调用信息;
在所述调用请求包括所述requestPermission的情况下,根据所述requestPermission所请求调用的敏感权限模块的类型判断是否对所述requestPermission进行自动授权,在判断结果为进行自动授权的情况下,调用所述信息传递模块91向位于所述终端中的中间件层的所述判断模块72发送所述调用请求对应的调用信息。
作为一个示例性实施例,如图9所示,所述处理模块83可以位于所述终端的所述框架层,所述判断模块82用于将判断所述调用请求是否满足所述预定条件的判断结果返回给所述处理模块83;所述处理模块83用于在所述判断结果为所述调用请求满足所述预定条件的情况下,对所述调用请求执行预定处理。
如图9所示,该系统还可以包括:
存储模块93,用于将所述调用请求所产生的调用记录存储到数据库,其中,所述调用记录包括以下至少之一:发起所述调用请求的所述应用的标识、调用的所述敏感权限模块的类型、开始调用的时间、结束调用的时间、调用持续的时长。
作为一个示例性实施例,可以由中间件层将所述调用请求所产生的调用记录存储到数据库,中间件层可以获取的数据包括第三方APP访问联系人模块、短信模块、GPS模块的时刻,使用Camera、麦克风的调用时长等等。因此,存储模块可以位于所述终端中的中间件层。但是,本领域技术人员应当可以理解,其也可以通过其他方式实现,例如,直接在框架层中设置存储模块,或者在其他模块中实现存储模块的功能,本实施例对此不做限定。
如图9所示,该系统还可以包括:
查看请求接收模块94,用于接收调用记录查看请求;
分析显示模块95,用于根据所述调用记录查看请求,从所述数据库中读取所述调用记录查看请求所对应的调用记录,并分析和/或显示读取的所述调用记录。
作为一个示例性实施例,对于收集到的信息可以做以下处理:对获取的信息进行可视化分析(柱状图等展示),统计联系人、短信、GPS的访问次数;统计Camera、麦克风调用时长,用户可以随时查看这些信息。这样用户就可以轻松知晓自己的隐私数据被访问的详细情况。
针对于不同种类的异常调用,可以考虑设置不同的预定处理方式,以实现更加灵活多样的异常调用处理方式,提高用户的体验。因此,所述预定条件和所述预定处理之间可以存在对应关系,所述处理模块83用于:在所述调用请求满足所述预定条件的情况下,根据所述调用请求满足的所述预定条件,确定与所述预定条件相对应的预定处理,并对所述调用请求执行确定的所述预定处理。
这种对应关系可以根据需求进行设置,例如,可以出厂前预先设置,也可以由用户进行设置。作为一个示例性的实施例,预定条件和预定处理之间存在的对应关系可以如下:
在所述预定条件包括所述应用发起所述调用请求时所述终端的屏幕处于关闭状态的情况下,所述预定处理至少包括拒绝所述调用请求;
在所述预定条件包括所述应用发起所述调用请求时处于后台的情况下,所述预定处理至少包括针对所述调用请求发出提醒或询问是否允许所述调用请求;
在所述预定条件包括所述应用发起所述调用请求时处于前台但所述应用发起所述调用请求之前的预定时长之内在所述应用的界面上未接收到触摸操作的情况下,所述预定处理至少包括针对所述调用请求发出提醒或询问是否允许所述调用请求。
本领域技术人员应当理解,以上的对应关系仅仅是一个例子,本实施例的方案并不限于此,对应关系应当可以根据实际应用场景或用户需求进行随意设置。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
本发明的实施例还提供了一种存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,接收终端中的应用对敏感权限模块进行调用的调用请求;
S2,判断所述调用请求是否满足预定条件,其中,所述预定条件包括以下至少之一:所述应用发起所述调用请求时处于后台、所述应用发起所述调用请求时所述终端的屏幕处于关闭状态、所述应用发起所述调用请求时处于前台但所述应用发起所述调用请求之前的预定时长之内在所述应用的界面上未接收到触摸操作;
S3,在所述调用请求满足所述预定条件的情况下,对所述调用请求执行预定处理,其中,所述预定处理包括以下至少之一:拒绝所述调用请求、针对所述调用请求发出提醒、询问是否允许所述调用请求。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
本发明的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
可选地,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,接收终端中的应用对敏感权限模块进行调用的调用请求;
S2,判断所述调用请求是否满足预定条件,其中,所述预定条件包括以下至少之一:所述应用发起所述调用请求时处于后台、所述应用发起所述调用请求时所述终端的屏幕处于关闭状态、所述应用发起所述调用请求时处于前台但所述应用发起所述调用请求之前的预定时长之内在所述应用的界面上未接收到触摸操作;
S3,在所述调用请求满足所述预定条件的情况下,对所述调用请求执行预定处理,其中,所述预定处理包括以下至少之一:拒绝所述调用请求、针对所述调用请求发出提醒、询问是否允许所述调用请求。
可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
以下的示例性实施方式中,结合一些具体应用场景,对本发明实施例的终端中敏感权限模块的调用请求的处理方案进行详细的描述,需要注意的是,以下示例性的描述仅仅用于帮助理解实施例方案,而不应构成对其的不当限定。
首先,对于该示例性实施方式所基于的实现架构进行说明,图10是根据本发明示例性实施例的系统架构示意图,如图10所示,终端中的系统包括以下层:
框架层1001,其检测到第三方应用检查或请求敏感权限(比如访问联系人,短信,Camera,GPS,麦克风等)时,则与中间件层1002通信,传递数据给中间件层1002进行判断。
中间件层1002,其接收来自框架层1001的数据,进行异常调用判断,并将结果返回给框架层1001,同时会将相应的第三方调用数据传入数据库层1003进行保存。
数据库层1003,其接收处理中间件层1002传入的数据,进行插入,更新等。
数据展示模块1004,其对数据库层1003中的数据进行分析后,展示给用户,可以用多种表现形式。
以下对该示例性实施方式的整体流程进行详细说明。图11是根据本发明示例性实施例的整体流程图,以下对图11中所涉及的各个部分进行简要的说明。
APP1APP2APP3是指第三方应用或者系统的独立应用。
联系人模块,短信模块,Camera模块,GPS模块,麦克风模块,是指手机中一些敏感信息模块,包括框架层处理及传感器服务等,对应图10的框架层1001。
中间件层,对应图10的中间件层1002。
数据库,对应图10的数据库层1003。
数据展示模块,对应图10的数据展示模块1004。
以下对该示例性实施例中系统的参数假定进行说明。
Middleware.class--中间件层服务
public enum EnumTYPE{
SMSTYPE=1,//表示获取短信数据类型
CONTACTTYPE,//表示获取联系人数据类型
CAMERATYPE,//表示调用Camera数据类型
GPSTYPE,//表示调用GPS数据类型
MICROPHONETYPE;//表示调用麦克风数据类型
}
Boolean isUseStart=true;//true--开始使用;false--结束使用
以下详细描述图11中的整体流程图中的基本动作。
手机自带APP或者第三方市场上下载的APP,当这些APP读取联系人,短信数据,或者打开/释放Camera,GPS,麦克风等服务时,在框架层1001会检测到这些APP的行为。
框架层1001的处理如下:
第三方应用请求调用隐私权限会调用checkSelfPermission方法或者requestPermissions方法(无论APP是否已经获取权限)。框架层将调用信息传递给中间件层1002。对于checkSelfPermission方法框架层返回True或False(True表示APP已经获取权限,False表示APP没有获取权限)。对于requestPermissions方法框架层会判断是用户主动授权还是系统自动授权,然后框架层将结果传递给中间件层1002。具体地址,可以通过修改Android SDK checkSelfPermission和requestPermissions接口,将第三方应用uid和checkSelfPermission或者requestPermissions的返回值传入中间件层1002中。
中间件层1002处理流程如下:
中间件层1002进行是否是异常调用的判断,从而进行拒绝或者同意该次请求。这里对一些技术点细节进行说明,需要说明的是,以下所述处理方法属于可行的很多种处理方式中的一种,此处列出仅仅是用于举例,不应当被理解为唯一的处理方式。
I)如何获取是哪个APP调用的
可以通过Android标准SDK接口(如:Binder.getCallingUid())获取第三方应用uid,从而获取到具体的应用包名。
II)前台和后台APP如何区分
首先通过标准SDK接口查询当前手机运行的所有进程,然后遍历所有进程属性中uid值跟传入的uid值进行判断,如果相等,则读取该进程是否前台还是后台的属性,进而判定返回结果
图12是根据本发明示例性实施例的权限检查、申请及异常判断的流程图,以下结合图12给出几种场景下框架层1001和中间件层1002配合,完成调用权限初步检查以及异常调用的判断的过程。
1.对于第三方应用查询短信(GPS、联系人过程类似)数据会有以下四种情况:
1.1)框架层1001针对checkSelfPermission返回值为True,则中间件层1002首先判断第三方应用处于前台还是后台,如果是后台则获取应用包名并发送一个Notification告知用户该请求已经拒绝。在notification中用户可以点击进入三方应用的权限列表界面;如果是前台,则检测用户在请求事件时间之前几秒内是否有触摸事件,如果没有触屏事件的话,则弹出Dialog提示用户,用户可以点击允许或拒绝的按钮。对于前台应用则同时将该应用的包名和查询数据的时间以及标记为获取短信类型数据传递到数据库中,详细参数如下:
a)传递第三方应用包名
b)传递数据类型为EnumTYPE.SMSTYPE,GPS为GPSTYPE,联系人为CONTACTTYPE
c)传递是否开始使用标记为true
d)传递开始调用的时间。
如果用户允许后台应用的操作,中间件层1002同样需要将使用数据存入数据库。
1.2)框架层1001针对checkSelfPermission返回值是False,接着判断requestPermissions结果是用户主动授权还是系统自动授权,然后根据结果进入步骤1.3)或1.4)。
1.3)requestPermissions返回结果是用户主动授权,这时候应用处于前台并且用户主动授权了短信访问权限,应用可以正常访问短信。然后中间件层1002将此次短信访问时间写入数据库中。
1.4)requestPermissions返回结果是系统自动授权,这时候进入到步骤1.1)。
2.对于第三方应用使用麦克风(Camera情况类似)数据会有以下四种情况:
2.1)框架层1001针对checkSelfPermission返回值为True,则中间件层1002首先判断第三方应用处于前台还是后台,如果是后台则获取应用包名并发送一个Notification告知用户该请求已经拒绝。在notification中用户可以点击进入三方应用的权限列表界面;如果是前台,则检测用户在请求事件时间之前几秒内是否有触摸事件,如果没有触屏事件的话,则弹出Dialog提示用户,用户可以点击允许或拒绝的按钮。对于前台应用则同时将该应用的包名和查询数据的时间以及标记为获取短信类型数据传递到数据库中,详细参数如下:
a)传递第三方应用包名
b)传递数据类型为EnumTYPE.MICROPHONETYPE,Camera为CAMERATYPE类型
c)传递是否开始使用标记为true
d)传递开始调用的时间
e)传递结束调用的时间
如果用户允许后台应用的操作,中间件层1002同样需要将使用数据存入数据库。
2.2)框架层1001针对checkSelfPermission返回值是False,接着判断requestPermissions结果是用户主动授权还是系统自动授权,然后根据结果进入步骤2.3)或2.4)。
2.3)requestPermissions返回结果是用户主动授权,这时候应用处于前台并且用户主动授权了麦克风访问权限,应用可以正常访麦克风。然后中间件层1002将此次麦克风访问时间写入数据库中。
2.4)requestPermissions返回结果是系统自动授权,这时候进入到步骤1)。
3.对于熄屏调用的情况,当中间件层1002监测到手机熄屏广播事件时,则进行标记当前手机屏幕为关闭状态,此时中间件层1002可以采取直接拒绝权限;后台应用授权也可以采用更为灵活的方式,比如只授权24小时(在24小时内可以自由访问,24小时之后就需要重新授权)。当中间件层1002监测到亮屏事件时,则修改标记屏幕为使用状态,此时处理流程同1和2中的处理流程。
数据库层1003的处理如下:
处理中间层传入的数据,进行有效性检查后,将其插入数据库中保存。
接收数据展示层的查询请求,反馈对应的数据给其显示。
数据展示模块1004的处理如下:
通过各种组合查询,不同维度将数据库中的数据在UI中展示出来,方便用户分析和判断,比如:APP访问联系人、短信、GPS的次数,调用Camera,麦克风时长;某个应用最近一段时间内使用隐私数据的分析;某个隐私数据或者传感器最近一段时间有哪些应用进行使用;可以设置固定每周或者每月将分析数据推送通知栏提醒用户查看;或者发现某一段时间段哪些应用多次频繁使用隐私数据提醒用户等。具体展示方式此处不一一列举。
参照以上的方案,可以实现异常调用的有效监控,从用户角度而言,还可以查看统计信息,从而了解应用调用的情况,发现异常应用。以下给出一个通过用户界面显示调用统计信息的例子。
图13是根据本发明示例性实施方式的麦克风和短信的使用时间段统计图。
以麦克风为例,横轴是时间坐标,表示一天的0-24小时,如果长条被特定图案填充表明这段时间麦克风被使用。通过使用不同的图案或颜色区分不同的APP,点击可以显示使用的具体数据(使用时长和开始结束时刻)。通过双指捏合可以显示一周的使用图。Camera的使用可以采用与图13中麦克风的使用相类似的图来显示。
以短信为例,横轴是时间坐标,表示一天的0-24小时,长方形条显示了某个时间段内短信被访问的次数,通过使用不同的图案区分不同的APP,点击可以显示使用的具体数据(详细到每次的使用时刻)。通过双指捏合可以显示一周的使用图。联系人、GPS的使用可以采用与图13中短信的使用相类似的图来显示。
上面仅仅是展示实例,具体展示方式和提醒方式可以多种多样。比如可以定时统计数据提醒,某时间段异常行为数据提醒等。
图14是根据本发明示例性实施方式的应用后台使用麦克风被阻止后提醒用户的界面的示意图。如图14所示,后台应用(例如,APP1)的调用或熄屏时应用调用敏感权限模块时,终端可以直接拒绝调用并使用notification提醒用户。
综上,通过本发明,在接收到终端中的应用对敏感权限模块进行调用的调用请求后,针对调用请求进行了异常调用的判断,能够监控到应用处于后台、熄屏、或前台未收到用户的触摸操作的情况下发起的调用请求,并相应的执行拒绝、提醒、询问等操作中的一种或多种。通过该方案,可以解决软件在用户不知情的情况下随意调用传感器获取外界信息或随意读取用户隐私数据,造成用户隐私的泄露的问题,达到了有效监控应用对敏感权限模块(例如,可以包括以下至少之一:麦克风模块、摄像头模块、GPS模块、短信模块、联系人模块、通话记录模块等等)的调用的效果,在某些优选实施例中,还能够实现调用数据的记录、分析和展示。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (23)
1.一种终端中敏感权限模块的调用请求的处理方法,其特征在于,包括:
接收终端中的应用对敏感权限模块进行调用的调用请求;
判断所述调用请求是否满足预定条件,其中,所述预定条件包括以下至少之一:所述应用发起所述调用请求时处于后台、所述应用发起所述调用请求时所述终端的屏幕处于关闭状态、所述应用发起所述调用请求时处于前台但所述应用发起所述调用请求之前的预定时长之内在所述应用的界面上未接收到触摸操作;
在所述调用请求满足所述预定条件的情况下,对所述调用请求执行预定处理,其中,所述预定处理包括以下至少之一:拒绝所述调用请求、针对所述调用请求发出提醒、询问是否允许所述调用请求。
2.根据权利要求1所述的方法,其特征在于,接收所述终端中的所述应用对所述敏感权限模块进行调用的所述调用请求包括:
所述终端中的框架层接收所述应用发起的对所述敏感权限模块进行调用的所述调用请求,其中,所述调用请求包括以下之一:调用权限检查请求checkSelfPermission、调用权限申请请求requestPermission。
3.根据权利要求2所述的方法,其特征在于,判断所述调用请求是否满足预定条件包括:
所述框架层向所述终端中的中间件层发送所述调用请求对应的调用信息;
所述中间件层根据所述调用信息判断所述调用请求是否满足所述预定条件。
4.根据权利要求3所述的方法,其特征在于,所述框架层向所述终端中的中间件层发送所述调用请求对应的所述调用信息包括:
通过所述checkSelfPermission或所述requestPermission中设置的调用接口,将所述调用请求对应的所述调用信息传入所述中间件层。
5.根据权利要求3或4所述的方法,其特征在于,所述调用请求对应的所述调用信息包括:发起所述调用请求的所述应用的标识,以及所述框架层判断是否允许所述调用请求的判断结果。
6.根据权利要求3所述的方法,其特征在于,在所述调用请求满足所述预定条件的情况下,对所述调用请求执行预定处理包括:
所述中间件层将判断所述调用请求是否满足所述预定条件的判断结果返回给所述框架层;
所述框架层在所述判断结果为所述调用请求满足所述预定条件的情况下,对所述调用请求执行预定处理。
7.根据权利要求3-6中任一项所述的方法,其特征在于,在所述框架层向所述终端中的中间件层发送所述调用请求对应的调用信息之前,还包括以下之一:
在所述调用请求包括所述checkSelfPermission的情况下,所述框架层根据系统中记录的所述应用对各敏感权限模块的调用权限判断是否允许所述调用请求,并在判断结果为允许的情况下,继续所述框架层向所述终端中的中间件层发送所述调用请求对应的调用信息的步骤;
在所述调用请求包括所述checkSelfPermission的情况下,所述框架层根据系统中记录的所述应用对各敏感权限模块的调用权限判断是否允许所述调用请求,并在判断结果为不允许的情况下,所述框架层对所述checkSelfPermission所请求调用的敏感权限模块发起requestPermission,并根据所述敏感权限模块的类型判断是否对所述requestPermission进行自动授权,在判断结果为进行自动授权的情况下,继续所述框架层向所述终端中的中间件层发送所述调用请求对应的调用信息的步骤;
在所述调用请求包括所述requestPermission的情况下,所述框架层根据所述requestPermission所请求调用的敏感权限模块的类型判断是否对所述requestPermission进行自动授权,在判断结果为进行自动授权的情况下,继续所述框架层向所述终端中的中间件层发送所述调用请求对应的调用信息的步骤。
8.根据权利要求1所述的方法,其特征在于,在对所述调用请求执行预定处理之后,还包括:
将所述调用请求所产生的调用记录存储到数据库,其中,所述调用记录包括以下至少之一:发起所述调用请求的所述应用的标识、调用的所述敏感权限模块的类型、开始调用的时间、结束调用的时间、调用持续的时长。
9.根据权利要求8所述的方法,其特征在于,将所述调用请求所产生的调用记录存储到数据库之后,还包括:
接收调用记录查看请求;
根据所述调用记录查看请求,从所述数据库中读取所述调用记录查看请求所对应的调用记录,并分析和/或显示读取的所述调用记录。
10.根据权利要求1所述的方法,其特征在于,所述预定条件和所述预定处理之间存在对应关系,在所述调用请求满足所述预定条件的情况下,对所述调用请求执行预定处理包括:
根据所述调用请求满足的所述预定条件,确定与所述预定条件相对应的预定处理,并对所述调用请求执行确定的所述预定处理。
11.根据权利要求10所述的方法,其特征在于,所述预定条件和所述预定处理之间存在的对应关系包括:
在所述预定条件包括所述应用发起所述调用请求时所述终端的屏幕处于关闭状态的情况下,所述预定处理至少包括拒绝所述调用请求;
在所述预定条件包括所述应用发起所述调用请求时处于后台的情况下,所述预定处理至少包括针对所述调用请求发出提醒或询问是否允许所述调用请求;
在所述预定条件包括所述应用发起所述调用请求时处于前台但所述应用发起所述调用请求之前的预定时长之内在所述应用的界面上未接收到触摸操作的情况下,所述预定处理至少包括针对所述调用请求发出提醒或询问是否允许所述调用请求。
12.一种终端中敏感权限模块的调用请求的处理装置,其特征在于,包括:
调用请求接收模块,用于接收终端中的应用对敏感权限模块进行调用的调用请求;
判断模块,用于判断所述调用请求是否满足预定条件,其中,所述预定条件包括以下至少之一:所述应用发起所述调用请求时处于后台、所述应用发起所述调用请求时所述终端的屏幕处于关闭状态、所述应用发起所述调用请求时处于前台但所述应用发起所述调用请求之前的预定时长之内在所述应用的界面上未接收到触摸操作;
处理模块,用于在所述调用请求满足所述预定条件的情况下,对所述调用请求执行预定处理,其中,所述预定处理包括以下至少之一:拒绝所述调用请求、针对所述调用请求发出提醒、询问是否允许所述调用请求。
13.根据权利要求12所述的装置,其特征在于,所述调用请求接收模块位于所述终端中的框架层,用于接收所述应用发起的对所述敏感权限模块进行调用的所述调用请求,其中,所述调用请求包括以下之一:调用权限检查请求checkSelfPermission、调用权限申请请求requestPermission。
14.根据权利要求13所述的装置,其特征在于,
所述装置还包括:信息传递模块,位于所述框架层,用于向位于所述终端中的中间件层的所述判断模块发送所述调用请求对应的调用信息;
所述判断模块用于根据所述调用信息判断所述调用请求是否满足所述预定条件。
15.根据权利要求14所述的装置,其特征在于,所述信息传递模块用于通过所述checkSelfPermission或所述requestPermission中设置的调用接口,将所述调用请求对应的所述调用信息传入位于所述中间件层的所述判断模块。
16.根据权利要求14或15所述的装置,其特征在于,所述调用请求对应的所述调用信息包括:发起所述调用请求的所述应用的标识,以及所述框架层判断是否允许所述调用请求的判断结果。
17.根据权利要求14所述的装置,其特征在于,所述处理模块位于所述终端的所述框架层,
所述判断模块用于将判断所述调用请求是否满足所述预定条件的判断结果返回给所述处理模块;
所述处理模块用于在所述判断结果为所述调用请求满足所述预定条件的情况下,对所述调用请求执行预定处理。
18.根据权利要求14-17中任一项所述的装置,其特征在于,还包括权限控制模块,位于所述终端中的框架层,用于执行以下之一:
在所述调用请求包括所述checkSelfPermission的情况下,根据系统中记录的所述应用对各敏感权限模块的调用权限判断是否允许所述调用请求,并在判断结果为允许的情况下,调用所述信息传递模块向位于所述终端中的中间件层的所述判断模块发送所述调用请求对应的调用信息;
在所述调用请求包括所述checkSelfPermission的情况下,根据系统中记录的所述应用对各敏感权限模块的调用权限判断是否允许所述调用请求,并在判断结果为不允许的情况下,对所述checkSelfPermission所请求调用的敏感权限模块发起requestPermission,并根据所述敏感权限模块的类型判断是否对所述requestPermission进行自动授权,在判断结果为进行自动授权的情况下,调用所述信息传递模块向位于所述终端中的中间件层的所述判断模块发送所述调用请求对应的调用信息;
在所述调用请求包括所述requestPermission的情况下,根据所述requestPermission所请求调用的敏感权限模块的类型判断是否对所述requestPermission进行自动授权,在判断结果为进行自动授权的情况下,调用所述信息传递模块向位于所述终端中的中间件层的所述判断模块发送所述调用请求对应的调用信息。
19.根据权利要求12所述的装置,其特征在于,还包括:
存储模块,用于将所述调用请求所产生的调用记录存储到数据库,其中,所述调用记录包括以下至少之一:发起所述调用请求的所述应用的标识、调用的所述敏感权限模块的类型、开始调用的时间、结束调用的时间、调用持续的时长。
20.根据权利要求19所述的装置,其特征在于,还包括:
查看请求接收模块,用于接收调用记录查看请求;
分析显示模块,用于根据所述调用记录查看请求,从所述数据库中读取所述调用记录查看请求所对应的调用记录,并分析和/或显示读取的所述调用记录。
21.根据权利要求12所述的装置,其特征在于,所述预定条件和所述预定处理之间存在对应关系,所述处理模块用于:在所述调用请求满足所述预定条件的情况下,根据所述调用请求满足的所述预定条件,确定与所述预定条件相对应的预定处理,并对所述调用请求执行确定的所述预定处理。
22.一种存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行所述权利要求1至11任一项中所述的方法。
23.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行所述权利要求1至11任一项中所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811307589.4A CN109711141A (zh) | 2018-11-05 | 2018-11-05 | 终端中敏感权限模块的调用请求的处理方法及装置 |
PCT/CN2019/115828 WO2020094027A1 (zh) | 2018-11-05 | 2019-11-05 | 终端中敏感权限模块的调用请求的处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811307589.4A CN109711141A (zh) | 2018-11-05 | 2018-11-05 | 终端中敏感权限模块的调用请求的处理方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109711141A true CN109711141A (zh) | 2019-05-03 |
Family
ID=66254866
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811307589.4A Pending CN109711141A (zh) | 2018-11-05 | 2018-11-05 | 终端中敏感权限模块的调用请求的处理方法及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN109711141A (zh) |
WO (1) | WO2020094027A1 (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111143089A (zh) * | 2019-12-23 | 2020-05-12 | 飞天诚信科技股份有限公司 | 一种应用程序调用第三方库动态提升权限的方法及装置 |
WO2020094027A1 (zh) * | 2018-11-05 | 2020-05-14 | 中兴通讯股份有限公司 | 终端中敏感权限模块的调用请求的处理方法及装置 |
CN112100612A (zh) * | 2020-09-03 | 2020-12-18 | 中国联合网络通信集团有限公司 | 一种终端权限保护方法、装置及终端 |
CN112860637A (zh) * | 2021-02-05 | 2021-05-28 | 广州海量数据库技术有限公司 | 一种基于审计策略来处理日志的方法及系统 |
CN114489419A (zh) * | 2022-01-13 | 2022-05-13 | 荣耀终端有限公司 | 权限控制方法及电子设备 |
CN115879149A (zh) * | 2022-12-01 | 2023-03-31 | 武汉卓讯互动信息科技有限公司 | 一种App隐私合规安全检测方法和检测平台 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103544435A (zh) * | 2013-10-18 | 2014-01-29 | 广东欧珀移动通信有限公司 | 防止偷拍的方法与装置 |
US20140201721A1 (en) * | 2013-01-14 | 2014-07-17 | International Business Machines Corporation | Framework and repository for analysis of software products |
CN106845208A (zh) * | 2017-02-13 | 2017-06-13 | 北京奇虎科技有限公司 | 异常应用控制方法、装置和终端设备 |
CN106933633A (zh) * | 2017-03-14 | 2017-07-07 | 北京奇虎科技有限公司 | 权限管理方法、装置和移动终端 |
CN106997433A (zh) * | 2017-03-22 | 2017-08-01 | 西安电子科技大学 | 一种Android系统权限管理方法 |
CN108549799A (zh) * | 2018-04-13 | 2018-09-18 | 深圳壹账通智能科技有限公司 | 安卓权限的管理方法、装置、终端和计算机存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109711141A (zh) * | 2018-11-05 | 2019-05-03 | 中兴通讯股份有限公司 | 终端中敏感权限模块的调用请求的处理方法及装置 |
CN109918930A (zh) * | 2019-03-11 | 2019-06-21 | 维沃移动通信有限公司 | 一种信息保护方法及终端设备 |
CN110191465A (zh) * | 2019-06-03 | 2019-08-30 | 努比亚技术有限公司 | 权限控制方法、移动终端及计算机可读存储介质 |
-
2018
- 2018-11-05 CN CN201811307589.4A patent/CN109711141A/zh active Pending
-
2019
- 2019-11-05 WO PCT/CN2019/115828 patent/WO2020094027A1/zh active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140201721A1 (en) * | 2013-01-14 | 2014-07-17 | International Business Machines Corporation | Framework and repository for analysis of software products |
CN103544435A (zh) * | 2013-10-18 | 2014-01-29 | 广东欧珀移动通信有限公司 | 防止偷拍的方法与装置 |
CN106845208A (zh) * | 2017-02-13 | 2017-06-13 | 北京奇虎科技有限公司 | 异常应用控制方法、装置和终端设备 |
CN106933633A (zh) * | 2017-03-14 | 2017-07-07 | 北京奇虎科技有限公司 | 权限管理方法、装置和移动终端 |
CN106997433A (zh) * | 2017-03-22 | 2017-08-01 | 西安电子科技大学 | 一种Android系统权限管理方法 |
CN108549799A (zh) * | 2018-04-13 | 2018-09-18 | 深圳壹账通智能科技有限公司 | 安卓权限的管理方法、装置、终端和计算机存储介质 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020094027A1 (zh) * | 2018-11-05 | 2020-05-14 | 中兴通讯股份有限公司 | 终端中敏感权限模块的调用请求的处理方法及装置 |
CN111143089A (zh) * | 2019-12-23 | 2020-05-12 | 飞天诚信科技股份有限公司 | 一种应用程序调用第三方库动态提升权限的方法及装置 |
CN111143089B (zh) * | 2019-12-23 | 2023-11-07 | 飞天诚信科技股份有限公司 | 一种应用程序调用第三方库动态提升权限的方法及装置 |
CN112100612A (zh) * | 2020-09-03 | 2020-12-18 | 中国联合网络通信集团有限公司 | 一种终端权限保护方法、装置及终端 |
CN112100612B (zh) * | 2020-09-03 | 2023-06-06 | 中国联合网络通信集团有限公司 | 一种终端权限保护方法、装置及终端 |
CN112860637A (zh) * | 2021-02-05 | 2021-05-28 | 广州海量数据库技术有限公司 | 一种基于审计策略来处理日志的方法及系统 |
CN114489419A (zh) * | 2022-01-13 | 2022-05-13 | 荣耀终端有限公司 | 权限控制方法及电子设备 |
CN115879149A (zh) * | 2022-12-01 | 2023-03-31 | 武汉卓讯互动信息科技有限公司 | 一种App隐私合规安全检测方法和检测平台 |
Also Published As
Publication number | Publication date |
---|---|
WO2020094027A1 (zh) | 2020-05-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109711141A (zh) | 终端中敏感权限模块的调用请求的处理方法及装置 | |
US7272382B2 (en) | Communication device operation management | |
CN105117187B (zh) | 多媒体信息展示方法和装置 | |
CN104486479B (zh) | 用于管理语境相关信息的系统、移动站和方法 | |
CN105704066B (zh) | 联网控制方法和装置、系统、安全网关、移动终端 | |
CN108647089A (zh) | 资源配置方法、装置、终端及存储介质 | |
CN105263120B (zh) | 一种提示可连接无线局域网络的方法及系统 | |
CN105682148A (zh) | 一种流量分享的方法及系统 | |
CN107465662A (zh) | 移动终端策略管理方法、移动终端及计算机可读存储介质 | |
CN109615738A (zh) | 门锁管理方法、装置、电子设备及存储介质 | |
CN107436777A (zh) | 移动终端、应用程序崩溃处理方法及装置 | |
CN103797760A (zh) | 控制移动装置上的文本消息 | |
CN110287694A (zh) | 应用程序管理方法、移动终端及存储介质 | |
CN109918268A (zh) | 系统兼容方法、装置、设备和计算机可读存储介质 | |
CN109120482A (zh) | 监控应用程序使用流量的方法及装置 | |
CN108401503A (zh) | 无人机服务的支持方法及装置 | |
CN110287162A (zh) | 内容分享方法和装置、电子设备及存储介质 | |
CN108133523A (zh) | 门禁控制方法及装置 | |
TW201800959A (zh) | 用於物聯網的智能設備控制方法、裝置和設備 | |
CN106331303B (zh) | 终端提醒事件的提醒方法及装置 | |
CN112492624A (zh) | 提醒使用5g功能方法、装置、电子设备及存储介质 | |
CN108260086B (zh) | 基于围栏的终端管控方法 | |
CN113163051A (zh) | 移动终端及其管控方法 | |
CN102917345B (zh) | 一种上报用户状态信息的方法及装置 | |
CN108400926A (zh) | 一种信息处理的方法、相关设备以及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190503 |
|
RJ01 | Rejection of invention patent application after publication |