IP Library Granted Patent US 11,601,281
Granted Patent B2
US 11,601,281 · App. 15/194,423 · Granted Mar 7, 2023

Managing user profiles securely in a user environment

Inventor: Sisimon Soman (Sunnyvale, CA)
Assignee: VMWARE, INC.
H04L9/3239G06F21/44G06F21/51G06F21/56H04L9/3263G06F2221/033
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,601,281
App. No.
15/194,423
Granted
Mar 7, 2023
Kind
B2
Abstract

User profiles of applications installed in a user environment, which may be compromised by malware, are managed to protect against such malware gaining access to sensitive data that may be contained in the user profiles. The method includes the steps of detecting, by a management agent of a user environment, a launch of an application within the user environment, verifying, by a filter driver, an identity of the application against a stored profile of the application, and responsive to determining that the identity of the application matches the stored profile of the application, importing, by the management agent, an encrypted user profile from a remote storage to local storage, decrypting, by the filter driver, the encrypted user profile, and providing the decrypted user profile to the application.

Claims (72)

1. A method of managing a user profile, comprising:

detecting, by a management agent of a user environment, a launch of an application within the user environment;

verifying, by a filter driver, an identity derived from the application against a stored profile of the application, wherein the stored profile is created by executing the application and capturing a directory path within the user environment from the executed application; and

responsive to determining that the identity derived from the application matches the stored profile of the application, importing, by the management agent, an encrypted user profile from a remote storage to a local storage, decrypting, by the filter driver, the encrypted user profile, and providing the decrypted user profile to the application.

2. The method of claim 1 , wherein verifying an identity derived from the application comprises:

computing a hash value from the application;

comparing the computed hash value with a stored hash value associated with the application; and

confirming that the identity derived from the application is verified if the computed hash value matches the stored hash value.

3. The method of claim 1 , wherein verifying an identity derived from the application comprises:

retrieving certificate data associated with the application;

comparing the retrieved certificate data with a stored certificate data associated with the application; and

confirming that the identity derived from the application is verified if the retrieved certificate data matches the stored certificate data.

4. The method of claim 1 , wherein the stored profile of the application is further created by:

computing a hash value from the application;

capturing certificate data for the application;

capturing a user profile directory path within the user environment associated with the application; and

storing the hash value, the certificate data, and the user profile directory path in the stored profile of the application.

5. The method of claim 1 , further comprising:

detecting, by the management agent, an updated user profile for an application;

encrypting, by the filter driver, the updated user profile; and

writing, by a file system driver, the encrypted updated user profile to the local storage.

6. The method of claim 5 , further comprising:

upon detecting a closing of the application associated with the updated user profile or a shutdown, copying, by the management agent, the encrypted updated user profile to the remote storage.

7. The method of claim 1 , wherein the directory path within the user environment is used by the application for storing the user profile.

8. The method of claim 1 , wherein executing the application further comprises:

executing the application via an application profiler configured to capture the directory path within the user environment; and

storing, by the application profiler, the directory path in the stored profile of the application.

9. A non-transitory computer readable medium comprising instructions, which when executed by a computing device causes the computing device to perform the steps comprising:

detecting, by a management agent of a user environment, a launch of an application within the user environment;

verifying, by a filter driver, an identity derived from the application against a stored profile of the application, wherein the stored profile is created by executing the application and capturing a directory path within the user environment from the executed application; and

responsive to determining that the identity derived from the application matches the stored profile of the application, importing, by the management agent, an encrypted user profile from a remote storage to a local storage, decrypting, by the filter driver, the encrypted user profile, and providing the decrypted user profile to the application.

10. The non-transitory computer readable medium of claim 9 , wherein the instructions further cause the computing device to perform the steps further comprising:

computing a hash value from the application;

comparing the computed hash value with a stored hash value associated with the application; and

confirming that the identity derived from the application is verified if the computed hash value matches the stored hash value.

11. The non-transitory computer readable medium of claim 9 , wherein the instructions further cause the computing device to perform the steps comprising:

retrieving certificate data associated with the application;

comparing the retrieved certificate data with a stored certificate data associated with the application; and

confirming that the identity derived from the application is verified if the retrieved certificate data matches the stored certificate data.

12. The non-transitory computer readable medium of claim 9 , wherein the instructions further cause the computing device to perform the steps comprising:

computing a hash value from the application;

capturing certificate data for the application;

capturing a user profile directory path within the user environment associated with the application; and

storing the hash value, the certificate data, and the user profile directory path in the stored profile of the application.

13. The non-transitory computer readable medium of claim 9 , wherein the instructions further cause the computing device to perform the steps comprising:

detecting, by the management agent, an updated user profile for an application;

encrypting, by the filter driver, the updated user profile; and

writing, by a file system driver, the encrypted updated user profile to the local storage.

14. The non-transitory computer readable medium of claim 13 , wherein the instructions further cause the computing device to perform the steps comprising:

upon detecting a closing of the application associated with the updated user profile or a shutdown, copying, by the management agent, the encrypted updated user profile to the remote storage.

15. A computer system comprising a processor, a memory, and a local storage, and connected to a remote storage over a network, wherein the processor is programmed with:

a management agent of a user environment that detects a launch of an application within the user environment; and

a filter driver that verifies an identity derived from the application against a stored profile of the application, wherein the stored profile is created by executing the application and capturing a directory path within the user environment from the executed application,

wherein, responsive to determining that the identity derived from the application matches the stored profile of the application, the management agent imports an encrypted user profile from the remote storage to the local storage, and the filter driver decrypts the encrypted user profile and provides the decrypted user profile to the application.

16. The computer system of claim 15 , wherein the filter driver verifies an identity derived from the application by:

computing a hash value from the application;

comparing the computed hash value with a stored hash value associated with the application; and

confirming that the identity from the application is verified if the computed hash value matches the stored hash value.

17. The computer system of claim 15 , wherein the filter driver verifies an identity derived from the application by:

retrieving certificate data associated with the application;

comparing the retrieved certificate data with a stored certificate data associated with the application; and

confirming that the identity derived from the application is verified if the retrieved certificate data matches the stored certificate data.

18. The computer system of claim 15 , wherein the stored profile of the application is further created by:

computing a hash value from the application;

capturing certificate data for the application;

capturing a user profile directory path within the user environment associated with the application; and

storing the hash value, the certificate data, and the user profile directory path in the stored profile of the application.

19. The computer system of claim 15 , wherein

the management agent is further programmed to detect an updated user profile for an application, the filter driver is further programmed to encrypt the updated user profile; and

the processor is further programmed with a file system driver that writes the encrypted updated user profile to the local storage.

20. The computer system of claim 19 , wherein

upon detecting a closing of the application associated with the updated user profile or a shutdown, the management agent copies the encrypted updated user profile to the remote storage.

Assignments (4)
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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 29, 2018
From: SOMAN, SISIMON
To: VMWARE, INC.
Reel/Frame 047629/0305 →
Continuity (1)
Related Publication 20170373853A1 · Dec 28, 2017