# US 2013/0160147 A1 · Protected application programming interfaces

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2013/0160147 A1
- Document ID: US20130160147A1
- Status: Published application
- Kind: A1
- Application number: 13/328,913
- Filed: 2011-12-16
- Published: 2013-06-20
- Earliest claimed: 2011-12-16
- Assignees: Dell Products L.P.
- Inventors: Vadim Draluk; Francois Goldfain; Jan-Willem Maarse; Helen Bragg; Sean Xiao
- Web page: https://patentgrep.com/patent/US20130160147A1

## CPC

- G06F 21/51: at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Mechanisms are provided to allow particular parties and applications access to protected application programming interfaces (APIs) without the use of security domains. Trusted parties and applications may have access to protected APIs while unfrosted parties and applications may be restricted to a more limited set of APIs. Public keys associated with individual applications that are used to enforce licensing policies can be repurposed for use in a verification process to prevent unauthorized access to APIs. A credential storage manager can be used to maintain permission and certificate information. An application authorization manager may access credential storage and maintain trusted application information.

## Claims

### Claim 1

A method, comprising:
receiving an application package for installation on a device;
determining whether an application associated with the application package uses a protected application programming interface (API);
determining whether an application signature corresponds to a certificate preauthorizing access to the protected API;
designating the application as trusted based on protected API credentials;
determining whether the application signature corresponds to a certificate preauthorizing installation of the application package;
proceeding with installation of the application package on the device.

### Claim 2 (depends on 1)

The method of claim 1, wherein the protected API is associated with a controlled permission.

### Claim 3 (depends on 1)

The method of claim 1, wherein the application signature is a API consumer certificate.

### Claim 4 (depends on 1)

The method of claim 1, wherein the application package is received at an application package installer.

### Claim 5 (depends on 1)

The method of claim 1, wherein the same application signature is used to authorize installation and access to the protected API.

### Claim 6 (depends on 1)

The method of claim 1, wherein an application authorization manager (AAM) accesses a credential storage and maintains trusted application information.

### Claim 7 (depends on 1)

The method of claim 1, wherein a credential storage manager (CSM) manages a credential store and associated controlled permissions.

### Claim 8 (depends on 7)

The method of claim 7, wherein the CSM is configured to manage updates to certificates, controlled permissions and associations between certificates, and controlled permissions.

### Claim 9

A system, comprising:
an application package installer configured to receive an application package for installation on a device;
an application authorization manager (AAM) connected to the application package installer, the AAM configured to determine whether an application associated with the application package uses a protected. application programming interface (API);
a credential storage manager (CSM) connected to the AAM, the CSM configured to determine whether an application signature corresponds to a certificate preauthorizing access to the protected API and whether the application signature corresponds to a certificate preauthorizing installation of the application package, wherein the application is designated as trusted based. on protected API credentials.

### Claim 10 (depends on 9)

The system of claim 9, wherein the protected API is associated with a controlled permission.

### Claim 11 (depends on 9)

The system of claim 9, wherein the application signature is a API consumer certificate.

### Claim 12 (depends on 9)

The system of claim 9, wherein the application package is received at an application package installer.

### Claim 13 (depends on 9)

The system of claim 9, wherein the same application signature is used to authorize installation and access to the protected API.

### Claim 14 (depends on 9)

The system of claim 9, wherein the AAM accesses a credential storage and maintains trusted application information.

### Claim 15 (depends on 9)

The system of claim 9, wherein the CSM manages a credential store and associated controlled permissions.

### Claim 16 (depends on 15)

The system of claim 15, wherein the CSM is configured to manage updates to certificates controlled permissions and associations between certificates, and controlled permissions.

### Claim 17

A computer readable storage medium having computer code embodied therein, the computer readable storage medium comprising:
computer code for receiving an application package for installation on a device;
computer code for determining whether an application associated with the application package uses a protected application programming interface (API);
computer code for determining whether an application signature corresponds to a certificate preauthorizing access to the protected API;
computer code for designating the application as trusted based on protected API credentials;
computer code for determining whether the application signature corresponds to a certificate preauthorizing installation of the application package;
computer code for proceeding with installation of the application package on the device.

### Claim 18 (depends on 17)

The computer readable medium of claim 17, wherein the protected API is associated with a controlled permission.

### Claim 19 (depends on 17)

The computer readable medium of claim 17, wherein the application signature is a API consumer certificate.

### Claim 20 (depends on 17)

The computer readable medium of claim 17, wherein the application package is received at an application package installer.
