IP Library Granted Patent US 11,818,127
Granted Patent B2
US 11,818,127 · App. 17/244,629 · Granted Nov 14, 2023

Device application access and user data management

Inventors: Lucas Chen (Atlanta, GA); Sanjay Satagopan (Atlanta, GA); Raghuram Rajan (Atlanta, GA); Rajiv Singh (Atlanta, GA)
Assignee: VMware, Inc.
H04L63/0884G06F21/602H04L9/0637H04L63/0815H04L63/0876H04L9/50
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 11,818,127
App. No.
17/244,629
Granted
Nov 14, 2023
Kind
B2
Abstract

Software development kit (“SDK”) applications may be implemented with user data on an enterprise end-user or shared device subsequent to a single check-out process on the device. A user profile and a context ID for a user can be accessed based on user provided credentials. An agent application can set a value of an agent context ID to a server context ID corresponding to the context ID for the user profile. A status of a local context ID (“LCID”) of an SDK application can be determined in response to an application launch. Using the LCD, a context ID comparison can be performed on the device with a value of a context ID from one of the SDK application, the server, and the agent application based on the LCID status. The SDK application can be implemented with user specific user data obtained from one of the SDK application and the agent application based on a result of the context ID comparison.

Claims (58)

1. A method for managing access to applications on a user device, comprising:

receiving, at a management server from an agent executing on the user device, user credentials and an indication of whether the user credentials have been verified;

retrieving a user profile associated with the user credentials;

setting a server context ID for a user session; and

transmitting the user profile and the server context ID to the agent, wherein the agent:

checks out the device to the user by:

loading the user profile; and

setting an agent context ID to the value of the server context ID;

launches an application on the user device;

determines a status of a local context ID of the application; and

in an instance where the local context ID matches at least one of the agent context ID and server context ID, implements the application with user data specific to the user.

2. The method of claim 1 , wherein receiving the user credentials and the indication further comprises receiving an indication that the device is checked out locally.

3. The method of claim 1 , wherein receiving the user credentials and the indication further comprises receiving an identifier associated with a locally stored user profile.

4. The method of claim 1 , wherein the management server receives an indication of applications available to the user based on the user profile but not installed on the user device.

5. The method of claim 1 , wherein loading the user profile comprises the updating a locally stored version of the user profile to match the user profile received from the management server.

6. The method of claim 1 , wherein checking out the user device comprises displaying an icon associated with the application on the user device to indicate that it is available to the user.

7. The method of claim 1 , the method further comprising:

sending a keychain context ID to the agent; and

causing the agent to compare the keychain context ID to the local context ID and, in an instance where the comparison results in a match, provide user data from the keychain to the application.

8. A non-transitory, computer-readable medium comprising instructions that, when executed a hardware-based processor, perform stages for managing access to applications on a user device, the stages comprising:

receiving, at a management server from an agent executing on the user device, user credentials and an indication of whether the user credentials have been verified;

retrieving a user profile associated with the user credentials;

setting a server context ID for a user session; and

transmitting the user profile and the server context ID to the agent, wherein the agent:

checks out the device to the user by:

loading the user profile; and

setting an agent context ID to the value of the server context ID;

launches an application on the user device;

determines a status of a local context ID of the application; and

in an instance where the local context ID matches at least one of the agent context ID and server context ID, implements the application with user data specific to the user.

9. The non-transitory, computer-readable medium of claim 8 , wherein receiving the user credentials and the indication further comprises receiving an indication that the device is checked out locally.

10. The non-transitory, computer-readable medium of claim 8 , wherein receiving the user credentials and the indication further comprises receiving an identifier associated with a locally stored user profile.

11. The non-transitory, computer-readable medium of claim 8 , wherein the management server receives an indication of applications available to the user based on the user profile but not installed on the user device.

12. The non-transitory, computer-readable medium of claim 8 , wherein loading the user profile comprises the updating a locally stored version of the user profile to match the user profile received from the management server.

13. The non-transitory, computer-readable medium of claim 8 , wherein checking out the user device comprises displaying an icon associated with the application on the user device to indicate that it is available to the user.

14. The non-transitory, computer-readable medium of claim 8 , the stages further comprising:

sending a keychain context ID to the agent; and

causing the agent to compare the keychain context ID to the local context ID and, in an instance where the comparison results in a match, provide user data from the keychain to the application.

15. A system for managing access to applications on a user device, the system comprising:

a management server having a memory storage storing a non-transitory, computer-readable medium comprising instructions;

a hardware-based process that executes the instructions to carry out stages comprising:

receiving, at a management server from an agent executing on the user device, user credentials and an indication of whether the user credentials have been verified;

retrieving a user profile associated with the user credentials;

setting a server context ID for a user session; and

transmitting the user profile and the server context ID to the agent, wherein the agent:

checks out the device to the user by:

loading the user profile; and

setting an agent context ID to the value of the server context ID;

launches an application on the user device;

determines a status of a local context ID of the application; and

in an instance where the local context ID matches at least one of the agent context ID and server context ID, implements the application with user data specific to the user.

16. The system of claim 15 , wherein receiving the user credentials and the indication further comprises receiving an indication that the device is checked out locally.

17. The system of claim 15 , wherein receiving the user credentials and the indication further comprises receiving an identifier associated with a locally stored user profile.

18. The system of claim 15 , wherein the management server receives an indication of applications available to the user based on the user profile but not installed on the user device.

19. The system of claim 15 , wherein loading the user profile comprises the updating a locally stored version of the user profile to match the user profile received from the management server.

20. The system of claim 15 , the stages further comprising:

sending a keychain context ID to the agent; and

causing the agent to compare the keychain context ID to the local context ID and, in an instance where the comparison results in a match, provide user data from the keychain to the application.

Assignments (3)
PATENT ASSIGNMENT Recorded Aug 5, 2024
From: VMWARE LLC
To: OMNISSA, LLC
Reel/Frame 068327/0365 →
SECURITY INTEREST Recorded Jul 3, 2024
From: OMNISSA, LLC
To: UBS AG, STAMFORD BRANCH
Reel/Frame 068118/0004 →
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0395 →
Continuity (2)
Continuation 16244157 · Jan 10, 2019
Related Publication 20210266317A1 · Aug 26, 2021