CN117454364A - 权限管理方法、装置、电子设备及可读存储介质 - Google Patents

权限管理方法、装置、电子设备及可读存储介质 Download PDF

Info

Publication number
CN117454364A
CN117454364A CN202311406385.7A CN202311406385A CN117454364A CN 117454364 A CN117454364 A CN 117454364A CN 202311406385 A CN202311406385 A CN 202311406385A CN 117454364 A CN117454364 A CN 117454364A
Authority
CN
China
Prior art keywords
permission
application
request
authority
popup
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
Application number
CN202311406385.7A
Other languages
English (en)
Inventor
边超
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Vivo Mobile Communication Co Ltd
Original Assignee
Vivo Mobile Communication Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Vivo Mobile Communication Co Ltd filed Critical Vivo Mobile Communication Co Ltd
Priority to CN202311406385.7A priority Critical patent/CN117454364A/zh
Publication of CN117454364A publication Critical patent/CN117454364A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/51Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • Storage Device Security (AREA)

Abstract

本申请公开了一种权限管理方法、装置、电子设备及可读存储介质,属于数据安全领域。该方法包括:接收应用的第一权限请求,第一权限请求用于弹窗请求获取第一权限;在确定第一权限请求为应用过度索权行为的情况下,对应用将第一权限的权限状态设置为允许状态,并拦截弹窗请求的应用弹窗;其中,在允许状态下,对应用不返回第一权限的权限数据。

Description

权限管理方法、装置、电子设备及可读存储介质
技术领域
本申请属于数据安全领域,具体涉及一种权限管理方法、装置、电子设备及可读存储介质。
背景技术
目前,很多应用程序(Application,App)经常在运行时需要请求一些涉及到用户隐私的权限,比如获取用户的短信内容或者定位信息等等。
然而,在前APP运行并不需要使用这些危险权限的情况下,电子设备将这种索权行为则被认为是过度索权行为。此时,若不授予该权限,App则可能无法正常使用或者功能被禁止;若授权了权限,电子设备就会把联系人、通信录或者短信等这些过度权限所要获取的数据交给APP,即第三方。
如此,现有的权限管理方案有可能会导致造成用户隐私泄漏,安全系数较低。
发明内容
本申请实施例的目的是提供一种权限管理方法、装置、电子设备及可读存储介质,能够在应用存在应用过度索权行为的情况下,避免用户隐私泄露。
第一方面,本申请实施例提供了一种权限管理方法,该权限管理方法包括:接收应用的第一权限请求,第一权限请求用于弹窗请求获取第一权限;在确定第一权限请求为应用过度索权行为的情况下,对应用将第一权限的权限状态设置为允许状态,并拦截弹窗请求的应用弹窗;其中,在允许状态下,对应用不返回第一权限的权限数据。
第二方面,本申请实施例提供了一种权限管理装置,该权限管理装置包括:接收模块和处理模块;该接收模块,用于接收应用的第一权限请求,第一权限请求用于弹窗请求获取第一权限;该处理模块,用于在确定上述接收模块接收的第一权限请求为应用过度索权行为的情况下,对应用将第一权限的权限状态设置为允许状态;上述处理模块,还用于拦截弹窗请求的应用弹窗;其中,在允许状态下,对应用不返回第一权限的权限数据。
第三方面,本申请实施例提供了一种电子设备,该电子设备包括处理器和存储器,所述存储器存储可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如第一方面所述的方法的步骤。
第四方面,本申请实施例提供了一种可读存储介质,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现如第一方面所述的方法的步骤。
第五方面,本申请实施例提供了一种芯片,所述芯片包括处理器和通信接口,所述通信接口和所述处理器耦合,所述处理器用于运行程序或指令,实现如第一方面所述的方法。
第六方面,本申请实施例提供一种计算机程序产品,该程序产品被存储在存储介质中,该程序产品被至少一个处理器执行以实现如第一方面所述的方法。
在本申请实施例中,接收应用的第一权限请求,第一权限请求用于弹窗请求获取第一权限;在确定第一权限请求为应用过度索权行为的情况下,对应用将第一权限的权限状态设置为允许状态,并拦截弹窗请求的应用弹窗;其中,在允许状态下,对应用不返回第一权限的权限数据。如此,电子设备在判断第一权限请求为应用过度索权行为的情况下,将权限状态设置为允许状态,以使得第一应用可以正常使用,同时拦截第一权限请求的应用弹窗,且不将第一权限的权限数据返回至应用,从而使得应用不会获取到用户的真实隐私数据,进而在第一应用正常使用的情况下,避免了用户隐私数据的泄露。
附图说明
图1是本申请实施例提供的一种权限管理方法的流程示意图之一;
图2是本申请实施例提供的一种权限管理方法的流程示意图之二;
图3是本申请实施例提供的一种权限管理方法的流程示意图之三;
图4是本申请实施例提供的一种权限管理方法的流程示意图之四;
图5是本申请实施例提供的一种系统权限结构示意图;
图6是本申请实施例提供的一种权限管控进程设置权限状态方法的流程示意图;
图7是本申请实施例提供的一种权限管理方法的流程示意图之五;
图8是本申请实施例提供的一种权限管理装置的结构示意图之一;
图9是本申请实施例提供的一种权限管理装置的结构示意图之二;
图10是本申请实施例提供的一种权限管理装置的结构示意图之三;
图11是本申请实施例提供的一种电子设备的硬件结构示意图之一;
图12是本申请实施例提供的一种电子设备的硬件结构示意图之二。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”等所区分的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可以是多个。此外,说明书以及权利要求中“和/或”表示所连接对象的至少其中之一,字符“/”,一般表示前后关联对象是一种“或”的关系。
下面结合附图,通过具体的实施例及其应用场景对本申请实施例提供的权限管理方法、装置、电子设备及可读存储介质进行详细地说明。
目前,很多应用程序(Application,APP)经常在运行时需要请求一些涉及到用户隐私的权限,比如获取用户的短信内容或者定位信息等等。
然而,在APP运行并不需要使用这些隐私权限的情况下,电子设备将这种索权行为则被认为是应用过度索权行为。此时,若不授予该权限,APP则可能无法正常使用或者功能被禁止;若授权了权限,电子设备就会把联系人、通信录或者短信等这些权限所要获取的隐私数据发送至APP,即第三方。
在相关技术的申请权限流程中,以应用为APP1为例,电子设备会检查APP1的某个权限,若该权限没有被授权,则电子设备会接收到APP1的权限请求。此时,电子设备显示屏幕上会显示该权限的弹窗请求,当用户点击弹窗请求中的选项后,APP1则会在进程(Activity)中会重写请求权限结果(onRequestPermissionResult)。例如,若用户点击弹窗请求中的允许选项,即电子设备获取的用户点击的返回值为允许(PERMISSION_GRANTED),则电子设备将该权限的权限状态设置为允许状态,并继续后续的业务流程,也就是说,电子设备在APP1使用该权限的情况下,可以获取到该权限对应的数据信息;若用户点击弹窗请求中的拒绝选项,即电子设备获取的用户点击的返回值为拒绝(PERMISSION_DENIED),则电子设备将该权限的权限状态设置为禁止状态,并调用应显示被请求允许函数(shouldShowRequestPermissionRationale)。在该函数中,如果电子设备接收到应用返回了false值,则表示用户选择了“禁止且不再询问”的选项,电子设备将不会再接收到APP1对于该权限的权限请求;如果电子设备接收到应用返回了true值,则表示用户选择了“禁止”的选项,那么电子设备虽然拒绝了本次该权限的权限请求,但是还可以再次接收APP1对于该权限的权限请求。
然而,电子设备会接收到APP1使用Activity#onCreate()方法发送的大量的权限请求,当用户拒绝授权某个权限时,电子设备则无法继续运行APP1的相关功能。如此,导致用户只能同意授权,以使得电子设备将无关应用功能的用户数据发送至APP1,从而造成用户隐私泄漏,安全系数较低。
例如,有一些应用会在应用一开始请求获取用户的个人信息,例如,短信、联系人权限,但是应用自身的业务并没有使用短信、联系人的相关功能,这样不但存在应用过度索权行为,而且还有可能造成了用户的个人隐私数据泄露,因此,本申请实施例中在判断应用存在应用过度索权行为后,在应用获取用户数据的情况下,若权限的权限状态为允许状态,则会进一步判断该权限的权限请求是否为过度索权行为,如果应用存在过度索权行为,并且没有用到该权限对应的功能,则电子设备会将虚拟的数据发送给应用,以保护用户的隐私数据。
而在本申请实施例中,接收应用的第一权限请求,第一权限请求用于弹窗请求获取第一权限;在确定第一权限请求为应用过度索权行为的情况下,对应用将第一权限的权限状态设置为允许状态,并拦截弹窗请求的应用弹窗;其中,在允许状态下,对应用不返回第一权限的权限数据。如此,电子设备在判断第一权限请求为应用过度索权行为的情况下,将权限状态设置为允许状态,以使得第一应用可以正常使用,同时拦截第一权限请求的应用弹窗,且不将第一权限的权限数据返回至应用,从而使得应用不会获取到用户的真实隐私数据,进而在第一应用正常使用的情况下,避免了用户隐私数据的泄露。
本实施例提供的权限管理方法的执行主体可以为权限管理装置,该权限管理装置可以为电子设备,也可以为该电子设备中的控制模块或处理模块等。以下以电子设备为例来对本申请实施例提供的技术方案进行说明。
本申请实施例提供一种权限管理方法,图1示出了本申请实施例提供的一种权限管理方法的流程图,该方法可以应用于电子设备。如图1所示,本申请实施例提供的权限管理方法可以包括下述的步骤201至步骤202。
步骤201、电子设备接收应用的第一权限请求。
在本申请一些实施例中,上述应用可以为电子设备系统自带的应用,也可以为第三方应用。
在本申请一些实施例中,上述第一权限请求用于弹窗请求获取第一权限。
在本申请一些实施例中,上述弹窗请求为在电子设备接收到权限请求的情况下,会采用弹窗的形式发起权限请求,以供用户根据实际情况选择相应的权限状态选项。
在本申请一些实施例中,权限状态选项包括以下至少一项:允许、禁止以及禁止不再询问。
示例性地,若用户选择权限状态选项为允许,则表示电子设备允许应用获取该权限的权限数据。
示例性地,若用户选择权限状态选项为禁止,则表示电子设备禁止应用获取该权限的权限数据。
示例性地,若用户选择权限状态选项为禁止不再询问,则表示电子设备禁止应用获取该权限的权限数据、且有关该权限的权限请求均不再询问,一律按照禁止获取处理。
步骤202、电子设备在确定第一权限请求为应用过度索权行为的情况下,对应用将第一权限的权限状态设置为允许状态,并拦截弹窗请求的应用弹窗。
在本申请一些实施例中,上述应用过度索权行为是应用想要获取当前运行不需要的权限数据的行为。
在本申请一些实施例中,在第一权限的权限状态为允许状态下,电子设备对应用不返回第一权限的权限数据。
一种示例中,在第一权限的权限状态为允许状态下,对第一应用返回空的权限数据,或者虚拟的权限数据,即不是真实的权限数据。
在本申请一些实施例中,上述“弹窗请求的应用弹窗”为应用发起的用于请求第一权限请求对应的应用弹窗。
在本申请一些实施例中,电子设备在确定第一权限请求为应用过度索权行为的情况下,将拦截第一权限请求的应用弹窗,也就是说,电子设备的显示屏幕上不会显示该第一权限请求对应的应用弹窗。
在一种可能的实施例中,电子设备在检测到应用运行不需要第一权限的权限数据情况下,将第一权限请求确定为应用过度索权行为。
可选地,在本申请实施例中,本申请提供的权限管理方法还包括步骤301:
步骤301、电子设备在应用运行不需要第一权限的权限数据的情况下,确定第一权限请求为应用过度索权行为。
在本申请一些实施例中,上述“在应用运行不需要第一权限的权限数据的情况”包括以下至少一项:
情况1:应用运行所需要的接口与第一权限所请求的获取的接口数据不同;
情况2:应用运行所需要的功能与第一权限所请求的获取的功能数据不同;
情况3:第一权限所请求获取的数据信息包含敏感信息。
示例性地,上述敏感信息可以为用户的通讯录信息,可以为用户的相册信息,也可以为用户的账户信息等。
举例说明,以应用运行所需要功能为“相机”为例,若电子设备接收到通讯录权限请求,电子设备认为该通讯录权限请求与应用运行所需要的“相机”功能不匹配,则将该通讯录权限请求确定为应用过度索权行为。
在本申请实施例提供的权限管理方法中,接收应用的第一权限请求,第一权限请求用于弹窗请求获取第一权限;在确定第一权限请求为应用过度索权行为的情况下,对应用将第一权限的权限状态设置为允许状态,并拦截弹窗请求的应用弹窗;其中,在允许状态下,对应用不返回第一权限的权限数据。如此,电子设备在判断第一权限请求为应用过度索权行为的情况下,将权限状态设置为允许状态,以使得第一应用可以正常使用,同时拦截第一权限请求的应用弹窗,且不将第一权限的权限数据返回至应用,从而使得应用不会获取到用户的真实隐私数据,进而在第一应用正常使用的情况下,避免了用户隐私数据的泄露。
在一种可能的实施例中,电子设备在检测到应用当前运行需要第一权限的接口的情况下,系统会发起系统弹窗请求,以获取第一权限,当用户选择该系统弹窗请求中的允许选项时,电子设备向应用发送该第一权限的权限数据,以使得应用的继续运行。
可选地,在本申请实施例中,结合图1,如图2所示,上述步骤202“电子设备对应用将第一权限设置为允许状态,并拦截弹窗请求的应用弹窗”之后,本申请提供的权限管理方法还包括步骤401和步骤402:
步骤401、电子设备在应用运行需要第一权限的接口的情况下,通过系统弹窗请求获取第一权限。
在本申请一些实施例中,电子设备会持续监测应用运行所需要的接口。
在本申请一些实施例中,上述系统弹窗请求为系统发起的用于请求第一权限的弹窗请求。具体地,可参照上述步骤201中的弹窗请求的描述。
在本申请一些实施例中,当电子设备检测到应用当前运行需要第一权限的接口时,系统会发起系统弹窗请求,请求获取该接口的权限。
步骤402、电子设备在用户对系统弹窗请求置为允许的情况下,继续运行应用。
在本申请一些实施例中,上述“用户对系统弹窗请求置为允许”可以为用户选择系统弹窗请求中的允许选项。
在本申请一些实施例中,在用户选择系统弹窗请求中的允许选项的情况下,即用户对系统弹窗请求置为允许的情况下,电子设备将该系统弹窗请求对应权限的权限数据发送至应用,以使得应用可以继续正常运行。
另一种可能的实施例中,电子设备在检测到应用当前运行需要第一权限的接口的情况下,系统会发起系统弹窗请求,以获取第一权限,当用户选择该系统弹窗请求中的拒绝选项时,电子设备不会向应用发送该第一权限的权限数据,并中断该应用的运行。
可选地,在本申请实施例中,结合图1,如图3所示,上述步骤202“电子设备对应用将第一权限设置为允许状态,并拦截弹窗请求的应用弹窗”之后,本申请提供的权限管理方法还包括步骤401和步骤403:
步骤401、电子设备在应用运行需要第一权限的接口的情况下,通过系统弹窗请求获取第一权限。
在本申请一些实施例中,电子设备会持续监测应用运行所需要的接口。
在本申请一些实施例中,上述系统弹窗请求为系统发起的用于请求第一权限的弹窗请求。具体地,可参照上述步骤201中的弹窗请求的描述。
在本申请一些实施例中,当电子设备检测到应用当前运行需要第一权限的接口时,系统会发起系统弹窗请求,请求获取该接口的权限。
步骤403、电子设备在用户对系统弹窗请求置为拒绝的情况下,中断运行应用。
在本申请一些实施例中,上述“用户对系统弹窗请求置为拒绝”可以为用户选择系统弹窗请求中的禁止或禁止不再询问选项。
如此,如果判断为应用存在过度索权行为,为了保证应用可以正常使用、且保护用户的个人隐私数据,电子设备会返回虚拟权限数据;如果应用有使用相关接口,电子设备会在权限状态为允许状态的情况下,返回真实数据。
在本申请一些实施例中,在用户选择系统弹窗请求中的禁止或禁止不再询问选项的情况下,即用户对系统弹窗请求置为允许的情况下,电子设备拒绝将该系统弹窗请求对应权限的权限数据发送至应用,并中断该应用的运行。
如此,应用申请权限和后续使用相关接口的时候,电子设备会对应用的权限状态做一个行为的判断,如果判断为应用存在过度索权行为,则权限状态置为允许,保证应用可以正常使用,但是无法获取相应的数据,即返回虚拟权限数据,并且如果应用有使用相关接口,但是之前被判断为过度索权后,由系统弹窗告知用户,让用户判断是否授权,进一步保护了用户的个人隐私。
可选地,在本申请实施例中,结合图2,如图4所示,在应用请求获取第一权限的权限数据的情况下,上述步骤401“通过系统弹窗请求获取第一权限”具体包括步骤401a或者步骤401b:
步骤401a、电子设备在确定应用存在应用过度索权行为的情况下,通过系统弹窗请求获取第一权限,并且返回虚拟权限数据。
在本申请一些实施例中,上述虚拟权限数据可以为空数据,也可以为乱码数据。
步骤401b、电子设备在确定应用不存在应用过度索权行为、且权限状态为允许状态情况下,返回第一权限的权限数据。
在本申请一些实施例中,上述第一权限的权限数据为与第一权限相关的接口或功能获取的数据,或者第一权限相关的接口或功能数据。
如此,通过根据应用是否存在应用过度索权行为的具体情况,返回虚拟权限信息或者真实数据信息,来达到保护用户隐私的目的。
可选地,在本申请实施例中,本申请提供的权限管理方法还包括步骤501:
步骤501、电子设备在系统权限数据结构中新增权限状态标签和应用权限状态标签。
在本申请一些实施例中,如图5所示,上述系统权限数据结构包括:权限信息(PermissionInfo)、权限(Permission)、权限状态(PermissionState)以及应用权限状态(UidPermissionState)。
在本申请一些实施例中,上述PermissionState用于保存单个权限的权限状态。
在本申请一些实施例中,上述权限状态包括:允许状态或者禁止状态。
在本申请一些实施例中,上述PermissionState中含有一个Permission的实例对象,并且该对象具有拥有是否授权(mGranted)标签和上述新增的权限状态标签(mFlags)。
在本申请一些实施例中,在上述权限状态中的权限状态标签中添加一个boolean属性,即mNecessaryRequestPermissions,该属性表示权限是否为应用必要权限。
在本申请一些实施例中,电子设备可以通过判断上述mNecessaryRequestPermissions的值,来判断应用是否存在过度索权行为。
在本申请一些实施例中,上述UidPermissionState用于描述权限在应用中权限状态。
在本申请一些实施例中,上述UidPermissionState中保存了这个应用所有请求的权限的权限状态,并且提供了授予权限、撤销权限、更新权限标志等一系列操作权限状态的方法。
在本申请一些实施例中,上述应用权限状态标签包括获取权限状态方法和设置权限状态方法。
在本申请一些实施例中,上述获取权限状态方法(getNecessaryRequestPermission)用于判断应用请求的这个权限是否是所必需的权限。
在本申请一些实施例中,电子设备根据getNecessaryRequestPermission返回的值就可以知道该应用是否存在过度索权行为。
在本申请一些实施例中,上述设置权限状态方法(setNecessaryRequestPermission)用于在确定应用有过度索权行为时来将这个权限设置为不是必需的权限。
可选地,在本申请一些实施例中,当电子设备接收到getNecessaryRequestPermission返回值为true时,会判定应用存在过度索权行为,并在Permission中进行记录该权限对应的应用包名、应用进程标识符、权限名称,以及是否为必需权限。此时,电子设备会通过setNecessaryRequestPermission将权限的权限状态设置为允许状态,以保证应用可以正常使用。当电子设备接收到getNecessaryRequestPermission返回值为false时,则表明当前用户有访问相关功能的行为。此时,电子设备会将向用户申请是否更改权限状态,即系统发起系统弹窗请求,来向用户询问是否获取该权限。
在本申请一些实施例中,上述PermissionInfo用于保存权限信息。
在本申请一些实施例中,上述权限信息包括以下至少一项:权限的保护等级、权限的分类、权限的标签,权限的使用描述、权限的权限名称以及权限所属的应用名称等。
在本申请一些实施例中,电子设备可以根据这些权限信息的不同,来定义不同的权限。
在本申请一些实施例中,上述Permission用于保存具体的权限对象。
在本申请一些实施例中,在Permission中,可以将每个权限定义为一个对象,这个对象就是Permission。Permission中含有一个PermissionInfo的实例对象,也就是每个权限自己的权限信息、应用进程标识符(User Identification,uid)、以及组标识符(GroupIdentification,gid)。其中,gid用于通过指定权限和组ID之间的映射关系,可以授予应用进程对应文件系统访问权限属性,并且提供一系列判断权限属性的方法。
如此,电子设备通过在系统权限数据结构中新增权限状态标签和应用权限状态标签,来判断应用请求的权限是否为应用必需的权限,即应用是否存在过度索权行为,从系统层面上增加了权限判断的流程,进一步提高判断应用存在过度索权行为的准确性,提升了方案的可行性。
可选地,在本申请实施例中,在系统常驻权限管控进程的情况下,本申请提供的权限管理方法还包括步骤601或者步骤602:
步骤601、电子设备在确定第一权限请求为应用过度索权行为的情况下,通过权限管控进程调用设置权限状态方法,将权限状态标签设置为真。
步骤602、电子设备在确定第一权限请求非应用过度索权行为的情况下,通过权限管控进程调用设置权限状态方法,将权限状态标签设置为伪。
在本申请一些实施例中,如图6所示,电子设备在确定第一权限请求为应用过度索权行为的情况下,检测电子设备是否接收到用户对显示屏幕的点击输入,若接收到输入,则判断该点击输入的对象是否与第一权限相关,若相关,则通过权限管控进程调用设置权限状态方法,即上述UidPermissionState中的setNecessaryRequestPermission,将权限状态标签设置为真。
若接收到用户对显示屏幕的点击输入,则将权限状态设置为允许,并通过权限管控进程调用UidPermissionState中的setNecessaryRequestPermission,将权限状态标签设置为伪。或者,若接收到输入,则判断该点击输入的对象是否与第一权限相关,若不相关,则将权限状态设置为允许,并通过权限管控进程调用设置权限状态方法,将权限状态标签设置为伪。
可选地,在本申请实施例中,在系统常驻权限管控进程的情况下,本申请提供的权限管理方法还包括步骤701:
步骤701、电子设备在应用运行需要第一权限的接口、且权限状态为允许状态的情况下,通过权限管控进程调用获取权限状态方法,确定是否存在应用过度索权行为。
在本申请一些实施例中,电子设备在应用运行需要第一权限的接口、且权限状态为允许状态的情况下,通过权限管控进程调用获取权限状态方法。若获取权限状态方法返回的值为真,则表示该第一权限为必需权限,即应用不存在应用过度索权行为。若获取权限状态方法返回的值为伪,则表示该第一权限为应用过度索权行为的权限,即应用存在应用过度索权行为。
以下以一种可能的实施例详细说明权限管控进程确定应用是否存在应用过度索权行为的过程,以及确定存在过度索权行为后的处理过程,如图7所示。
在系统常驻权限管控进程的情况下,权限管控进程检测到应用运行调用需要授权权限A才能使用的接口,权限管控进程首先判断权限A的权限状态,若权限状态为禁止状态,则权限管控进程不作处理,说明应用没有主动申请该权限,进程抛出异常,等待应用向电子设备发起权限A的权限请求。若权限状态为允许状态,则权限管控进程调用获取权限是否是过度索权的方法,即上述UidPermissionState中的getNecessaryRequestPermission(获取权限状态方法),来判断是否存在应用过度索权行为。
接着,权限管控进程根据getNecessaryRequestPermission返回的值进行处理。若getNecessaryRequestPermission返回的值为真,则表示该权限A为必需权限,则权限管控进程不做处理,电子设备授权权限A,以使得应用可以调用权限A的接口。若getNecessaryRequestPermission返回的值为伪,则表示该权限A为应用过度索权行为的权限,权限管控进程弹出弹窗,向用户询问是否授权该权限。
最终,权限管控进程根据用户选择的选项进行相应的处理。若用户选择了允许选项,则将权限A的权限状态设置为允许,并调用UidPermissionState中的setNecessaryRequestPermission,将应用申请的权限A的值设置为真,用来告知电子设备该权限A为应用必需权限。若用户选择了禁止选项,则将权限A的权限状态设置为禁止,并调用UidPermissionState中的setNecessaryRequestPermission,将应用申请的权限A的值设置为伪,用来告知电子设备该权限A为应用过度索权行为的权限。
举例说明,当应用要进行到后续业务需要进行定位时,例如,在搜寻“附件的好友”时,应用需要使用定位相关的接口。然而,由于之前将应用请求定位权限的行为判定为应用过度索权行为,因此,在应用想要获取定位接口的相关数据的情况下,电子设备会先向应用发送的数据为虚拟权限数据。接着,当电子设备向应用发送虚拟权限数据之后,电子设备中权限管控进程的会根据应用当前运行的功能或者接口的使用情况,应用是否存在过度索权行为;若存在,则仍拒绝应用获取该权限对应的权限数据,若不存在,则表示该权限为正常权限,电子设备弹出权限请求界面,让用户选择权限状态选项,允许就继续后续的业务逻辑,禁止就中断后续的操作。如此,保证了应用存在过度索权行为的情况下,也可以在需要使用该权限的时候正常使用。
需要说明的是,本申请实施例提供的权限管理方法,执行主体可以为权限管理装置,或者电子设备,还可以为电子设备中的功能模块或实体。本申请实施例中以权限管理装置执行权限管理方法为例,说明本申请实施例提供的权限管理装置。
图8示出了本申请实施例中涉及的权限管理装置的一种可能的结构示意图。如图8所示,该权限管理装置700可以包括:接收模块701和处理模块702。
其中,上述接收模块701,用于接收应用的第一权限请求,第一权限请求用于弹窗请求获取第一权限;上述处理模块702,用于在确定接收模块701接收的第一权限请求为应用过度索权行为的情况下,对应用将第一权限的权限状态设置为允许状态;上述处理模块702,还用于拦截弹窗请求的应用弹窗;其中,在允许状态下,对应用不返回第一权限的权限数据。
可选地,在本申请实施例中,上述处理模块,还用于在应用运行不需要第一权限的权限数据的情况下,确定第一权限请求为应用过度索权行为。
可选地,在本申请实施例中,结合图8,如图9所示,上述装置700还包括:获取模块703;该获取模块703,用于上述处理模块702对应用将第一权限设置为允许状态,并拦截弹窗请求的应用弹窗之后,在应用运行需要第一权限的接口的情况下,通过系统弹窗请求获取第一权限;上述处理模块702,还用于在用户对上述获取模块703获取的系统弹窗请求置为允许的情况下,继续运行应用;上述处理模块702,还用于在用户对上述获取模块703获取的系统弹窗请求置为拒绝的情况下,中断运行应用。
可选地,在本申请实施例中,应用请求获取第一权限的权限数据;上述获取模块703,具体用于在确定应用存在应用过度索权行为的情况下,通过系统弹窗请求获取第一权限,并且返回虚拟权限数据;上述获取模块703,具体用于在确定应用不存在应用过度索权行为、且权限状态为允许状态情况下,返回第一权限的权限数据。
可选地,在本申请实施例中,结合图8,如图10所示,上述装置700还包括:添加模块704;上述添加模块704,用于在系统权限数据结构中新增权限状态标签和应用权限状态标签;应用权限状态标签包括获取权限状态方法和设置权限状态方法。
可选地,在本申请实施例中,系统常驻权限管控进程;上述处理模块702还用于:在确定第一权限请求为应用过度索权行为的情况下,通过权限管控进程调用设置权限状态方法,将权限状态标签设置为真;在确定第一权限请求非应用过度索权行为的情况下,通过权限管控进程调用设置权限状态方法,将权限状态标签设置为伪。
可选地,在本申请实施例中,系统常驻权限管控进程;上述处理模块702还用于:在应用运行需要第一权限的接口、且权限状态为允许状态的情况下,通过权限管控进程调用获取权限状态方法,确定是否存在应用过度索权行为。
在本申请实施例提供的权限管理装置中,接收应用的第一权限请求,第一权限请求用于弹窗请求获取第一权限;在确定第一权限请求为应用过度索权行为的情况下,对应用将第一权限的权限状态设置为允许状态,并拦截弹窗请求的应用弹窗;其中,在允许状态下,对应用不返回第一权限的权限数据。如此,电子设备在判断第一权限请求为应用过度索权行为的情况下,将权限状态设置为允许状态,以使得第一应用可以正常使用,同时拦截第一权限请求的应用弹窗,且不将第一权限的权限数据返回至应用,从而使得应用不会获取到用户的真实隐私数据,进而在第一应用正常使用的情况下,避免了用户隐私数据的泄露。
本申请实施例中的权限管理装置可以是电子设备,也可以是电子设备中的部件,例如集成电路或芯片。该电子设备可以是终端,也可以为除终端之外的其他设备。示例性的,电子设备可以为手机、平板电脑、笔记本电脑、掌上电脑、车载电子设备、移动上网装置(Mobile Internet Device,MID)、增强现实(augmented reality,AR)/虚拟现实(virtualreality,VR)设备、机器人、可穿戴设备、超级移动个人计算机(ultra-mobile personalcomputer,UMPC)、上网本或者个人数字助理(personal digital assistant,PDA)等,还可以为服务器、网络附属存储器(Network Attached Storage,NAS)、个人计算机(personalcomputer,PC)、电视机(television,TV)、柜员机或者自助机等,本申请实施例不作具体限定。
本申请实施例中的权限管理装置可以为具有操作系统的装置。该操作系统可以为安卓(Android)操作系统,可以为ios操作系统,还可以为其他可能的操作系统,本申请实施例不作具体限定。
本申请实施例提供的权限管理装置能够实现图1至图4的方法实施例实现的各个过程,为避免重复,这里不再赘述。
可选地,如图11所示,本申请实施例还提供一种电子设备800,包括处理器801和存储器802,存储器802上存储有可在所述处理器801上运行的程序或指令,该程序或指令被处理器801执行时实现上述权限管理方法实施例的各个步骤,且能达到相同的技术效果,为避免重复,这里不再赘述。
需要说明的是,本申请实施例中的电子设备包括上述所述的移动电子设备和非移动电子设备。
图12为实现本申请实施例的一种电子设备的硬件结构示意图。
该电子设备100包括但不限于:射频单元101、网络模块102、音频输出单元103、输入单元104、传感器105、显示单元106、用户输入单元107、接口单元108、存储器109、以及处理器110等部件。
本领域技术人员可以理解,电子设备100还可以包括给各个部件供电的电源(比如电池),电源可以通过电源管理系统与处理器110逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。图12中示出的电子设备结构并不构成对电子设备的限定,电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置,在此不再赘述。
其中,上述处理器110,用于接收应用的第一权限请求,第一权限请求用于弹窗请求获取第一权限;上述处理器110,还用于在确定第一权限请求为应用过度索权行为的情况下,对应用将第一权限的权限状态设置为允许状态;上述处理器110,还用于拦截弹窗请求的应用弹窗;其中,在允许状态下,对应用不返回第一权限的权限数据。
可选地,在本申请实施例中,上述处理模块,还用于在应用运行不需要第一权限的权限数据的情况下,确定第一权限请求为应用过度索权行为。
可选地,在本申请实施例中,上述处理器110,还用于对应用将第一权限设置为允许状态,并拦截弹窗请求的应用弹窗之后,在应用运行需要第一权限的接口的情况下,通过系统弹窗请求获取第一权限;上述处理器110,还用于在用户对系统弹窗请求置为允许的情况下,继续运行应用;上述处理器110,还用于在用户对系统弹窗请求置为拒绝的情况下,中断运行应用。
可选地,在本申请实施例中,应用请求获取第一权限的权限数据;上述处理器110,具体用于在确定应用存在应用过度索权行为的情况下,通过系统弹窗请求获取第一权限,并且返回虚拟权限数据;上述处理器110,具体用于在确定应用不存在应用过度索权行为、且权限状态为允许状态情况下,返回第一权限的权限数据。
可选地,在本申请实施例中,上述处理器110,还用于在系统权限数据结构中新增权限状态标签和应用权限状态标签;应用权限状态标签包括获取权限状态方法和设置权限状态方法。
可选地,在本申请实施例中,系统常驻权限管控进程;上述处理器110还用于:在确定第一权限请求为应用过度索权行为的情况下,通过权限管控进程调用设置权限状态方法,将权限状态标签设置为真;在确定第一权限请求非应用过度索权行为的情况下,通过权限管控进程调用设置权限状态方法,将权限状态标签设置为伪。
可选地,在本申请实施例中,系统常驻权限管控进程;上述处理器110还用于:在应用运行需要第一权限的接口、且权限状态为允许状态的情况下,通过权限管控进程调用获取权限状态方法,确定是否存在应用过度索权行为。
在本申请实施例提供的电子设备中,接收应用的第一权限请求,第一权限请求用于弹窗请求获取第一权限;在确定第一权限请求为应用过度索权行为的情况下,对应用将第一权限的权限状态设置为允许状态,并拦截弹窗请求的应用弹窗;其中,在允许状态下,对应用不返回第一权限的权限数据。如此,电子设备在判断第一权限请求为应用过度索权行为的情况下,将权限状态设置为允许状态,以使得第一应用可以正常使用,同时拦截第一权限请求的应用弹窗,且不将第一权限的权限数据返回至应用,从而使得应用不会获取到用户的真实隐私数据,进而在第一应用正常使用的情况下,避免了用户隐私数据的泄露。
应理解的是,本申请实施例中,输入单元104可以包括图形处理器(GraphicsProcessing Unit,GPU)1041和麦克风1042,图形处理器1041对在视频捕获模式或图像捕获模式中由图像捕获装置(如摄像头)获得的静态图片或视频的图像数据进行处理。显示单元106可包括显示面板1061,可以采用液晶显示器、有机发光二极管等形式来配置显示面板1061。用户输入单元107包括触控面板1071以及其他输入设备1072中的至少一种。触控面板1071,也称为触摸屏。触控面板1071可包括触摸检测装置和触摸控制器两个部分。其他输入设备1072可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆,在此不再赘述。
存储器109可用于存储软件程序以及各种数据。存储器109可主要包括存储程序或指令的第一存储区和存储数据的第二存储区,其中,第一存储区可存储操作系统、至少一个功能所需的应用程序或指令(比如声音播放功能、图像播放功能等)等。此外,存储器109可以包括易失性存储器或非易失性存储器,或者,存储器109可以包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double Data Rate SDRAM,DDRSDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(Synch link DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DRRAM)。本申请实施例中的存储器109包括但不限于这些和任意其它适合类型的存储器。
处理器110可包括一个或多个处理单元;可选的,处理器110集成应用处理器和调制解调处理器,其中,应用处理器主要处理涉及操作系统、用户界面和应用程序等的操作,调制解调处理器主要处理无线通信信号,如基带处理器。可以理解的是,上述调制解调处理器也可以不集成到处理器110中。
本申请实施例还提供一种可读存储介质,所述可读存储介质上存储有程序或指令,该程序或指令被处理器执行时实现上述权限管理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
其中,所述处理器为上述实施例中所述的电子设备中的处理器。所述可读存储介质,包括计算机可读存储介质,如计算机只读存储器ROM、随机存取存储器RAM、磁碟或者光盘等。
本申请实施例另提供了一种芯片,所述芯片包括处理器和通信接口,所述通信接口和所述处理器耦合,所述处理器用于运行程序或指令,实现上述权限管理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
应理解,本申请实施例提到的芯片还可以称为系统级芯片、系统芯片、芯片系统或片上系统芯片等。
本申请实施例提供一种计算机程序产品,该程序产品被存储在存储介质中,该程序产品被至少一个处理器执行以实现如上述权限管理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。此外,需要指出的是,本申请实施方式中的方法和装置的范围不限按示出或讨论的顺序来执行功能,还可包括根据所涉及的功能按基本同时的方式或按相反的顺序来执行功能,例如,可以按不同于所描述的次序来执行所描述的方法,并且还可以添加、省去、或组合各种步骤。另外,参照某些示例所描述的特征可在其他示例中被组合。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以计算机软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
上面结合附图对本申请的实施例进行了描述,但是本申请并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本申请的启示下,在不脱离本申请宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本申请的保护之内。

Claims (11)

1.一种权限管理方法,其特征在于,所述方法包括:
接收应用的第一权限请求,所述第一权限请求用于弹窗请求获取第一权限;
在确定所述第一权限请求为应用过度索权行为的情况下,对所述应用将所述第一权限的权限状态设置为允许状态,并拦截所述弹窗请求的应用弹窗;
其中,在所述允许状态下,对所述应用不返回所述第一权限的权限数据。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述应用运行不需要所述第一权限的权限数据的情况下,确定所述第一权限请求为应用过度索权行为。
3.根据权利要求1所述的方法,其特征在于,所述对所述应用将所述第一权限设置为允许状态,并拦截所述弹窗请求的应用弹窗之后,所述方法还包括:
在所述应用运行需要所述第一权限的接口的情况下,通过系统弹窗请求获取所述第一权限;
在用户对所述系统弹窗请求置为允许的情况下,继续运行所述应用;
在用户对所述系统弹窗请求置为拒绝的情况下,中断运行所述应用。
4.根据权利要求3所述的方法,其特征在于,所述应用请求获取所述第一权限的权限数据;
所述通过系统弹窗请求获取所述第一权限包括:
在确定所述应用存在应用过度索权行为的情况下,通过系统弹窗请求获取所述第一权限,并且返回虚拟权限数据;
在确定所述应用不存在应用过度索权行为、且所述权限状态为允许状态情况下,返回所述第一权限的权限数据。
5.根据权利要求1-4中任一项所述的方法,其特征在于,所述方法还包括:
在系统权限数据结构中新增权限状态标签和应用权限状态标签;
所述应用权限状态标签包括获取权限状态方法和设置权限状态方法。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
系统常驻权限管控进程;
在确定所述第一权限请求为应用过度索权行为的情况下,通过所述权限管控进程调用所述设置权限状态方法,将所述权限状态标签设置为真;
在确定所述第一权限请求非应用过度索权行为的情况下,通过所述权限管控进程调用所述设置权限状态方法,将所述权限状态标签设置为伪。
7.根据权利要求5所述的方法,其特征在于,所述方法还包括:
系统常驻权限管控进程;
在所述应用运行需要所述第一权限的接口、且所述权限状态为允许状态的情况下,通过所述权限管控进程调用所述获取权限状态方法,确定是否存在应用过度索权行为。
8.一种权限管理装置,其特征在于,所述权限管理装置包括:接收模块和处理模块;
所述接收模块,用于接收应用的第一权限请求,所述第一权限请求用于弹窗请求获取第一权限;
所述处理模块,用于在确定所述接收模块接收的所述第一权限请求为应用过度索权行为的情况下,对所述应用将所述第一权限的权限状态设置为允许状态;所述处理模块,还用于拦截所述弹窗请求的应用弹窗;
其中,在所述允许状态下,对所述应用不返回所述第一权限的权限数据。
9.根据权利要求8所述的装置,其特征在于,所述装置还包括:获取模块;
所述获取模块,用于所述处理模块对所述应用将所述第一权限设置为允许状态,并拦截所述弹窗请求的应用弹窗之后,在所述应用运行需要所述第一权限的接口的情况下,通过系统弹窗请求获取所述第一权限;
所述处理模块,还用于在用户对所述系统弹窗请求置为允许的情况下,继续运行所述应用;
所述处理模块,还用于在用户对所述系统弹窗请求置为拒绝的情况下,中断运行所述应用。
10.一种电子设备,其特征在于,包括处理器,存储器及存储在所述存储器上并可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如权利要求1至7中任一项所述的权限管理方法的步骤。
11.一种可读存储介质,其特征在于,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现如权利要求1至7中任一项所述的权限管理方法的步骤。
CN202311406385.7A 2023-10-26 2023-10-26 权限管理方法、装置、电子设备及可读存储介质 Pending CN117454364A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311406385.7A CN117454364A (zh) 2023-10-26 2023-10-26 权限管理方法、装置、电子设备及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311406385.7A CN117454364A (zh) 2023-10-26 2023-10-26 权限管理方法、装置、电子设备及可读存储介质

Publications (1)

Publication Number Publication Date
CN117454364A true CN117454364A (zh) 2024-01-26

Family

ID=89595991

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311406385.7A Pending CN117454364A (zh) 2023-10-26 2023-10-26 权限管理方法、装置、电子设备及可读存储介质

Country Status (1)

Country Link
CN (1) CN117454364A (zh)

Similar Documents

Publication Publication Date Title
CN111382421B (zh) 一种业务访问控制方法、系统及电子设备和存储介质
US8631482B2 (en) Method for managing computer resources accessed by a program operating in a restricted environment
US8763111B2 (en) Enabling a service to return lost laptops
RU2635224C2 (ru) Способ и аппарат для безопасного сенсорного ввода
US10635456B2 (en) Method for entering operating system desktop and mobile intelligent terminal
EP3748500B1 (en) Inversion-of-control component service models for virtual environments
KR101837678B1 (ko) 신뢰실행환경 기반의 컴퓨팅 장치
CN106130970B (zh) 应用访问控制方法及装置
JP6858256B2 (ja) 決済アプリケーション分離方法および装置、ならびに端末
CN108932435A (zh) 一种信息安全管理方法、终端设备及计算机可读存储介质
CN111857464A (zh) 信息显示方法、装置、电子设备及可读存储介质
CN113569288A (zh) 权限管理方法、装置及电子设备
CN113867585B (zh) 界面显示方法、装置、电子设备和存储介质
CN110619221A (zh) 一种虚拟授权方法、装置、终端设备及存储介质
CN111723163B (zh) 一种信息处理方法、装置及系统
US20190156071A1 (en) Using decoy icons to prevent unwanted user access to applications on a user computing device
CN117454364A (zh) 权限管理方法、装置、电子设备及可读存储介质
CN115758425A (zh) 一种安全访问控制方法、装置和可读存储介质
CN112270014B (zh) 应用程序控制方法、装置及电子设备
CN114741727A (zh) 数据发送方法和装置
CN114489419A (zh) 权限控制方法及电子设备
CN113901496A (zh) 基于多业务系统的业务处理方法、装置和设备
CN111880702A (zh) 界面切换方法、装置及电子设备
CN111832060B (zh) 一种信息保护方法、装置和电子设备
US20190362095A1 (en) User Device Privacy Protection

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