# US 12,216,782 B2 · Secure data access for electronic devices

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

- Number: US 12,216,782 B2
- Document ID: US12216782B2
- Status: Granted
- Kind: B2
- Application number: 17/722,298
- Filed: 2022-04-15
- Published: 2022-12-01
- Granted: 2025-02-04
- Earliest claimed: 2021-06-01
- Assignees: Apple Inc.
- Applicants: Apple Inc.
- Inventors: Conrad B. Kramer; Cristina L. Formaini
- Web page: https://patentgrep.com/patent/US12216782B2

## CPC

- G06F 21/6218: {to a system of files or objects, e.g. local or distributed file system or database}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

The subject disclosure provides systems and methods for providing secure data access for electronic devices. The secure data access can allow processes, such as scripts, at a device to be executed to obtain and process restricted data locally on the device without requesting user authorization for the access and processing. The secure data access can prevent the processes from exporting the data, and/or data derived from the data, from an execution space of the processes, whether locally on the device or externally from the device, without obtaining user authorization for the exportation. In this way, user authorizations can be obtained for securing restricted data, in a way that is efficient for the device, for the processes accessing and processing the data, and for the user.

## Claims

### Claim 1

A method, comprising:
receiving, by a computing device, a request to execute a script by a first application, wherein the script includes:
a first instruction to obtain first data, and
a second instruction to export second data associated with the first data by generating a communication to another computing device using a second application separate from the first application executing the script;
after receiving the request, initiating execution of the script by the first application;
in accordance with a determination that the first data meets a set of one or more criteria, identifying the first data as unauthorized to be exported; and
after executing the first instruction and before completing the second instruction, preventing, based on identifying the first data as unauthorized to be exported, exportation of the second data without user authorization.

### Claim 2 (depends on 1)

The method of claim 1, wherein the script includes a third instruction to perform at least one internal action on the first data prior to executing the second instruction, the method further comprising tracking the first data through the at least one internal action.

### Claim 3 (depends on 1)

The method of claim 1, wherein the exportation of the second data includes storing information associated with the first data in memory of the computing device that is accessible by a process at the computing device that is separate from the script.

### Claim 4 (depends on 1)

The method of claim 1, further comprising:
receiving the user authorization for the exportation of the second data;
executing the second instruction for the exportation of the second data based on the user authorization;
executing a subsequent iteration of the script, including executing a subsequent iteration of the second instruction to export the second data without requesting an additional user authorization;
receiving a change to an internal action of the script;
executing a further subsequent iteration of the script including the changed internal action; and
prior to completing a further subsequent iteration of the second instruction for the further subsequent iteration of the script, preventing exportation of third data, generated using the changed internal action, without user authorization.

### Claim 5 (depends on 1)

The method of claim 1, further comprising, prior to receiving the request to execute the script, receiving the script at the computing device from another computing device.

### Claim 6 (depends on 1)

The method of claim 1, further comprising executing the first instruction to obtain the first data without requesting user authorization.

### Claim 7 (depends on 1)

The method of claim 1, wherein the second instruction to export the second data comprises an instruction to perform an export action for the exportation of the second data, the method further comprising:
in accordance with a determination that third data does not meet the set of one or more criteria, performing the export action on the third data without requesting user authorization.

### Claim 8 (depends on 1)

The method of claim 1, wherein the second data is a modification of the first data.

### Claim 9

A non-transitory machine-readable medium storing instructions that, when executed by one or more processors, cause the one or more processors to perform operations that include:
receiving, by a computing device, a request to execute a script by a first application, wherein the script includes:
a first instruction to obtain first data, and
a second instruction to export second data associated with the first data by generating a communication to another computing device using a second application separate from the first application executing the script;
after receiving the request, initiating execution of the script by the first application;
in accordance with a determination that the first data meets a set of one or more criteria, identifying the first data as unauthorized to be exported; and
after executing the first instruction and before completing the second instruction, preventing, based on identifying the first data as unauthorized to be exported, exportation of the second data without user authorization.

### Claim 10 (depends on 9)

The non-transitory machine-readable medium of claim 9, wherein the script includes a third instruction to perform at least one internal action on the first data prior to executing the second instruction, and wherein the operations further comprise tracking the first data through the at least one internal action.

### Claim 11 (depends on 9)

The non-transitory machine-readable medium of claim 9, wherein the exportation of the second data includes storing information associated with the first data in memory of the computing device that is accessible by a process at the computing device that is separate from the script.

### Claim 12 (depends on 9)

The non-transitory machine-readable medium of claim 9, the operations further comprising:
receiving the user authorization for the exportation of the second data;
executing the second instruction for the exportation of the second data based on the user authorization;
executing a subsequent iteration of the script, including executing a subsequent iteration of the second instruction to export the second data without requesting an additional user authorization;
receiving a change to an internal action of the script;
executing a further subsequent iteration of the script including the changed internal action; and
prior to completing a further subsequent iteration of the second instruction for the further subsequent iteration of the script, preventing exportation of third data, generated using the changed internal action, without user authorization.

### Claim 13 (depends on 9)

The non-transitory machine-readable medium of claim 9, the operations further comprising, prior to receiving the request to execute the script, receiving the script at the computing device from another computing device.

### Claim 14

An electronic device, comprising:
memory; and
one or more processors, wherein the one or more processors are configured to:
receive a request to execute a script by a first application, wherein the script includes:
a first instruction to obtain first data, and a second instruction to export second data associated with the first data by generating a communication to another computing device using a second application separate from the first application executing the script;
after receiving the request, initiate execution of the script by the first application;
in accordance with a determination that the first data meets a set of one or more criteria, identify the first data as unauthorized to be exported; and
after executing the first instruction and before completing the second instruction, prevent, based on identifying the first data as unauthorized to be exported, exportation of the second data without user authorization.

### Claim 15 (depends on 14)

The electronic device of claim 14, wherein the one or more processors are further configured to execute the first instruction to obtain the first data without requesting user authorization.

### Claim 16 (depends on 14)

The electronic device of claim 14, wherein the second instruction to export the second data comprises an instruction to perform an export action for the exportation of the second data, and wherein the one or more processors are further configured to:
in accordance with a determination that third data does not meet the set of one or more criteria, perform the export action on the third data without requesting user authorization.

### Claim 17 (depends on 14)

The electronic device of claim 14, wherein the second data is a modification of the first data.

### Claim 18 (depends on 14)

The electronic device of claim 14, wherein the second data is the first data.

### Claim 19 (depends on 14)

The electronic device of claim 14, wherein the one or more processors are further configured to:
receive the user authorization for the exportation of the second data;
execute the second instruction for the exportation of the second data based on the user authorization;
execute a subsequent iteration of the script, including executing a subsequent iteration of the second instruction to export the second data without requesting an additional user authorization;
receive a change to an internal action of the script;
execute a further subsequent iteration of the script including the changed internal action; and
prior to completing a further subsequent iteration of the second instruction for the further subsequent iteration of the script, prevent exportation of third data, generated using the changed internal action, without user authorization.

### Claim 20 (depends on 14)

The electronic device of claim 14, wherein the one or more processors are further configured to:
receive the user authorization for the exportation of the second data.
