# US 11,113,420 B2 · Policy based clipboard access

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

- Number: US 11,113,420 B2
- Document ID: US11113420B2
- Status: Granted
- Kind: B2
- Application number: 15/936,840
- Filed: 2018-03-27
- Published: 2019-10-03
- Granted: 2021-09-07
- Earliest claimed: 2018-03-27
- Assignees: VMware, Inc.
- Applicants: VMware, Inc.
- Inventors: Xinpi Du; Ali Mohsin
- Web page: https://patentgrep.com/patent/US11113420B2

## CPC

- G06F 21/629: {to features or functions of an application}
- G06F 9/543: {User-generated data transfer, e.g. clipboards, dynamic data exchange [DDE], object linking and embedding [OLE]}
- G06F 16/24: Querying
- G06F 21/6218: {to a system of files or objects, e.g. local or distributed file system or database}
- G06F 21/602: {Providing cryptographic facilities or services}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Disclosed are various examples for providing access to a clipboard based at least in part on one or more policies. Data is received from a client application. A permission associated with the client application is checked, the permission specifying that the client application is authorized to store data in a clipboard provided by an operating system of the computing device. In response, the data received from the client application is stored in the clipboard.

## Claims

### Claim 1

A system for providing policy-based access to a clipboard, comprising:
a computing device comprising a processor and a memory;
an operating system stored in the memory, the operating system providing the clipboard class, an individual instance of which can be used by a client application executing on the computing device to access a clipboard provided by the operating system of the computing device; and
machine readable instructions stored in the memory that extend the clipboard class and, when executed by the processor, cause the computing device to at least:
intercept a request from the client application to access the clipboard, wherein the request comprises data to be stored in the clipboard;
check a permission associated with the client application, wherein the permission is checked by:
transmitting a query over a network to a management service, the query including a device identifier assigned to the computing device by the management service, the management service using the device identifier to manage an operation of the computing device; and
receiving a response from management service, the response indicating that the client application is authorized to store the data in the clipboard;
generate encrypted data based on the data received from the client application using a temporary encryption key, wherein the temporary encryption key is generated at a point in time in which the computing device was powered on; and
store the encrypted data in the clipboard.

### Claim 2 (depends on 1)

The system of claim 1 for providing policy-based access to the clipboard, wherein the client application is a first client application, the permission is a first permission, and the machine readable instructions further cause the computing device to at least:
receive, from a second client application, a request for the data stored in the clipboard that was previously received from the first client application
check a second permission associated with the second client application, the second permission specifying that the second client application is authorized to retrieve the data stored in the clipboard that was previously received from the first client application; and
send to the second client application the data stored in the clipboard that was previously received from the first client application.

### Claim 3 (depends on 1)

The system of claim 1 for providing policy-based access to the clipboard, wherein the query comprises an identifier of the client application and a user identifier.

### Claim 4 (depends on 3)

The system of claim 3 for providing policy-based access to the clipboard, wherein the query further identifies a type for the data to be stored in the clipboard.

### Claim 5 (depends on 1)

The system of claim 1 for providing policy-based access to the clipboard, wherein generating the encrypted data from the data received by the client application using the temporary encryption key further comprises:
querying the management service for a policy; and
determining, based at least in part on the policy, that the data received from the client application prior to storage of the data in the clipboard is to be encrypted.

### Claim 6 (depends on 1)

The system of claim 1 for providing policy-based access to the clipboard, wherein the computing device is a mobile device and the operating system is a version of an ANDROID operating system.

### Claim 7

A computer-implemented method for providing policy-based access to a clipboard, comprising:
intercepting a request from a client application to access the clipboard, the client application being executed on a computing device, the clipboard being provided by an operating system of the computing device, and the request comprising data to be stored in the clipboard;
checking a permission associated with the client application, wherein the permission is checked by:
transmitting a query over a network to a management service, the query including a device identifier assigned to the computing device by the management service, the management service using the device identifier to manage an operation of the computing device; and
receiving a response from management service, the response indicating that the client application is authorized to store the data in the clipboard;
generating encrypted data based on the data received from the client application using a temporary encryption key, wherein the temporary encryption key is generated at a point in time in which the computing device was powered on; and
storing the encrypted data in the clipboard.

### Claim 8 (depends on 7)

The computer-implemented method of claim 7 for providing policy-based access to the clipboard, wherein the client application is a first client application, the permission is a first permission, and the method further comprises:
receiving, from a second client application, a request for the data stored in the clipboard that was previously received from the first client application
checking a second permission associated with the second client application, the second permission specifying that the second client application is authorized to retrieve the data stored in the clipboard that was previously received from the first client application; and
sending to the second client application the data stored in the clipboard that was previously received from the first client application.

### Claim 9 (depends on 7)

The computer-implemented method of claim 7 for providing policy-based access to the clipboard, wherein the query further identifies a type for the data to be stored in the clipboard.

### Claim 10 (depends on 7)

The computer-implemented method of claim 7 for providing policy-based access to the clipboard, wherein generating encrypted data further comprises:
querying the management service for a policy;
determining, based at least in part on the policy, that the data received from the client application prior to storage of the data in the clipboard is to be encrypted.

### Claim 11 (depends on 7)

The computer-implemented method of claim 7 for providing policy-based access to the clipboard, the operating system is a version of an ANDROID operating system.

### Claim 12

A non-transitory computer readable medium embodying executable instructions which, when executed by a processor, cause a computing device to at least:
intercept a request from a client application to access a clipboard, the client application being executed on the computing device, the clipboard being provided by an operating system of the computing device, and the request comprising data to be stored in the clipboard;
check a permission associated with the client application, wherein the permission is checked by:
transmitting a query over a network to a management service, the query including a device identifier assigned to the computing device by the management service, the management service using the device identifier to manage an operation of the computing device; and
receiving a response from management service, the response indicating that the client application is authorized to store the data in the clipboard;
generate encrypted data based on the data received from the first client application using a temporary encryption key, wherein the temporary encryption key is generated prior to receiving the data from the client application; and
store the encrypted data in the clipboard.

### Claim 13 (depends on 12)

The non-transitory computer readable medium of claim 12, wherein the machine readable instructions that cause the computing device to check the permission associated with the second client application further comprise machine readable instructions that cause the computing device to at least:
send a query across a network to a management service, the query comprising an identifier of the second client application and at least one of a user identifier or a device identifier; and
receive a response from the management service, the response indicating
that the second client application is authorized to access the data stored in the clipboard.

### Claim 14 (depends on 13)

The non-transitory computer readable medium of claim 13, wherein the query further identifies a type for the data to be stored in the clipboard.

### Claim 15 (depends on 12)

The non-transitory computer readable medium of claim 12, wherein generating the encrypted data from the data received by the client application using the temporary encryption key further comprises:
querying the management service for a policy; and
determining, based at least in part on the policy, that the data received from the client application prior to storage of the data in the clipboard is to be encrypted.

### Claim 16 (depends on 12)

The non-transitory computer readable medium of claim 12, wherein the computing device is a mobile device and the operating system is a version of the ANDROID operating system.

### Claim 17 (depends on 12)

The system of claim 12 for providing policy-based access to the clipboard, wherein the machine readable instructions stored in the memory that extend the clipboard class and, when executed by the processor, cause the computing device to at least:
display an administrative user interface that includes a plurality of clipboard settings;
receive a selection of a subset of the plurality of clipboard settings, wherein the selection is stored in association with a policy for a device identifier.
