IP Library Granted Patent US 7,757,269
Granted Patent B1
US 7,757,269 · App. 11/346,741 · Granted Jul 13, 2010

Enforcing alignment of approved changes and deployed changes in the software change life-cycle

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,757,269
App. No.
11/346,741
Granted
Jul 13, 2010
Kind
B1
Abstract

On a host, host content change requests are intercepted in real-time. In a tracking mode, the change requests are logged and allowed to take effect on the host. In an enforcement mode, the change requests are logged and additionally compared against authorized change policies and a determination is made whether to allow the change to take effect or to block the changes, thereby enforcing the authorized change policies on the host. Tracking and enforcement can be done in real-time. In either mode and at any time, the logged changes can be reconciled against a set of approved change orders in order to identify classes of changes, including changes that were deployed but not approved and changes that were approved but not deployed.

Claims (82)

1. A method, comprising:

intercepting a host content change request indicating a change to a persistent object on a host;

determining whether the change is authorized, as indicated by a set of change authorization policies;

allowing the change to take effect when the change is authorized;

blocking the change from taking effect when the change is not authorized;

indicating whether the change was a “create”, “delete”, “rename”, “move” or “write” operation, or whether the change set or modified an attribute of the persistent object;

indicating a time at which the change occurred;

indicating one or more attributes of the changed object after the change takes effect;

indicating information about which end user initiated the change; and

indicating a set of one or more differences for one or more changed portions of the object after the change, wherein each policy in the set of change authorization policies is in the group comprising:

policies indicating a set of persistent objects that can be changed without restriction;

policies indicating a set of users, programs or entities that can make changes to a specified set of persistent objects at any time; and

policies indicating a set of users, programs or entities that can make changes to a specified set of files or directories during one or more specified time windows.

2. The method as recited in claim 1 , wherein the determining, the allowing and the blocking are performed in real-time.

3. The method as recited in claim 1 , further comprising:

logging information about the host content change request.

4. The method as recited in claim 1 , wherein:

the indicated one or more attributes of the changed object comprise object name, object type, object size, object path, or object permissions; and

the information about which end user initiated the change comprises a user name, user ID or group ID when the change was initiated by a user, or a name of a program or executable file when the change was initiated by a program or executable file.

5. The method as recited in claim 1 , further comprising:

generating an alert when the change is not authorized.

6. The method as recited in claim 1 , wherein the change comprises creating, deleting, moving, renaming, writing to, or modifying an attribute of the persistent object.

7. The method as recited in claim 1 , wherein the blocking is performed regardless of any access control privileges an entity attempting the change might possess on the host.

8. The method as recited in claim 1 , further comprising:

generating a change order for the change when the deployed change is not authorized.

9. The method as recited in claim 8 , further comprising:

making the change order available to a change approval process.

10. A computer readable medium having computer-executable instructions for tracking of host content changes and enforcement of change authorization policies on a host, the instructions for performing steps comprising:

intercepting a host content change request indicating a change to a persistent object on the host;

determining whether the change is authorized, as indicated by the set of change authorization policies;

allowing the change to take effect when the change is authorized;

blocking the change from taking effect when the change is not authorized;

indicating whether the change was a “create”, “delete”, “rename”, “move” or “write” operation, or whether the change set or modified an attribute of the persistent object;

indicating a time at which the change occurred;

indicating one or more attributes of the changed object after the change takes effect;

indicating information about which end user initiated the change; and

indicating a set of one or more differences for one or more changed portions of the object after the change, wherein each policy in the set of change authorization policies is in the group comprising:

policies indicating a set of persistent objects that can be changed without restriction;

policies indicating a set of users, programs or entities that can make changes to a specified set of persistent objects at any time; and

policies indicating a set of users, programs or entities that can make changes to a specified set of files or directories during one or more specified time windows.

11. A computer readable medium comprising data indicating a set of change authorization policies for real-time tracking of host content changes and enforcement of authorized change policies on a host, the change authorization policies indicating one or more of:

a set of persistent objects that can be changed without restriction;

a set of users, programs or entities that can make changes to a specified set of persistent objects at any time; and

a set of users, programs or entities that can make changes to a specified set of persistent objects during one or more specified time windows, wherein the change authorization policies are for use by an agent for:

intercepting a host content change request indicating a change to a persistent object on the host;

determining whether the change is authorized, as indicated by the set of change authorization policies;

allowing the change to take effect when the change is authorized;

blocking the change from taking effect when the change is not authorized;

indicating whether the change was a “create”, “delete”, “rename”, “move” or “write” operation, or whether the change set or modified an attribute of the persistent object;

indicating a time at which the change occurred;

indicating one or more attributes of the changed object after the change takes effect;

indicating information about which end user initiated the change; and

indicating a set of one or more differences for one or more changed portions of the object after the change.

12. A host, comprising:

a management module for managing one or more persistent objects on the host, the management module being configured to interface with a processor and with a controller for:

intercepting a host content change request indicating a change to a persistent object on the host;

determining whether the change is authorized, as indicated by a set of change authorization policies;

allowing the change to take effect when the change is authorized;

blocking the change from taking effect when the change is not authorized, whereby the controller can track host content changes and enforce authorized change policies on the host;

indicating whether the change was a “create”, “delete”, “rename”, “move” or “write” operation, or whether the change set or modified an attribute of the persistent object;

indicating a time at which the change occurred;

indicating one or more attributes of the changed object after the change takes effect;

indicating information about which end user initiated the change; and

indicating a set of one or more differences for one or more changed portions of the object after the change, wherein each policy in the set of change authorization policies is in the group comprising:

policies indicating a set of persistent objects that can be changed without restriction;

policies indicating a set of users, programs or entities that can make changes to a specified set of persistent objects at any time; and

policies indicating a set of users. programs or entities that can make changes to a specified set of persistent objects during one or more specified time windows.

13. The host as recited in claim 12 , wherein the determining, the allowing and the blocking are performed in real-time.

14. A method to generate a display, on a display device, representing approved change orders and deployed changes on a host, comprising:

allocating a first portion of the display device to correspond to one or more approved change orders for one or more hosts;

allocating a second portion of the display device to correspond to one or more deployed changes on the one or more hosts;

within the first portion, displaying a shape for each of the approved change orders;

within the second portion, displaying a shape for each of the deployed changes; and

representing each shape in the second portion as matched to a particular shape in the first portion when the deployed change indicated by the shape in the second portion corresponds to the approved change order indicated by the particular shape in the first portion, wherein the representing comprises coloring the particular shape in the first portion and the matched shapes in the second portion with a same color.

15. The method as recited in claim 14 , further comprising:

receiving input from a user indicating a particular shape in the first portion; and

modifying the display to highlight a set of one or more shapes in the second portion which indicate deployed changes that correspond to the approved change order represented by the particular shape in the first portion.

16. The method as recited in claim 14 , further comprising:

receiving input from a user indicating a particular shape in the second portion; and

modifying the display to:

(a) highlight a particular shape in the first portion that indicates an approved change order corresponding to the deployed change indicated by the particular shape in the second portion; and

(b) highlight a set of one or more shapes in the second portion as matching with the highlighted particular shape in the first portion, the set comprising shapes that indicate deployed changes corresponding to the approved change order.

Assignments (11)
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: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 045056/0676 →
SECURITY INTEREST Recorded Jan 12, 2018
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 045055/0786 →
CHANGE OF NAME AND ENTITY CONVERSION Recorded Aug 24, 2017
From: MCAFEE, INC.
To: MCAFEE, LLC
Reel/Frame 043665/0918 →
MERGER Recorded Jul 20, 2009
From: SOLIDCORE SYSTEMS, INC.
To: MCAFEE, INC.
Reel/Frame 022973/0458 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 2, 2006
From: ROY-CHOWDHURY, RAHUL; SEBES, E. JOHN; VAISHNAV, JAY
To: SOLIDCORE SYSTEMS, INC
Reel/Frame 017544/0525 →