Patent US6026402A successfully refreshed from Google Patents.
← Back to Patent Explorer
US6026402A Expired / Lapsed US ⏱️ 0.0 years remaining

Process restriction within file system hierarchies

Assignee: Micro Focus LLC
•
Filing: 1998-01-07
•
Granted: 2000-02-15
•
Expires: 2018-01-07
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract The present invention provides a method and apparatus for restricting a process or process hierarchy to a subset of a computer host's file system(s) in an environment where all file systems are simultaneously available to an application. A caller is provided with the ability to arrange for the restriction of a process hierarchy (consisting of a process and all the processes it may subsequently create) to a set of file system sub-hierarchies. When a process executes within a restriction domain in which a sub-hierarchy has been specified for each of the available file systems, an embodiment of the invention will modify the usual operation of the host computer's operating system interface such that any file system access attempts by the affected process are constrained to occur logically within the restriction domain.

Inventors

  • 👤 Joseph K. Vossen
  • 👤 Jeffrey S. Barber

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-04 23:12
CPC Classifications
G; G06; G06F; G06F21/00; G06F21/60; G06F21/62; G06F21/6218; G06F16/00; G06F16/10; G06F9/00; G06F9/06; G06F9/46; G06F9/468; G06F2221/00; G06F2221/21; G06F2221/2145; Y; Y10; Y10S; Y10S707/00; Y10S707/99931; Y10S707/99939

Claims Analysis

Total Claims: 13
Claim 1
Independent Claim 144 words
A method for restricting a process or set of processes to a subset of a host computer system's file systems, comprising the steps of: providing a host computer system within which multiple processes operate; each process having simultaneous access to multiple, discrete, hierarchically-organized file systems, permitting a privileged process, operating on behalf of a specially authorized user, to designate sub-hierarchies within one or more of the available file systems, changing the behavior of the host system such that for each such file system sub-hierarchy assigned to a process, the process is prevented from accessing or even addressing any file system objects outside the assigned sub-hierarchy in the respective file system, and changing the behavior of the host system such that, after the assignment of such sub-hierarchies to a process, the restriction is also assigned to and enforced against any further process it subsequently creates.
Claim 2
Independent Claim 144 words
A method for restricting a process or set of processes to a subset of a host computer system's file systems, comprising the steps of: providing a host computer system within which multiple processes operate; each process having simultaneous access to multiple, discrete, hierarchically-organized file systems, permitting a privileged process, operating on behalf of a specially authorized user, to designate sub-hierarchies within one or more of the available file systems, changing the behavior of the host system such that for each such file system sub-hierarchy assigned to a process, the process is prevented from accessing or even addressing any file system objects outside the assigned sub-hierarchy in the respective file system, and changing the behavior of the host system such that, after the assignment of such sub-hierarchies to a process, the restriction is also assigned to and enforced against any further process it subsequently creates.
Claim 3
Dependent Claim 92 words
A method for restricting a process or set of processes to a subset of a host computer system's file systems in an environment where many discrete file systems may be simultaneously accessible to the processes as claimed in claim 1, further comprising creating and managing a set of data structures in association with each process to which the restrictions are applied such that each process can be separately controlled, wherein, subsets of file system hierarchies are simultaneously specified in a system call to identify which process or processes are to be restricted.
Claim 4
Dependent Claim 60 words
A method for restricting a process or set of processes to a subset of a host computer system's file systems as claimed in claim 2, the system call further comprising, a SetProcessRootDirectrories( ) call applied to an identified process, wherein, the file system hierarchy for each designated file system is completely unrelated to the path specified for other file systems.
Claim 5
Dependent Claim 60 words
The method for restricting a process or set of processes to a subset of a host computer system's file systems as claimed in claim 3, further comprising a restricted domain to which a process hierarchy is restricted and contains exactly one such sub-hierarchy corresponding to each file system or potential file system available to processes executing on the computer system.
Claim 6
Dependent Claim 85 words
The method for restricting a process or set of processes to a subset of a host computer system's file systems as set forth in claim 4, wherein, when a process executes within a restriction domain in which a sub-hierarchy has been specified for each of the available file systems, any file system access attempts by the affected process are constrained to occur logically within the restriction domain, wherein, a process may access only those file system objects contained within the previously specified file system sub-hierarchies.
Claim 7
Dependent Claim 123 words
The method for restricting a process or set of processes to a subset of a host computer system's file systems as set forth in claim 5, further comprising the method steps of: hiding the actual location of all accessible file system objects from the affected process by causing the operating system to interpret file system path names (for such a process) such that the file system node specified as the root of the restriction sub-hierarchy is the apparent root of the entire file system hierarchy for that file system, and wherein, if the restriction domain contains an empty sub-hierarchy for a file system, the operating system is modified to simply disallow all attempts to access file system nodes residing on that file system.
Claim 8
Dependent Claim 83 words
The method for restricting a process or set of processes to a subset of a host computer system's file systems as set forth in claim 5, the method further comprising the step of, before returning to the kernel driver loader, the process restriction filter driver inserting itself in the I/O execution path for all devices currently holding a file system--i.e., it must attach itself to the driver that is currently at the top of the driver stack that deals with each file system.
Claim 9
Dependent Claim 99 words
A method for restricting a process or set of processes to a subset of a host computer system's file systems in an environment where many discrete file systems may be simultaneously accessible to the processes as claimed in claim 1, further comprising the step of inheriting restrictions by subsequently created processes in which a new set of data structures are created by copying the data structures of the creator, and wherein the new set of data structures is maintained in association with the new process such that the new process is subjected to the same restrictions as its creator.
Claim 10
Independent Claim 207 words
A method for restricting a process or set of processes in which the process state is conceptually a list of pairs, each pair consisting of a device and a restriction hierarchy to apply to that device, wherein another component can register to receive notification of such an event, comprising the method steps of: calling PsSetCreateProcessNotifyRoutine( ) to register itself for the notification, identifying a first process, locating a first set of state data structures associated with the first process, allocating memory for a new set of data structures, copying the contents of first set of state data structures to the new set of data structures, wherein, the new of data structures are inserted into the first set of data structures using the new process ID as a key, distinguishing the device, further comprising the steps of: identifying each local file system by its own file system device object as the corresponding object created by the process restriction filter driver is sufficient to distinguish the device, and identifying removable media file systems by assigning a serial number to each device such that when file system restrictions are imposed against a process, the serial number of each respective file system device is recorded in the process state data structures.
Claim 11
Independent Claim 207 words
A method for restricting a process or set of processes in which the process state is conceptually a list of pairs, each pair consisting of a device and a restriction hierarchy to apply to that device, wherein another component can register to receive notification of such an event, comprising the method steps of: calling PsSetCreateProcessNotifyRoutine( ) to register itself for the notification, identifying a first process, locating a first set of state data structures associated with the first process, allocating memory for a new set of data structures, copying the contents of first set of state data structures to the new set of data structures, wherein, the new of data structures are inserted into the first set of data structures using the new process ID as a key, distinguishing the device, further comprising the steps of: identifying each local file system by its own file system device object as the corresponding object created by the process restriction filter driver is sufficient to distinguish the device, and identifying removable media file systems by assigning a serial number to each device such that when file system restrictions are imposed against a process, the serial number of each respective file system device is recorded in the process state data structures.
Claim 12
Dependent Claim 90 words
A method for restricting a process or set of processes on remote file systems provided by the redirectors as claimed in claim 9, further comprising: storing an additional piece of information on the process restriction filter to distinguish one "drive" or file system from another, and further comprising the step of, when the drive is connected, the user provides a drive name (F:, G:, etc.); and passing the drive name, as the first component of file path names, to the redirector on I/O requests referring to the remote file system.
Claim 13
Dependent Claim 121 words
A method for restricting a process or set of processes on remote file systems provided by the redirectors as claimed in claim 10, further comprising the step of the filter detecting situations in which it is being asked to restrict a process within a network file system by recognizing that the request has been sent through the device object corresponding to the redirector file system ("\Device\LanmanRedirector"), and retrieving the name associated with the specified hierarchy, and parsing the name as follows: drive name (with a colon) followed by host computer name and share name, wherein the device object along with the initial path name including the drive name, host and share name forms the "file system identifier" for that file system.

References Cited (Backward Citations)

US5471622A Cited
US5594921A Cited
US5758356A Cited
US5617568A Cited
US5859966A Cited
US5737727A Cited
US5867647A Cited
US5893086A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2003-02-14 2003-08-16 2004-02-15 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2007-02-14 2007-08-16 2008-02-15 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2011-02-14 2011-08-16 2012-02-15 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag