IP Library Granted Patent US 9,600,662
Granted Patent B2
US 9,600,662 · App. 14/297,867 · Granted Mar 21, 2017

User configurable profiles for security permissions

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,600,662
App. No.
14/297,867
Granted
Mar 21, 2017
Kind
B2
Abstract

Permissions specified within an application permission manifest file of an application may be superseded with customized permissions. A user may customize the permissions by denying permissions, granting permissions, or requesting a prompt prior to an application attempting to access functionality and/or data protected by a permission. A user may customize permissions on a global or per application basis. Upon receiving input to customize a permissions profile, a package manager module creates a new permissions manifest file associated with an application. Upon receiving input to execute an application, a runtime environment that may be provided by the runtime accesses the new permissions manifest file instead of an original permissions manifest file, and operates the application using permissions granted in the new permissions manifest file.

Claims (72)

1. A computer-implemented method, comprising:

presenting, via a display of an electronic device, a user interface that displays a list of permissions associated with an original permissions manifest file associated with an application;

receiving, based at least in part on an interaction with the user interface and at the electronic device, first input to customize the list of permissions;

creating, based at least in part on the first input, a new permissions manifest file on the electronic device defining a permissions profile associated with at least the application, wherein the new permissions manifest file enables fewer individual permissions of the list of permissions than the original permissions manifest file;

receiving second input to execute the application at the electronic device;

accessing the new permissions manifest file instead of the original permissions manifest file stored on the electronic device; and

executing the application, on the electronic device, using the permissions profile associated with at least the application as defined in the new permission manifest file instead of the original permissions manifest file.

2. The computer-implemented method of claim 1 , wherein the user interface is presented for an installation of the application and includes a plurality of options for defining the permissions profile as a customized permissions profile for the application, the plurality of options for an individual permission of the list of permissions including:

granting the individual permission;

denying the individual permission; and

requesting a prompt before the application attempts to access a functionality of the electronic device or data stored on the electronic device that is protected by the individual permission.

3. The computer-implemented method of claim 2 , further comprising presenting the prompt at a time the application attempts to access a functionality of the electronic device or data stored on the electronic device that is protected by the individual permission, wherein the prompt includes a set of options, the set of options including:

always granting the individual permission of the list of permissions;

granting the individual permission of the list of permission for the time requested;

always denying the individual permission of the list of permissions; and

denying the individual permissions of the list of permissions for the time requested.

4. The computer-implemented method of claim 1 , wherein the user interface is presented at a time subsequent to an installation of the application and includes a plurality of options for defining the permissions profile as a global permissions profile associated with at least the application and one or more additional applications, the options including:

granting a particular permission of the list of permissions;

denying the particular permission of the list of permissions;

requesting a prompt before the application or the one or more additional applications attempt to access functionality or data protected by the particular permission of the list of permissions; and

referring to a customized permissions manifest file before the application or the one or more additional applications attempt to access functionality or data protected by the particular permission.

5. The computer-implemented method of claim 4 , wherein first permissions defined in the global permissions profile supersede second permissions defined in a customized permissions profile.

6. The computer-implemented method of claim 1 , wherein the list of permissions comprises a same list of permissions identified in the original permissions manifest file.

7. A non-transitory computer storage media storing computer-executable instructions that, when executed, cause one or more processors to perform acts comprising:

presenting a user interface that displays a list of permissions associated with an original permissions manifest file associated with an application;

creating, based at least in part on an interaction with the user interface, an alternative permissions manifest file, the alternative permissions manifest file defining a permissions profile associated with at least the application that enables fewer individual permissions of the list of permissions than the original permissions manifest file;

receiving an input to execute the application;

determining that at least one alternative permissions manifest file is available; and

operating the application according to a permission defined in the at least one alternative permissions manifest file instead of the original permissions manifest file based at least in part on determining that the at least one alternative permissions manifest file is available.

8. The non-transitory computer storage media of claim 7 , wherein the at least one alternative permissions manifest file includes at least one of a customized permissions manifest file that includes first permissions used by the application or a global permissions manifest file that includes second permissions jointly used by the application and one or more additional applications.

9. The non-transitory computer storage media of claim 8 , the acts further comprising:

determining that the at least one alternative manifest file includes the customized permissions manifest file and excludes the global permissions manifest file; and

operating the application according to the first permissions.

10. The non-transitory computer storage media of claim 8 , wherein the first permissions are defined at an installation of the application using options comprising:

granting a first set of permissions of a list of permissions requested by the application;

denying a second set of permissions of the list of permissions requested by the application; and

requesting a prompt before the application attempts to access functionality or data protected by a third set of permissions of the list of permissions requested by the application.

11. The non-transitory computer storage media of claim 8 , the acts further comprising:

determining that the at least one alternative permissions manifest file includes the global permissions manifest file and the customized permissions manifest file; and

operating the application based at least in part on accessing the global permissions manifest file prior to accessing the customized permissions manifest file.

12. The non-transitory computer storage media of claim 11 , the acts further comprising:

determining whether the global permissions manifest file refers to the customized permissions manifest file;

based at least in part on determining that the global permissions manifest file refers to the customized permissions manifest file, executing the application according to the first permissions; and

based at least in part on determining that the global permissions manifest file does not refer to the customized permissions manifest file, executing the application according to the second permissions.

13. The non-transitory computer storage media of claim 8 , the acts further comprising:

determining that the at least one alternative permissions manifest file includes the global permissions manifest file and excludes the customized permissions manifest file; and

operating the application according to the second permissions.

14. The non-transitory computer storage media of claim 8 , wherein the second permissions are defined following an installation of the application using options comprising:

granting a first set of permissions of a list of permissions;

denying a second set of permissions of the list of permissions;

requesting a prompt before the application or the one or more additional applications attempt to access functionality or data protected by a third set of permissions of the list of permissions; and

referring to the customized permissions manifest file before the application or the one or more additional applications attempt to access functionality or data protected by a fourth set of permissions of the list of permissions.

15. A device comprising:

one or more processors; and

a memory that includes a plurality of computer-executable components the plurality of computer-executable components comprising:

one or more applications;

an application framework for presenting a list of permissions associated with the one or more applications, wherein the application framework includes a package manager module for presenting the list of permissions via a user interface and receiving first input based on an interaction with the user interface, the first input enabling customization of the list of permissions by reducing a number of permissions granted by the list of permissions for the one or more applications; and

at least one permissions manifest file that applies one or more permissions of the list of permissions when executing the one or more applications.

16. The device of claim 15 , wherein the at least one permissions manifest file comprises at least one of:

an original permissions manifest file defining a permissions profile for execution with a particular application of the one or more applications;

a customized permissions manifest file defining a customized permissions profile for execution with the particular application of the one or more applications, the customized permissions profile being customized based at least in part on the first input; or

a global permissions manifest file defining a global permissions profile associated with the one or more applications, the global permissions profile being customized based at least in part on the first input.

17. The device of claim 16 , wherein the package manager module presents the user interface upon installation of the one or more applications for defining the customized permissions profile.

18. The device of claim 16 , wherein the package manager module presents the user interface at a time after installation of the one or more applications for defining the global permissions.

19. The device of claim 16 , wherein the application framework is further for:

receiving second input to execute a particular application of the one or more applications; and

applying at least one of the permissions profile, customized permissions profile, or global permissions profile based on the at least one permissions manifest file when executing the particular application.

20. The device of claim 19 , wherein the applying the at least one of the permissions profile, customized permissions profile, or global permissions profile comprises:

based at least in part on determining that the at least one permissions manifest file excludes the customized permissions manifest file and the global permissions manifest file, applying the permissions profile;

based at least in part on determining that the at least one permissions manifest file includes the global permissions manifest file but excludes the customized permissions manifest file, applying the global permissions profile;

based at least in part on determining that the at least one permissions manifest file includes the customized permissions manifest file but excludes the global permissions manifest file, applying the customized permissions profile; and

based at least in part on determining that the at least one permissions manifest file includes the customized permissions manifest file and the global permissions manifest file, applying the global permissions profile, unless the global permissions manifest file refers to the customized permissions manifest file, then applying the customized permissions profile.

Assignments (7)
RELEASE OF SECURITY INTEREST Recorded Aug 23, 2022
From: DEUTSCHE BANK TRUST COMPANY AMERICAS
To: IBSV LLC; LAYER3 TV, LLC; PUSHSPRING, LLC; T-MOBILE CENTRAL LLC; T-MOBILE USA, INC.; ASSURANCE WIRELESS USA, L.P.; BOOST WORLDWIDE, LLC; CLEARWIRE COMMUNICATIONS LLC; CLEARWIRE IP HOLDINGS LLC; SPRINTCOM LLC; SPRINT COMMUNICATIONS COMPANY L.P.; SPRINT INTERNATIONAL INCORPORATED; SPRINT SPECTRUM LLC
Reel/Frame 062595/0001 →
SECURITY AGREEMENT Recorded Apr 2, 2020
From: T-MOBILE USA, INC.; ISBV LLC; T-MOBILE CENTRAL LLC; LAYER3 TV, INC.; PUSHSPRING, INC.; BOOST WORLDWIDE, LLC; CLEARWIRE COMMUNICATIONS LLC; CLEARWIRE IP HOLDINGS LLC; CLEARWIRE LEGACY LLC; SPRINT COMMUNICATIONS COMPANY L.P.; SPRINT INTERNATIONAL INCORPORATED; SPRINT SPECTRUM L.P.; ASSURANCE WIRELESS USA, L.P.
To: DEUTSCHE BANK TRUST COMPANY AMERICAS
Reel/Frame 053182/0001 →
RELEASE OF SECURITY INTEREST Recorded Apr 1, 2020
From: DEUTSCHE TELEKOM AG
To: T-MOBILE USA, INC.; IBSV LLC
Reel/Frame 052969/0381 →
RELEASE OF SECURITY INTEREST Recorded Apr 1, 2020
From: DEUTSCHE BANK AG NEW YORK BRANCH
To: T-MOBILE USA, INC.; IBSV LLC; METROPCS COMMUNICATIONS, INC.; METROPCS WIRELESS, INC.; T-MOBILE SUBSIDIARY IV CORPORATION; LAYER3 TV, INC.; PUSHSPRING, INC.
Reel/Frame 052969/0314 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Dec 30, 2016
From: T-MOBILE USA, INC.
To: DEUTSCHE TELEKOM AG
Reel/Frame 041225/0910 →
SECURITY AGREEMENT Recorded Nov 17, 2015
From: T-MOBILE USA, INC.; METROPCS COMMUNICATIONS, INC.; T-MOBILE SUBSIDIARY IV CORPORATION
To: DEUTSCHE BANK AG NEW YORK BRANCH, AS ADMINISTRATIVE AGENT
Reel/Frame 037125/0885 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 6, 2014
From: KRESS, DARREN J.
To: T-MOBILE USA, INC.
Reel/Frame 033046/0686 →