IP Library Granted Patent US 12,047,422
Granted Patent B2
US 12,047,422 · App. 17/473,372 · Granted Jul 23, 2024

Dynamic application-level compliance enforcement

Inventors: Gaurav Verma (Bangalore, IN); Manjunath Subramani (Bangalore, IN); Suchit Shivashankar (Bangalore, IN); Karthikeyan Palanisamy (Bangalore, IN)
Assignee: VMware LLC
H04L63/205G06F21/51G06F21/604G06F21/629
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 12,047,422
App. No.
17/473,372
Granted
Jul 23, 2024
Kind
B2
Abstract

Examples herein describe systems and methods for application-specific compliance enforcement. An example method can include receiving, at a user device, profiles containing application-specific restrictions. When a first application is opened, a management agent compares the corresponding application-specific restrictions with current device settings. This can be done with a checksum comparison where the checksums are created based on a hash with an application- or profile-specific identifier. If they differ, the management agent stores the current device settings and prompts for, or automatically changes, the device settings to new compliant values before allowing the first application to operate in the foreground of the user device screen. If the first application is closed or minimized, the stored device settings can be restored. The management agent can compare those against application-specific restrictions of the second application before allowing the second application to run in the foreground.

Claims (61)

1. A method for compliance enforcement, comprising:

storing a first checksum that represents current device settings on a user device;

determining whether the current device settings meet compliance settings by comparing the first checksum to a second checksum for first compliance settings;

changing the current device settings to modified settings;

storing a third checksum for the modified settings; and

executing an application in a foreground when the second and third checksums match, which indicates the modified settings meet compliance settings.

2. The method of claim 1 , wherein the application executes in a background of the user device until the second and third checksums match.

3. The method of claim 1 , wherein a launcher application on the user device provides access to the application, wherein an agent on the user device detects a launch of the application and determines whether the first and second checksums match.

4. The method of claim 1 , further comprising prompting a user prior to changing the current device settings to the modified settings.

5. The method of claim 1 , further comprising:

during execution of the application, detecting a change to the device settings;

comparing the second checksum against a fourth checksum for the changed device settings; and

based on the comparison, blocking execution of the application.

6. The method of claim 1 , further comprising:

storing the current device settings;

detecting that the application is closed or minimized; and

restoring the device settings from the modified settings to the stored current device settings.

7. The method of claim 6 , further comprising:

detecting that the application is opened or maximized; and

restoring the device settings from the stored current device settings to the modified settings.

8. A non-transitory, computer-readable medium comprising instructions that, when executed by a processor of a user device, perform stages for performing compliance enforcement, the stages comprising:

storing a first checksum that represents current device settings on a user device;

determining whether the current device settings meet compliance settings by comparing the first checksum to a second checksum for first compliance settings;

changing the current device settings to modified settings;

storing a third checksum for the modified settings; and

executing an application in a foreground when the second and third checksums match, which indicates the modified settings meet compliance settings.

9. The non-transitory, computer-readable medium of claim 8 , wherein the application executes in a background of the user device until the second and third checksums match.

10. The non-transitory, computer-readable medium of claim 8 , wherein a launcher application on the user device provides access to the application, wherein an agent on the user device detects a launch of the application and determines whether the first and second checksums match.

11. The non-transitory, computer-readable medium of claim 8 , the stages further comprising prompting a user prior to changing the current device settings to the modified settings.

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

during execution of the application, detecting a change to the device settings;

comparing the second checksum against a fourth checksum for the changed device settings; and

based on the comparison, blocking execution of the application.

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

storing the current device settings;

detecting that the application is closed or minimized; and

restoring the device settings from the modified settings to the stored current device settings.

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

detecting that the application is opened or maximized; and

restoring the device settings from the stored current device settings to the modified settings.

15. A system for performing compliance enforcement, comprising:

a user device having a processor and memory storage;

wherein the memory storage contains a non-transitory, computer-readable medium comprising instructions that, when executed by the processor, carry out stages comprising:

storing a first checksum that represents current device settings on the user device;

determining whether the current device settings meet compliance settings by comparing the first checksum to a second checksum for first compliance settings;

changing the current device settings to modified settings;

storing a third checksum for the modified settings; and

executing an application in a foreground when the second and third checksums match, which indicates the modified settings meet compliance settings.

16. The system of claim 15 , wherein the application executes in a background of the user device until the second and third checksums match.

17. The system of claim 15 , wherein a launcher application on the user device provides access to the application, wherein an agent on the user device detects a launch of the application and determines whether the first and second checksums match.

18. The system of claim 15 , the stages further comprising prompting a user prior to changing the current device settings to the modified settings.

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

during execution of the application, detecting a change to the device settings;

comparing the second checksum against a fourth checksum for the changed device settings; and

based on the comparison, blocking execution of the application.

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

storing the current device settings;

detecting that the application is closed or minimized;

restoring the device settings from the modified settings to the stored current device settings;

detecting that the application is opened or maximized; and

restoring the device settings from the stored current device settings to the modified settings.

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/0242 →