IP Library Granted Patent US 7,185,015
Granted Patent B2
US 7,185,015 · App. 10/390,547 · Granted Feb 27, 2007

System and method of monitoring and controlling application files

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 7,185,015
App. No.
10/390,547
Granted
Feb 27, 2007
Kind
B2
Abstract

A system and method for updating a system that controls applications requested for execution on a workstation. A workstation management module is configured to detect requested execution of an application. A workstation application server receives data associated with the application from the workstation. The application server module can determine one or more categories to associate with the application by referencing an application inventory database or requesting the category from an application database factory. The application database factory can receive applications from multiple application server modules. The application database factory determines whether the application was previously categorized and provides the category to the application server module; which forwards a hash/policy table to the workstation management module. Upon receipt of the hash/policy table, the workstation management module applies the policy to control access to the requested application on the workstation.

Claims (77)

1. A system for collecting program data for use in updating a monitoring system which controls programs operating on a workstation, comprising:

a workstation having a first database of information identifying categorized programs with one or more categories and one or more policies, the workstation being configured for a user to request execution of a program;

an application server module having a second database of information identifying categorized programs with one or more categories and one or more policies;

a workstation management module coupled to the workstation and configured to;

detect the program execution request;

determine whether the requested program is identified in the first database;

if the requested program is not identified in the first database, send identification information for the requested program to the application server module; and

if the requested program is identified in the first database, apply one or more policies that are associated with the requested program;

wherein the application server module is configured to;

receive the identification information for the requested program from the workstation management module if the requested program was not identified in the first database at the workstation;

determine whether the requested program is identified in the second database;

if the requested program is not identified in the second server, send information identifying the requested program to a categorization server configured to categorize the requested program; and

if the requested program is identified in the second server, provide any policies associated with the one or more categories that are associated with the requested program to the workstation management module.

2. The system of claim 1 wherein the categorization server is configured to:

receive the information identifying the requested program from the application server module;

determine whether the requested program was previously categorized by the categorization server;

if the requested program was not previously categorized by the categorization server, determine the one or more categories to associate with the requested program and provide the one or more categories to the application server module; and

if the requested program was previously categorized by the categorization server, provide the one or more categories that were previously associated with the requested program to the application server module.

3. The system of claim 2 , wherein the first database of categorized programs includes hash values.

4. The system of claim 3 , wherein the requested program is in the first database of categorized programs and is associated with the one or more policies.

5. The system of claim 2 , wherein the application server module is further configured to analyze program data associated with the requested program for a data characteristic that is indicative of the one or more categories, and to associate one or more indicators with the requested program.

6. The system of claim 5 , wherein analyzing the program data is performed on text strings that are associated with the requested program.

7. The system of claim 5 , wherein the one or more indicators includes a category flag.

8. The system of claim 7 , wherein the application server module uses the one or more indicators to screen the requested program prior to sending the identification information for the requested program to the categorization server.

9. The system of claim 2 , wherein the workstation management module comprises an application digest generator configured to determine program data to associate with the requested program.

10. The system of claim 9 , wherein the program data includes a suite.

11. The system of claim 9 , wherein the program data includes a publisher.

12. The system of claim 9 , wherein the program data includes a source directory.

13. The system of claim 9 , wherein the application server module comprises:

a classification user interface configured to provide an interface for a network administrator to select the one or more policies that are applied to the one or more categories associated with the requested program;

an uncategorized application database configured to store the identification information for the requested program and associated data if the requested program was not previously categorized; and

an upload/download manager module configured to send the stored identification information and associated data to the categorization server and to receive the one or more categories from the categorization server.

14. The system of claim 13 , wherein the uncategorized application database includes a request frequency that is associated with the requested program and indicates the frequency of requests for the requested program in the uncategorized application database.

15. The system of claim 14 , wherein the upload/download manager module is configured to send the request frequency from the uncategorized application database to the categorization server.

16. The system of claim 15 , wherein the categorized application database includes a request frequency that is associated with the requested program and indicates the frequency of requests for the requested program in the uncategorized application database.

17. The system of claim 16 , wherein the one or more policies include allowing the requested program to run on the workstation based on the one or more policies associated with the requested program and the user.

18. The system of claim 13 , wherein the one or more policies include not allowing the requested program to run on the workstation based on the one or more policies associated with the requested program and the user.

19. The system of claim 2 , wherein the categorization server comprises:

an upload/download module configured to receive the identification information for the requested program and data associated with the requested program from the application server module, determine whether the requested program has been previously categorized by the categorization server, and provide the one or more categories to the application server module;

an application analyst's classification module configured to categorize the requested program if not previously categorized by the categorization server; and

a master application database configured to store the identification information for the requested program and the one or more categories.

20. The system of claim 19 , wherein the upload/download module is configured to receive a request frequency from the application server module to prioritize processing of the program in the categorization server.

21. The system of claim 19 , further comprising:

a second workstation; and

a second application server module coupled to the second workstation and the categorization server.

22. The system of claim 19 , wherein the upload/download module is further configured to merge and sort the requested program and a second program received from the second workstation.

23. A method of updating a system which controls operation of programs on a workstation, the method comprising:

receiving a request for execution of an application;

determining whether the application is categorized in a first database, wherein a categorized application is associated with one or more policies;

if the application is categorized, then applying the one or more policies that are associated with the application;

if the application is not categorized, then posting the application to a logging database;

uploading the logging database to an application server module;

determining whether the posted application is in a second database of categorized applications associated with the application server module, wherein a categorized application is associated with one or more categories;

if the posted application is not in the second database of categorized applications, then posting the application to a database of uncategorized applications; and

if the posted application is in the second database of categorized applications, then providing one or more policies associated with the posted application to the application server module.

24. The method of claim 23 , further comprising:

uploading the uncategorized application database to a categorization server configured to categorize the posted application;

determining whether each application has been previously categorized by the categorization server;

for each application that was not previously categorized, categorizing each application and/or data associated with the application to select one or more categories to associated with each application;

posting each application along with its selected one or more categories into a database of categorized applications; and

downloading the database of categorized applications for incorporation into the application inventory database.

25. The method of claim 24 , further comprising:

updating a request frequency in the application inventory database if the application is in the application inventory database; and

uploading the application inventory database request frequency and the associated application to the application database factory.

26. The method of claim 24 , wherein the one or more policies include allowing or disallowing the application to run based on the one or more categories associated with the application and the user.

27. The method of claim 24 , wherein the one or more policies include allowing the application to run on the workstation based on the one or more categories associated with the application and the user.

28. The method of claim 24 , wherein the logging database further includes additional data associated with the application.

29. The method of claim 28 , wherein the additional data includes a request frequency.

30. The method of claim 28 , wherein the additional data includes a suite.

31. The method of claim 28 , wherein the additional data includes a publisher.

32. The method of claim 28 , wherein the additional data includes a source directory.

33. The method of claim 23 , further comprising:

analyzing the application and/or the additional data associated with the application for data characteristics that are indicative of the one or more categories; and

associating one or more indicators with the application.

34. The method of claim 33 , wherein the analyzing the program data is performed on text strings that are associated with the application and/or the additional data associated with the application.

35. The method of claim 33 , wherein the one or more indicators can include a category flag.

36. The method of claim 35 , further comprising screening the application using the one or more indicators prior to uploading the uncategorized application database to the application database factory.

Assignments (20)
RELEASE OF SECURITY INTEREST Recorded Apr 2, 2025
From: UBS AG, STAMFORD BRANCH
To: FORCEPOINT, LLC; BITGLASS, LLC
Reel/Frame 070706/0263 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 18, 2021
From: FORCEPOINT FEDERAL HOLDINGS LLC
To: FORCEPOINT LLC
Reel/Frame 056272/0475 →
CHANGE OF NAME Recorded May 10, 2021
From: FORCEPOINT LLC
To: FORCEPOINT FEDERAL HOLDINGS LLC
Reel/Frame 056183/0265 →
PATENT SECURITY AGREEMENT Recorded Jan 20, 2021
From: REDOWL ANALYTICS, INC.; FORCEPOINT LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 055052/0302 →
RELEASE OF SECURITY INTEREST IN PATENTS Recorded Jan 8, 2021
From: RAYTHEON COMPANY
To: WEBSENSE, INC.; PORTAUTHORITY TECHNOLOGIES, LLC (FKA PORTAUTHORITY TECHNOLOGIES, INC.); RAYTHEON OAKLEY SYSTEMS, LLC; FORCEPOINT FEDERAL LLC (FKA RAYTHEON CYBER PRODUCTS, LLC, FKA RAYTHEON CYBER PRODUCTS, INC.)
Reel/Frame 055492/0146 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 1, 2017
From: WEBSENSE, LLC
To: FORCEPOINT LLC
Reel/Frame 043397/0440 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE FROM WEBSENSE LLC TO WEBSENSE, LLC PREVIOUSLY RECORDED ON REEL 039590 FRAME 0646. ASSIGNOR(S) HEREBY CONFIRMS THE CHANGE OF NAME. Recorded Sep 8, 2016
From: WEBSENSE, INC.
To: WEBSENSE, LLC
Reel/Frame 039951/0904 →
CHANGE OF NAME Recorded Aug 5, 2016
From: WEBSENSE, INC.
To: WEBSENSE LLC
Reel/Frame 039590/0646 →
PATENT SECURITY AGREEMENT Recorded Jun 9, 2015
From: WEBSENSE, INC.; RAYTHEON OAKLEY SYSTEMS, LLC; RAYTHEON CYBER PRODUCTS, LLC (FORMERLY KNOWN AS RAYTHEON CYBER PRODUCTS, INC.); PORT AUTHORITY TECHNOLOGIES, INC.
To: RAYTHEON COMPANY
Reel/Frame 035859/0282 →
RELEASE OF FIRST LIEN SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME: 030694/0615 Recorded May 29, 2015
From: ROYAL BANK OF CANADA, AS COLLATERAL AGENT
To: WEBSENSE, INC.; PORT AUTHORITY TECHNOLOGIES, INC.
Reel/Frame 035858/0680 →
RELEASE OF SECOND LIEN SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME: 30704/0374 Recorded May 29, 2015
From: ROYAL BANK OF CANADA, AS COLLATERAL AGENT
To: WEBSENSE, INC.; PORT AUTHORITY TECHNOLOGIES, INC.
Reel/Frame 035801/0689 →
ASSIGNMENT OF SECURITY INTEREST Recorded Apr 10, 2014
From: JPMORGAN CHASE BANK, N.A., AS EXISTING COLLATERAL AGENT
To: ROYAL BANK OF CANADA, AS SUCCESSOR COLLATERAL AGENT
Reel/Frame 032716/0916 →
SECOND LIEN SECURITY AGREEMENT Recorded Jun 27, 2013
From: WEBSENSE, INC.; PORTAUTHORITY TECHNOLOGIES, INC.
To: ROYAL BANK OF CANADA
Reel/Frame 030704/0374 →
FIRST LIEN SECURITY AGREEMENT Recorded Jun 26, 2013
From: WEBSENSE, INC.; PORTAUTHORITY TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 030694/0615 →
RELEASE OF SECURITY INTEREST Recorded Jun 26, 2013
From: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
To: WEBSENSE, INC.
Reel/Frame 030693/0424 →
NOTICE OF GRANT OF SECURITY INTEREST IN PATENTS Recorded Dec 16, 2010
From: WEBSENSE, INC.
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 025503/0895 →
TERMINATION OF SECURITY INTEREST IN PATENTS Recorded Nov 19, 2010
From: BANK OF AMERICA, N.A., AS SENIOR COLLATERAL AGENT
To: PORTAUTHORITY TECHNOLOGIES, INC.; WEBSENSE, INC.
Reel/Frame 025408/0520 →
ASSIGNMENT OF SECURITY INTEREST Recorded Jul 3, 2008
From: MORGAN STANLEY & CO. INCORPORATED, IN ITS CAPACITY AS RESIGNING SENIOR COLLATERAL AGENT
To: BANK OF AMERICA, N.A., IN ITS CAPACITY AS SUCCESSOR SENIOR COLLATERAL AGENT
Reel/Frame 021185/0802 →
SENIOR PATENT SECURITY AGREEMENT Recorded Oct 19, 2007
From: WEBSENSE, INC.; PORTAUTHORITY TECHNOLOGIES, INC.
To: MORGAN STANLEY & CO. INCORPORATED, AS SENIOR COLLATERAL AGENT
Reel/Frame 019984/0416 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 3, 2003
From: KESTER, HAROLD M.; HEGLI, RONALD B.; DIMM, JOHN ROSS; ANDERSON, MARK RICHARD
To: WEBSENSE, INC.
Reel/Frame 013776/0117 →