IP Library Granted Patent US 8,446,607
Granted Patent B2
US 8,446,607 · App. 11/905,420 · Granted May 21, 2013

Method and system for policy based monitoring and blocking of printing activities on local and network printers

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 8,446,607
App. No.
11/905,420
Granted
May 21, 2013
Kind
B2
Abstract

A method and system for data loss prevention controls and protects sensitive data from being printed in an unauthorized manner. A method for controlling printing activities implemented in a computer system comprises intercepting a print job comprising print data intended for a printer driver, delaying performance of the print job, analyzing content of the print data to determine whether to allow or cancel the print job based on a security policy, and resuming or canceling the print job based on the analysis of the content of the print data.

Claims (60)

1. A method comprising:

intercepting a print job, which is intended for a first printer driver, at a second printer driver, which interfaces with a data loss prevention agent;

identifying a user identity and an originating application associated with the print job;

analyzing content of print data to determine whether to allow or cancel the print job based on a security policy, wherein the security policy outlines which types of content are authorized for printing across a plurality of computer systems by certain members of an organization, and wherein the security policy outlines which types of content are prohibited from being printed by external systems outside the organization;

wherein the second printer driver prevents all data from reaching the first printer driver until the data loss prevention agent confirms that the print job is allowed; and

wherein if the print job is allowed, the second printer driver will send the print data to the first printer driver for printing.

2. The method of claim 1 , wherein the print data comprises a representation of characters to be printed and the content of the print data is analyzed by:

determining whether the representation of characters to be printed is text data or other data;

when the representation of characters to be printed is other data, converting the other data to text data;

organizing the text data into lines of text; and

analyzing the organized text data using the security policy.

3. The method of claim 2 , wherein the other data comprises glyphs and the glyphs are converted to text data by:

determining whether a mapping from glyph to text data is available;

when a mapping from glyph to text data is not available, generating a mapping from glyph to text data using a font of the glyphs; and

converting the glyphs to text data using the mapping from glyph to text data.

4. The method of claim 2 , wherein the print data further comprises information identifying a location of each character of the text data and the text data is organized into lines of text by:

extracting the information identifying the location of each character of the text data; and

sorting the characters of the text data using the information identifying the location of each character of the text data.

5. The method of claim 1 , wherein the content of the print data is analyzed using resources copied from the first printer driver for which the print job was intended.

6. A system comprising:

a processor; and

a memory operable to store computer program instructions executable by the processor such that the system is configured for:

intercepting a print job, which is intended for a first printer driver, at a second printer driver, which interfaces with a data loss prevention agent;

identifying a user identity and an originating application associated with the print job;

analyzing content of print data to determine whether to allow or cancel the print job based on a security policy, wherein the security policy outlines which types of content are authorized for printing across a plurality of computer systems by certain members of an organization, and wherein the security policy outlines which types of content are prohibited from being printed by external systems outside the organization;

wherein the second printer driver prevents all data from reaching the first printer driver until the data loss prevention agent confirms that the print job is allowed; and

wherein if the print job is allowed, the second printer driver will send the print data to the first printer driver for printing.

7. The system of claim 6 , wherein the print data comprises a representation of characters to be printed and the content of the print data is analyzed by:

determining whether the representation of characters to be printed is text data or other data;

when the representation of characters to be printed is other data, converting the other data to text data;

organizing the text data into lines of text; and

analyzing the organized text data using the security policy.

8. The system of claim 7 , wherein the other data comprises glyphs and the glyphs are converted to text data by:

determining whether a mapping from glyph to text data is available;

when a mapping from glyph to text data is not available, generating a mapping from glyph to text data; and

converting the glyphs to text data using the mapping from glyph to text data.

9. The system of claim 7 , wherein the print data further comprises information identifying a location of each character of the text data and the text data is organized into lines of text by:

extracting the information identifying the location of each character of the text data; and

sorting the characters of the text data using the information identifying the location of each character of the text data.

10. The system of claim 6 , wherein the content of the print data is analyzed using resources copied from the first printer driver for which the print job was intended, the resources copied when the data loss prevention agent is installed in the computer system.

11. The system of claim 6 , wherein the second printer driver is installed in the computer system as a dynamic replacement driver for the intended first printer driver.

12. A computer program product including a non-transitory computer medium and computer instructions for performing operations, comprising:

intercepting a print job, which is intended for a first printer driver, at a second printer driver, which interfaces with a data loss prevention agent;

identifying a user identity and an originating application associated with the print job;

analyzing content of print data to determine whether to allow or cancel the print job based on a security policy, wherein the security policy outlines which types of content are authorized for printing across a plurality of computer systems by certain members of an organization, and wherein the security policy outlines which types of content are prohibited from being printed by external systems outside the organization;

wherein the second printer driver prevents all data from reaching the first printer driver until the data loss prevention agent confirms that the print job is allowed; and

wherein if the print job is allowed, the second printer driver will send the print data to the first printer driver for printing.

13. The computer program product of claim 12 , wherein the print data comprises a representation of characters to be printed and the content of the print data is analyzed by:

determining whether the representation of characters to be printed is text data or other data;

when the representation of characters to be printed is other data, converting the other data to text data;

organizing the text data into lines of text; and

analyzing the organized text data using the security policy.

14. The computer program product of claim 13 , wherein the other data comprises glyphs and the glyphs are converted to text data by:

determining whether a mapping from glyph to text data is available;

when a mapping from glyph to text data is not available, generating a mapping from glyph to text data; and

converting the glyphs to text data using the mapping from glyph to text data.

15. The computer program product of claim 13 , wherein the print data further comprises information identifying a location of each character of the text data and the text data is organized into lines of text by:

extracting the information identifying the location of each character of the text data; and

sorting the characters of the text data using the information identifying the location of each character of the text data.

16. The computer program product of claim 12 , wherein the content of the print data is analyzed using resources copied from the first printer driver for which the print job was intended.

Assignments (8)
CORRECTIVE ASSIGNMENT TO CORRECT THE THE PATENT TITLES AND REMOVE DUPLICATES IN THE SCHEDULE PREVIOUSLY RECORDED AT REEL: 059354 FRAME: 0335. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jun 23, 2022
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 060792/0307 →
SECURITY INTEREST Recorded Mar 3, 2022
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT AND COLLATERAL AGENT
Reel/Frame 059354/0335 →
RELEASE OF INTELLECTUAL PROPERTY COLLATERAL - REEL/FRAME 045056/0676 Recorded Mar 2, 2022
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: MCAFEE, LLC
Reel/Frame 059354/0213 →
RELEASE OF INTELLECTUAL PROPERTY COLLATERAL - REEL/FRAME 045055/0786 Recorded Oct 26, 2020
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: MCAFEE, LLC
Reel/Frame 054238/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE PATENT 6336186 PREVIOUSLY RECORDED ON REEL 045056 FRAME 0676. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Oct 22, 2020
From: MCAFEE, LLC
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 054206/0593 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE PATENT 6336186 PREVIOUSLY RECORDED ON REEL 045055 FRAME 786. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Oct 22, 2020
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 055854/0047 →
SECURITY INTEREST Recorded Jan 12, 2018
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 045055/0786 →
SECURITY INTEREST Recorded Jan 12, 2018
From: MCAFEE, LLC
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 045056/0676 →