Secure Device Notifications From Remote Applications
Abstract
Methods and systems for securely delivering notifications from remote applications to client devices are described herein. A computing device may listen for notifications from a remote application and receive notification data from the remote application. The computing device may select a notification service for delivery of the notification data to the client device. The computing device may determine whether a client agent application is running as a foreground process on the client device. The computing device may send, to a notification service, notification data for delivery to the client device. At least a portion of the notification data may be encrypted prior to sending to the selected notification service.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A method comprising:
receiving, by a server via a remote connection between the server and a client agent application executing on a client device, a device token that uniquely identifies the client device; receiving notification data from a remote application executing on the server, the remote application being accessible by the client device via the client agent application; and sending, to a notification service and based on a determination that the client agent application is wrapped by a secure application wrapper, the notification data for delivery to the client device, wherein the notification data comprises the device token.
2 . The method of claim 1 , further comprising:
selecting, by the server and based on an operating system of the client device, the notification service, from a plurality of notification services, for delivery of the notification data to the client device, wherein a first notification service of the plurality of notification services corresponds to a first operating system, and a second notification service of the plurality of notification services corresponds to a second operating system different from the first operating system.
3 . The method of claim 1 , further comprising:
receiving, by the server from the client device via the remote connection, an encryption key; and encrypting, by the server and using the encryption key, at least a portion of the notification data received from the remote application to generate encrypted notification data, wherein the sending the notification data comprises sending the encrypted notification data.
4 . The method of claim 1 , wherein the notification data received from the remote application comprises a notification display string and application context information.
5 . The method of claim 1 , further comprising:
determining, by the server, whether the client agent application is running as a foreground process or a background process on the client device, wherein the sending the notification data is further based on a determination that the client agent application is running as the background process on the client device.
6 . The method of claim 1 , wherein the secure application wrapper comprises at least one of:
an integrated policy that is executed on the client device, or metadata associating the client agent application to an enterprise resource that is hosted remotely.
7 . A method comprising:
receiving, by a server via a remote connection between the server and a client agent application executing on a client device, a device token that uniquely identifies the client device; receiving notification data from a remote application executing on the server, the remote application being accessible by the client device via the client agent application; receiving, by the server from the client device, an indication that the client agent application will run as a background process; and sending, to a notification service and based on the received indication, the notification data for delivery to the client device, wherein the notification data comprises the device token.
8 . The method of claim 7 , further comprising:
selecting, by the server and based on an operating system of the client device, the notification service, from a plurality of notification services, for delivery of the notification data to the client device, wherein a first notification service of the plurality of notification services corresponds to a first operating system, and a second notification service of the plurality of notification services corresponds to a second operating system different from the first operating system.
9 . The method of claim 7 , further comprising:
receiving, by the server from the client device via the remote connection, an encryption key; and encrypting, by the server and using the encryption key, at least a portion of the notification data received from the remote application to generate encrypted notification data, wherein the sending the notification data comprises sending the encrypted notification data.
10 . The method of claim 7 , wherein the sending the notification data is further based on a determination that the client agent application is wrapped by a secure application wrapper.
11 . A server device comprising:
one or more processors; and memory storing instructions that, when executed by the one or more processors, cause the server device to:
receive, via a remote connection between the server device and a client agent application executing on a client device, a device token that uniquely identifies the client device;
receive notification data from a remote application executing on the server device, the remote application being accessible by the client device via the client agent application; and
send, to a notification service and based on a determination that the client agent application is wrapped by a secure application wrapper, the notification data for delivery to the client device, wherein the notification data comprises the device token.
12 . The server device of claim 11 , wherein the instructions, when executed by the one or more processors, further cause the server device to:
select, based on an operating system of the client device, the notification service, from a plurality of notification services, for delivery of the notification data to the client device, wherein a first notification service of the plurality of notification services corresponds to a first operating system, and a second notification service of the plurality of notification services corresponds to a second operating system different from the first operating system.
13 . The server device of claim 11 , wherein the instructions, when executed by the one or more processors, further cause the server device to:
receive, from the client device via the remote connection, an encryption key; and encrypt, using the encryption key, at least a portion of the notification data received from the remote application to generate encrypted notification data, and wherein the instructions, when executed by the one or more processors, cause the server device to send the notification data by sending the encrypted notification data.
14 . The server device of claim 11 , wherein the notification data received from the remote application comprises a notification display string and application context information.
15 . The server device of claim 11 , wherein the instructions, when executed by the one or more processors, further cause the server device to determine whether the client agent application is running as a foreground process or a background process on the client device, and
wherein the instructions, when executed by the one or more processors, cause the server device to send the notification data further based on a determination that the client agent application is running as the background process on the client device.
16 . The server device of claim 11 , wherein the secure application wrapper comprises at least one of:
an integrated policy that is executed on the client device, or metadata associating the client agent application to an enterprise resource that is hosted remotely.
17 . A server device comprising:
one or more processors; and memory storing instructions that, when executed by the one or more processors, cause the server device to:
receive, via a remote connection between the server device and a client agent application executing on a client device, a device token that uniquely identifies the client device;
receive notification data from a remote application executing on the server device, the remote application being accessible by the client device via the client agent application;
receive, from the client device, an indication that the client agent application will run as a background process; and
send, to a notification service and based on the received indication, the notification data for delivery to the client device, wherein the notification data comprises the device token.
18 . The server device of claim 17 , wherein the instructions, when executed by the one or more processors, further cause the server device to:
select, based on an operating system of the client device, the notification service, from a plurality of notification services, for delivery of the notification data to the client device, wherein a first notification service of the plurality of notification services corresponds to a first operating system, and a second notification service of the plurality of notification services corresponds to a second operating system different from the first operating system.
19 . The server device of claim 17 , wherein the instructions, when executed by the one or more processors, further cause the server device to:
receive, from the client device via the remote connection, an encryption key; and encrypt, using the encryption key, at least a portion of the notification data received from the remote application to generate encrypted notification data, and wherein the instructions, when executed by the one or more processors, cause the server device to send the notification data by sending the encrypted notification data.
20 . The server device of claim 17 , when executed by the one or more processors, cause the server device to send the notification data further based on a determination that the client agent application is wrapped by a secure application wrapper.Join the waitlist — get patent alerts
Track US2022255912A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.