US20040107342A1 - Secure network file access control system - Google Patents
Secure network file access control system Download PDFInfo
- Publication number
- US20040107342A1 US20040107342A1 US10/712,474 US71247403A US2004107342A1 US 20040107342 A1 US20040107342 A1 US 20040107342A1 US 71247403 A US71247403 A US 71247403A US 2004107342 A1 US2004107342 A1 US 2004107342A1
- Authority
- US
- United States
- Prior art keywords
- file
- data
- network
- access
- request
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
- 238000012546 transfer Methods 0.000 claims abstract description 23
- 238000003860 storage Methods 0.000 claims description 134
- 238000000034 method Methods 0.000 claims description 87
- 230000008569 process Effects 0.000 claims description 68
- 238000012545 processing Methods 0.000 claims description 41
- 230000004044 response Effects 0.000 claims description 17
- 238000011156 evaluation Methods 0.000 claims description 11
- 238000004891 communication Methods 0.000 claims description 10
- 230000002085 persistent effect Effects 0.000 claims description 7
- 230000001419 dependent effect Effects 0.000 claims description 6
- 238000012797 qualification Methods 0.000 claims description 5
- 238000007906 compression Methods 0.000 description 46
- 230000006835 compression Effects 0.000 description 44
- 238000007726 management method Methods 0.000 description 44
- 239000003795 chemical substances by application Substances 0.000 description 24
- 238000010586 diagram Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 9
- 238000013475 authorization Methods 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 8
- 230000008901 benefit Effects 0.000 description 6
- 238000012937 correction Methods 0.000 description 5
- 238000003066 decision tree Methods 0.000 description 4
- 230000006837 decompression Effects 0.000 description 4
- 238000012544 monitoring process Methods 0.000 description 4
- 238000012795 verification Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 230000004224 protection Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000012550 audit Methods 0.000 description 2
- 230000000903 blocking effect Effects 0.000 description 2
- 238000013144 data compression Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000000750 progressive effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 239000000654 additive Substances 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000004888 barrier function Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003090 exacerbative effect Effects 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000001404 mediated effect Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000000246 remedial effect Effects 0.000 description 1
- 238000004366 reverse phase liquid chromatography Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000007493 shaping process Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0643—Management of files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/062—Securing storage systems
- G06F3/0622—Securing storage systems in relation to access
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
Definitions
- the present invention is generally related to network infrastructure devices supporting network access to remotely stored data and, in particular, a secure network system utilizing an infrastructure appliance to provide authentication, access, compression and encryption controls over remote file data stores.
- NAS network attached storage
- SANs storage area networks
- NAS network attached storage
- Other fundamental capabilities provided by network-based storage architectures include the ability to geographically distribute and, further, replicate the data stores, which permit remote data backup and hot fail-over of typically business and real-time transaction processing storage systems.
- DAS direct attached storage
- VPN virtual private networking
- VPN and similar technologies fail to support any meaningful access controls or assure the continuing security of data once delivered to a VPN endpoint system.
- the underlying protocols were simply not designed to provide or enforce storage-type access controls.
- VPN data while encrypted and secure during transport, is delivered to a VPN host endpoint subject only to the access controls implemented by the host. The data is also delivered unencrypted and thus again subject only to the security controls provided by the host.
- a general purpose of the present invention is to provide an efficient network-based storage architecture utilizing a wire-speed infrastructure appliance as a managed portal between client computer systems and network storage for the coordinated control over authentication, access, encryption and compression of data transferred to network connected data storage.
- a secure network file access appliance in a network infrastructure to support the secure access and transfer of data between the file system of a client computer system and a network data store.
- An agent provided on the client computer system and monitored by the secure network file access appliance ensures authentication of the client computer system with respect to file system requests issued to the network data store.
- the secure network file access appliance is provided in the network infrastructure between the client computer system and network data store to apply qualifying access policies and selectively pass through to file system requests.
- the secure network file access appliance maintains an encryption key store and associates encryption keys with corresponding filesystem files to encrypt and decrypt file data as transferred to and read from the network data store through the secure network file access appliance.
- An advantage of the present invention is that the secure network file access appliance extends comprehensive authorization, access and security services from the user level down to the physical file storage level.
- Authorization protocol compliance on client systems is actively enforced as a prerequisite for file accesses subject to the security services provided by the secure network file access appliance.
- Authorized file access requests originating from an authorized application executed within an authorized session and process, are signed by the agent upon transmission to the secure network file access appliance.
- Multiple access policies are established to differentially qualify received file access requests, including verifying the agent signature to establish request authenticity and evaluating user and group permissions to establish file access rights.
- Access policies further define encryption and compression services that are applied to file data transmitted between the secure network file access appliance and network storage.
- Encryption of the network file data ensures the integrity of network file data while within the management scope of the secure network file access appliance.
- Authentication, access policy, and encryption and compression service exceptions are recognized as intrusion and tampering events that can be, subject to the applicable access policies, logged, issued as administrative alerts, and used as a basis for autonomous protection activities, such as blocking all file access requests from a client network address.
- the secure network file access appliance maintains a secure store of the security encryption keys and operates autonomously to associate the applicable encryption key with encrypted file data as retrieved from a network file store.
- Meta-data stored and retrieved automatically in association with the encrypted file data, provides a persistent encryption key identifier that is used to identify a correct encryption key for the file data.
- a further advantage of the present invention is that the authorization, access and security services performed by the secure network file access appliance are performed at wire-speed, enabling the full function of the secure network file access appliance to be transparent to the normal operation of both client systems and network storage systems.
- Data files, as encrypted by the secure network file access appliance are presented as conventional data files to the network storage system.
- the encryption of network data files is therefore transparent to network storage systems, permitting the network data files to be conventionally manipulated using existing management tools, including backup and restore utilities, yet without permitting compromise of the security of the data file content.
- Still another advantage of the present invention is that the secure network file access appliance can implement data compression in combination with encryption to minimize the bandwidth requirements of secure file transfers as well as the size of the secured file data as stored.
- the connection throughput necessary to maintain a hot-backup and the storage space necessary for progressive archival file backups are reduced.
- File data compression is accomplished with minimal degradation in the wire-speed operation of the secure network file access appliance.
- the secure network file access appliance is implemented as an infrastructure component, permitting easy integration in existing as well as new network systems.
- the secure network file access appliance particularly supports remote access to geographically distributed network storage systems.
- An additional layer of access security control is provided through the integral implementation of firewall filtering of the network connections, thereby supporting centrally managed and configurable protections against external access attacks as well as improper internal access attacks.
- FIG. 1 is a top level diagram illustrating the operating environment of a preferred embodiment of the present invention
- FIG. 2 is an architectural block diagram of a preferred, fixed scale appliance embodiment of the present invention
- FIG. 3 is an architectural block diagram of an alternate, highly-scalable appliance embodiment of the present invention.
- FIG. 4 is a process flow diagram illustrating the deep packet analysis processing provided in accordance with the present invention to support authentication and access qualification of client file oriented network requests directed to network storage resources;
- FIG. 5 provides a process interaction diagram showing the interoperation of client processes with an authentication agent executed by a client computer system
- FIG. 6 provides a process interaction diagram illustrating the preferred exposure of network storage resources provided in a preferred embodiment of the present invention to provide multiple qualified views of the underlying file data;
- FIG. 7 is a software block diagram illustrating the preferred components implementing network packet protocol processing in accordance with a preferred embodiment of the present invention.
- FIGS. 8 A-D illustrates the preferred decomposition of file data through the network packet protocol processing implemented in accordance with a preferred embodiment of the present invention
- FIG. 9 is a software block diagram illustrating an extended network packet protocol processing including firewall processing in accordance with a preferred embodiment of the present invention.
- FIGS. 10 A-B illustrate the process flow of a file system read request and response performed in accordance with a preferred embodiment of the present invention
- FIGS. 11 A-B illustrate the process flow of a file system file create request performed in accordance with a preferred embodiment of the present invention.
- FIGS. 12 A-B illustrate the process flow of a file system write request and response performed in accordance with a preferred embodiment of the present invention.
- a secure network file access appliance 12 is preferably implemented in the environment 10 within an intranet infrastructure 14 to operate as a communications channel between protected network storage resources 16 , such as a SAN 18 and network attached storage devices 20 , and client computer systems 22 , 24 .
- the secure network file access appliance 12 selectively encrypts, as determined by access policies implemented within the secure network file access appliance 12 , file data stored to the network storage resources 16 .
- the file data encryption maintains the logical file-oriented structure of the data and is thus transparent to the network storage resources 16 .
- the secure network file access appliance 12 preferably supports operation as an IP firewall, permitting the secure network file access appliance 12 to function as an exclusive infrastructure path through the intranet infrastructure 14 .
- Network and other servers 26 implemented as part of the infrastructure 14 between the secure network file access appliance 12 and network storage resources 16 or as part of a NAS resource 16 , 26 , are unaffected by the encryption function of the secure network file access appliance 12 , yet are secured against unauthorized access of the encrypted content.
- Actively used file data encryption keys are preferably held and managed within the secure network file access appliance 12 alone.
- Network accessible trusted agent systems providing conventional secure key archive services to the secure network file access appliance 12 , can be relied upon to provide long-term storage and support on-demand retrieval of keys.
- the encryption keys are not stored on or directly accessible in usable form from the network attached storage devices 20 or network servers 26 .
- the secure network file access appliance 12 processes file data read and write requests in aggregate at wire-speed and with minimal latency in qualifying the access privileges of each read, write, and related file access request, to selectively encrypt and decrypt file data transferred, and further selectively compress and decompress the transferred file data.
- the round-trip encryption of file data ensures that transfers to remote network storage resources 16 over unsecured networks including the Internet effectively remain secure. Round-trip compression substantially reduces the needed file data transfer bandwidth, particularly where the transfers are for repeated mass archival backups.
- Authentication controls are supported by the secure network file access appliance 12 as a complement to the access policy controls.
- authentication agent code is installed and executed on clients 22 , 24 to enable user and client authentication, including authentication over user sessions and processes.
- client 22 a user 28 may represent an individual or a remotely connected computer system utilizing the client 22 as a network file, Web, or application server, executing conventional user applications 30 supported by a conventional network capable operating system 32 .
- a modified file system 34 provides for selective authentication processing of file system requests directed to the network storage resources 16 , including through network servers 26 .
- the file system 34 is mounted through a file system switch facility supported by the operating system 32 against the directory nodes representing network storage resources 16 .
- Authentication logic provided in an agent program 36 executing largely if not exclusively in kernel space, is called in response to file system operations directed against the file system 34 .
- the agent program 36 has access to user, client, process, application, and session information. Where attended user authentication is required, the agent program 36 preferably interoperates through the operating system 32 to assert an authentication dialog for the user 30 .
- User responsive information can then be authenticated using standard authentication controls, such as LDAP and other network available authentication servers (not shown). Alternately, or in combination, the user authentication response information can be transmitted to the secure network file access appliance 12 for security qualification.
- Authentication of user applications 30 is performed autonomously through the agent program 36 .
- the agent program 36 Preferably in response to a first file system operation by a user application 30 , as received by the file system 34 , or on notice from the operating system 32 of the invocation of the user application 30 , the agent program 36 generates a secure hash identification of the loaded binary image of the user application 30 . This hash identifier and the application file attributes are then transmitted to the secure network file access appliance 12 for verification. An authentication response is returned to the agent program 36 providing verification status. A verification failure or other exception indicated by the secure network file access appliance 12 preferably results in a disallowance of the requested file system operation.
- Unattended execution of applications by a client 22 can be supported through the application authentication mechanism.
- an application launcher utility is scripted to execute on boot. Through application authentication of the utility, the absence of attended user authentication derived information is not treated as an exception by the secure network file access appliance 12 . The application launcher utility is then enabled to launch a designated application 30 .
- the state of user and application authentication, in combination with user session and associated process identifiers, is preferably maintained by the agent program 36 .
- this authentication information and the digital signature of the agent program 36 are combined and sent encrypted to the secure network file access appliance 12 with each file system request passed by the modified file system 34 .
- a network layer 38 including an NFS/CIFS network file system layer, modified to include the user and agent authentication information with file system requests, is used to communicate with the secure network file access appliance 12 .
- an NFS packet header field is extended, preferably by redefinition of an existing field, to store and transfer the user and agent authentication information.
- periodic or heartbeat status remote procedure call (RPC) packets are sent by the agent program 36 to the secure network file access appliance 12 reflecting the current state of the user and agent authentication information. Client changes relevant to authentication, including specifically terminations of processes and user sessions, are thereby rapidly noticed to the secure network file access appliance 12 .
- RPC remote procedure call
- the transport of file data between the secure network file access appliance 12 is generally secure where a client, such as client 22 , is part of the local infrastructure 14 . Where the transport extends to remote clients, such as client 24 , over an unsecure network, such as the Internet 40 , conventional transport security protocols can be transparently employed. As shown, a virtual private network 42 , can be utilized without interference with the authentication of users 30 in accordance with the present invention. Alternatively, or in addition, a secure network file access appliance 12 ′ can be deployed locally with respect to the remote client 24 , thereby securing the transport of file data effectively between the remote client 24 and network storage resources 16 .
- FIG. 2 A preferred, fixed scale, hardware platform 50 for the present invention is shown in FIG. 2.
- the platform 50 is preferably implemented on a motherboard supporting the Intel® E7500 chipset 52 , dual 2.2 GHz Intel® XeonTM processors 54 (Intel Corporation, Santa Clara, Calif.; www.intel.com), and a 1-Gbyte 200-MHz Double Data Rate (DDR) main memory array 56 .
- the chipset 52 supports six PCI-X buses 58 , individually capable of over 8-Gbps throughput and an aggregate throughput of at least 24-Gbps.
- a base configuration of three HiFnTM 7851 security processors 62 (Hifn, Inc., Los Gatos, Calif.; www.hifn.com) provides hardware accelerated encryption and compression support for the generic data processing and control function of the processors 54 .
- the security processors support symmetric programmable length block encryption algorithms, including 3-DES, at throughputs in excess of 400-Mbps per chip and programmable length block compression algorithms, including LZS, at throughputs in excess of 80 MBps.
- peripherals 70 including a BIOS program and boot hard disk drive, are supported though the chipset 52 to enable basic operation of the platform 50 .
- the platform 50 boots and runs a LinuxTM based operating system, based on a commercial distribution of Red HatTM Linux (Red Hat, Inc., Raleigh, N.C.; www.redhat.com).
- the software-based authentication and access functions of the secure network file access appliance 12 preferably load and execute in the Linux kernel space.
- Administrative and support utilities are preferably implemented as user-mode applications and daemons.
- FIG. 3 An alternate, high-throughput, scalable hardware platform 80 for the secure network file access appliance 12 is shown in FIG. 3.
- This scalable architecture is generally consistent with the architecture disclosed in Network Media Encryption Architecture and Methods for Secure Storage, Ser. No. 10/016,897, filed Dec. 3, 2001 by Pham et al., which is hereby incorporated by reference.
- multiple blade-based access processors 82 1-N each preferably implements a central processor executing an instance of an embedded Linux operating system.
- One or more encryption and compression security processors are provided on each blade as hardware acceleration engines.
- packet connections through a high-speed switch fabric 84 provide data paths to an ingress processor 86 and an egress processor 88 that serve as packet routers to 10 Gbps or higher throughput network infrastructure connections 90 , 92 .
- a control processor blade 94 manages and monitors the other blades 82 1-N , 88 , 90 .
- the control processor blade 94 supports the booting of the embedded operating system instances on the blades 82 1-N , 88 , 90 and coordinates the sharing of common encryption and compression configuration and control information between the access processor blades 82 1-N .
- a separate management network interface controller 96 is provided to enable independent access to the control processor 94 from the management network 98 .
- Inbound file requests are received as network data packets containing the various network file system messages implemented by a network distributed file system, such as the network file system (NFS) and common internet file system (CIFS). These network data packets are processed to expose the control information 114 contained in the protocol layers of each received data packet and the packet payload data 116 for examination and processing.
- NFS network file system
- CIFS common internet file system
- application and status information is gathered by an agent monitoring process 118 listening on a dedicated network port from network connected clients 22 , 24 .
- Client status information obtained from heartbeat network packets, is relayed to an authentication and access control process 120 .
- Continuity of a client heartbeat is used to maintain a client authorization session.
- User authentication session information minimally reflecting that a user authentication sequence mediated by the agent program 36 has completed successfully, can also be provided to the authentication and access control process 120 within the heartbeat data packets. Transmission of user authentication session information at checkpoint intervals serves to protect against conversion of any client process for the execution of unauthorized applications.
- authentication and access control process 120 operates directly as an authentication server
- user and client identifiers and user password acquired by the agent program 36 are relayed through the agent monitor process 118 .
- Authorization responses are generated and returned by the authentication and access control process 120 based on the user and client authentication policy information maintained by the authentication and access control process 120 .
- authentication enforcement is enabled by requiring a call to the agent program 36 in connection with the initialization of a new user process 132 .
- User authentication is performed directly by a user mode component of the agent program 36 through a conventional authentication service, such as LDAP, against a user login and password.
- a pluggable authentication module generally consistent with DCE/OSF-RFC 86.0 (Unified Login with Pluggable Authentication Modules (PAM); www.opengroup.org/tech/rfc/rfc86.0.html).
- the agent program 36 on authentication of the user, establishes an authenticated user session defined by the login process identifier (LPID), a user identifier (UID), and a group identifier (GID), as established by and obtained from the operating system 32 .
- LID login process identifier
- UID user identifier
- GID group identifier
- the authentication modified filesystem 34 receives file requests 134 issued by a user process 132 .
- a kernel mode portion of the agent program 36 operating in conjunction with the authentication modified filesystem 34 , determines the source process identifier for each file request 134 by accessing operating system 32 structures.
- the authenticated user session information maintained by the agent program 36 located by the determined process identifier, is then provided to the modified network layer 38 for inclusion in the network file system requests 134 as processed through the network layer 38 .
- Client processes 136 spawned from an authenticated process 132 remain part of the parent authenticated user session.
- the chain of parent process identifiers is traced by the agent program 36 to associate file requests 138 from child processes 136 with corresponding authenticated user sessions.
- both the authenticated user login parent process identifier (LPID) and the current process identifier (PID) are provided to the modified network layer for inclusion in the session and process corresponding file requests forwarded to the secure network file access appliance 12 .
- the authenticated user session information including a session identifier generated by the agent program 36
- the resulting extended NFS requests thus securely transport the session control information, including at least a session identifier, request source IP, user identifier, group identifier, and process identifiers to the secure network file access appliance 12 .
- the agent program 36 supports authentication of user applications 30 as loaded for execution in the authenticated user session processes 132 , 136 .
- Digitally signed applications loaded for execution can be verified conventionally by the agent program 36 against digital certificates obtained from a trusted PKI, LDAP or other authentication server.
- Application authentication information such as the identity of the authentication server and certificate, can be potentially included by the modified network layer 38 with the session information provided with corresponding file requests to support auditing of independently verified applications.
- Autonomous application authentication by the agent program 36 is also supported through the secure network file access appliance 12 .
- the agent program 36 On the loading of an application for execution in a process 132 , 136 , the agent program 36 is called and executes, through the operating system 32 , to locate 142 the application binary image and retrieve the application file attributes, including the application filename, path, permissions, and file size.
- a secure hash signature is generated for the application binary. In a preferred embodiment of the present invention, a 20-byte hash signature is generated using the SHA-1 algorithm.
- An application authentication request, containing the hash signature, file attributes and a secure application token is then passed to the secure network file access appliance 12 in an RPC directed to the agent monitoring process 118 .
- the secure application token preferably includes a public key, of a public/private key pair stored by the secure network file access appliance 12 or trusted third-party authentication server, an application name, and a structure containing a secure hash signature of the application binary image and the application file attributes encrypted with the public key.
- the token is prior administratively generated through the secure network file access appliance 12 or other trusted application authenticator against an administratively determined authentic application.
- the tokens for authenticated applications are stored on or otherwise made accessible to the clients 22 , 24 .
- the application file name located for the loaded binary image is used to further locate a corresponding token by the agent program 36 .
- the secure network file access appliance 12 compares the public key provided within the token against known valid public keys prior administratively registered with the secure network file access appliance 12 .
- the decrypted token hash signature and file attributes are verified against the hash signature and file attributes separately provided in the request by the agent program 36 and a return RPC communicates the verification status to the agent program 36 .
- the corresponding application process 132 , 136 can be terminated.
- subsequently received network file system requests 134 , 138 from an unauthorized application can be ignored or refused by the modified file system 34 .
- the application authentication provisions of the present invention can enforce explicit and functional limitations on user process execution to a well defined set of authenticated applications.
- packet control information 114 and application information 122 exposed by packet processing 112 and as received from the agent monitoring process 118 , is provided to the authentication and access control process 120 for each network file data packet received by the secure network file access appliance 12 .
- the authentication and access control process 120 includes a policy store representing the administratively determined, functionally supported operations of the secure network file access appliance 12 .
- the polices are preferably stored in a high-performance hash table permitting a policy lookup against the information 114 , 122 as presented to the authentication and access control process 120 .
- Audit logs of the file requests, as well as error logs and logs of refused operations are produced by the authentication and access control process 120 .
- IP layer data provides source and destination IPs, permitting specific access constrains to be defined against defined clients, individually or by subnets.
- the standard NFS/CIFS layer data provides the requesting user UID and GID, as well as the fully qualified file or directory reference, including generally a mount point, file system path, and applicable file name.
- the application information 122 layer identifies the user session and provides the execution and parent process identifiers. Where utilized, the application information 122 layer also provides the application name and signature. Successful discrimination of the policy sets against the provided information 114 , 122 enables and qualifies the processing of network file packets transported relative to the network storage resources 16 .
- the handling of the various possible types of policy set discrimination failures is defined by the policy sets.
- Discrimination failures will typically include user authorization failures and unauthorized application execution attempts, unauthorized source IP addresses, and improper file references due to unavailability of the referenced file or lack of adequate user, group or file permissions.
- the discrimination failure handling defined by the policy sets will direct the production of detailed audit and error log entries and immediate issuance of administrative alarms, including potentially the automated generation of email and voice messages.
- the policy set discrimination failure handling preferably further defines the type and content of any NFS/CIFS network file error data packets generated by of the NFS/CIFS state machine 124 and returned to a client 22 , 24 .
- the progressive discrimination of the policy sets also determines the active application of encryption and compression to the packet payload data 116 .
- any combination of data provided in the control information 114 , 122 can be utilized as a signature identifying whether the packet payload data is to be encrypted against a particular encryption key and compressed using a particular compression algorithm.
- a preferred basic policy set essentially defines the combinations of source IPs, user identifiers, and group identifiers permitted access through the mount point and, further, a default encryption key to be used, particularly for file creation.
- Multiple policy sets can be applicable to the some mount point, differing in the specification of source IPs, user identifiers, and group identifiers or by specification of additional control information, such as the path specification and file-type extension for the network file identified in the request.
- the policy sets are administratively managed to ensure that unique combinations of the provided control information resolve to distinct policy sets.
- path specification information is utilized to establish the scope of otherwise matching policy sets, a best match of the path specification, file name, and file extension is preferably used to discriminate the default applicability of data encryption and compression.
- Network file packets returned from network storage resources 16 are similarly processed 112 to expose the packet control information 114 and permit a combination of data to be considered in determining whether accompanying pocket payload data requires decompression and decryption. While, in accordance with the present invention, encrypted network data packets returned from the network storage resources 16 can be presumed secure, examination of the control information 114 through authentication and access processing 120 enables an appropriate authentication of the source and sequence of the returned network file packets.
- packet payload data presented to the secure network file access appliance 12 and determined to be encrypted or compressed is processed into a sequence of logical access blocks (LABs) through an encryption and compression process 126 .
- each logical access block is, in accordance with one preferred embodiment of the present invention, marked with at least an indirect identifier of the applicable encryption key and compression algorithm.
- the applicable encryption key and compression algorithm is determined based on the encryption and compression identifiers associated with the logical access blocks. Decryption and decompression of the logical access blocks are, therefore, not essentially dependent on the directory specification or other independently alterable aspects of the network file.
- Discrimination of applicable policy sets is, in accordance with the preferred embodiments of the present invention, expanded through the support by the secure network file access appliance 12 of multiple, inbound virtual mount points for the various network storage resources 16 .
- multiple virtualized mount points /dev/hd_a, /dev/hd_b, /dev/hd_c, and /dev/td_d may be defined administratively in the configuration of the secure network file access appliance 12 .
- These virtual mount points are independently associated through a defined mapping with the same, as by alias, or separate real mount points supported by various network storage resources 156 , 158 .
- Client 152 , 154 file requests to mount any of the virtual mount point represented network file systems can be qualified and constrained by policy sets that, at a minimum, serve to validate the existence of the virtual mount point and, optionally, further discriminate for a permitted mount request source IP.
- the virtual mount points further expand the ability to discriminate applicable access policy sets for the client 152 , 154 NFS/CIFS network file transactions.
- Control information 114 provided with each network file packet directed to the secure network file access appliance 12 identifies a target mount point.
- the authentication and access control process 120 logically selects an applicable policy set based on the identified virtual mount point.
- the further constraints represented by the selected policy set are concurrently used to determine how the network file data packet is to be processed. For example, otherwise authorized clients 152 , 154 accessing the network resource 156 through the /dev/hd_a virtual mount point may be constrained to read-only NFS/CIFS transactions.
- the separate policy set associated with the /dev/hd_b virtual mount point may support read-write access by only a well defined set of UIDs, further constrained to NFS/CIFS requests originating from a defined subnetwork.
- read-write access of the network storage resources 156 by the client 154 may be broadly supported through the virtual mount point /dev/hd_c.
- the policy set associated with the mount point /dev/hd_c preferably enables read-write access to the network storage resources 156 while disallowing decryption of previously encrypted files.
- the policy set for the virtual mount point /dev/td_d preferably provides for the encryption and compression of previously unencrypted files upon writing to the archival network storage resources 158 and for decryption and decompression on reading. Consequently, a user with limited backup access rights can fully administer the backup and restore of files without breach of the secure storage of previously encrypted files.
- distinguishing policy sets based on virtualized mount points provides an extensive degree of flexibility in managing the access rights of a community of clients 152 , 154 .
- Network file packets permitted or refused by operation of the authentication and access control process 120 are signaled to an NFS/CIFS state machine 124 , as shown in FIG. 4.
- the sequences of network file packets representing select file data transactions, including specifically NFS/CIFS transactions, are tracked by the NFS/CIFS state machine 124 , in accordance with the present invention, to support the selective encryption and compression of NFS/CIFS network packet transferred file data and manage the attendant changes in the size and structure of network files as stored by the network storage resources 16 .
- Mount and unmount request RPCs are essentially atomic operations between the clients 152 , 154 and the secure network file access appliance 12 .
- access is optionally determined by the authentication and access control process 120 based on the applicable policy set and a determination that the underlying network storage resource 16 identified with the corresponding real mount point is available.
- An RPC response acknowledging the success or failure of the mount or unmount request is then returned.
- the NFS/CIFS state machine 124 tracks the state of each NFS/CIFS transaction processed through the secure network file access appliance 12 .
- the principle NFS/CIFS transactions tracked include Read, Write, and Create. All other NFS/CIFS defined transactions (generically Requests) are also tracked by the NFS/CIFS state machine 124 .
- the Read transaction following from an inbound read request for file data defined by an offset and range, involves building a corresponding read request with the read offset adjusted back to an encryption and compression block boundary and the range adjusted to allow for the encryption and compression of the file data through to the end of a block boundary.
- the next states include issuing the read request to the network storage resources 16 , receiving a responsive series of network read file data packets, and processing, as needed, to decrypt and decompress the received packet payload data.
- the final read transaction states include extracting the read file data for the originally requested offset and range and building and returning one or more network file data packets with the read file data.
- An NFS/CIFS Write transaction requires a read/modify/write operation where existing stored file data is encrypted or compressed.
- a write transaction includes receiving a write request, building a lock request with a write lock offset adjusted back to an encryption and compression block boundary and the range adjusted to allow for the encryption and compression of the file data through to the end of a block boundary.
- the next transaction states include issuing a read request for any initial and final partial file data page including the adjusted write offset and range terminus, decrypting, decompressing and modifying the read data page to include the corresponding parts of the file write data as received from the client, encrypting and, as appropriate, compressing the file write data, and building and issuing corresponding write requests to the network storage resources 156 .
- the final write states include building and sending an unlock request to the network storage resources 156 and building and sending a write request reply to the client.
- NFS/CIFS Requests such as get and set attributes, get access permissions, and make directory, are generally atomic transactions managed by the secure network file access appliance 12 to support infrastructure compatibility with the network storage resources 156 .
- Request transactions involve receiving a client request and building and sending a corresponding request to the network storage resources 156 .
- requests response Upon receipt of a request response from the network storage resources 156 , adjustments are made for the reported file size and other attributes of the network file as stored on the network storage resources 156 depending on the particular request involved in the transaction.
- a corresponding request response is then constructed and sent to the client.
- An NFS/CIFS Create transaction involves receiving a file create request, constructing a file management header for the new file, and building and sending a corresponding request to the network storage resources 156 .
- a request response is again constructed and sent to the client.
- FIG. 7 provides a block diagram and flow representation of the software architecture 170 utilized in a preferred embodiment of the present invention.
- Inbound network communications are processed through a first network interface 172 .
- Network file data packets received from clients 22 , 24 are processed 174 to expose and deliver the network control information 114 for authentication processing 176 .
- Application control information 122 collected from corresponding agent applications 28 are provided through an agent interface 178 in support of the authentication processing 176 .
- the policy parser 180 Based on interactions with a policy parser 180 , selected elements of the network and application control information 114 , 122 are compared with authentication parameters maintained in a policy data store 182 .
- the policy parser 180 preferably implements decision tree logic to determine the level of authentication required for processing the network file request represented by the network file data packet received and whether that level of authentication has been met.
- the network and application control information 114 , 122 is also processed 184 to determine whether the authorized user is permitted access to the corresponding network storage resources 16 .
- the policy processor 180 and policy data store 182 operate to determine whether the access attributes provided with the network file request are appropriate to enable access to the specific network storage resources 16 identified by the network file request.
- a basic decision tree logic sequence considers the logical combination of network file operation requested, virtual mount point, target directory and file specification, client IP, user UID and GID, and the client session and process identifiers. Also considered is application authentication data provided with the network file request and as prior provided by the agent program 36 and the continuity state of the client session as periodically reported by the agent interface 178 . Additional state data accumulated in relation to the nature, timing, and frequency of network file access requests is considered.
- This state data is accumulated by the secure network file access appliance 12 to support static time scheduling and quota controls over network file access requests as well as dynamic traffic shaping of the network file access operations processed through the secure network file access appliance 12 .
- the accumulated state data also permits dynamic detection of patterns in file access requests that threshold qualify as intrusion attempts or other circumstances warranting issuance of an administrative alarm.
- the decision tree evaluation considers prior sequences of file access requests and thereby qualifies the permitted support of a current network file access request.
- Policy data is administratively established to define the set of virtual mount points and the mapping of virtual mount points to real mount points.
- the policy data can also variously define permitted client source IP ranges, whether application authentication is to be enforced as a prerequisite for client execution or operative response by the secure network file access appliance 12 , a limited, permitted set of authenticated digital signatures of execution or response enabled applications, whether user session authentication extends to spawned processes or processes with a different UID or GID, and other data that can be used to match or otherwise discriminate, in operation of the policy parser 180 , against the control information 114 , 122 .
- This administratively established policy data is logically accessed from the policy store 182 by the policy parser 180 in the evaluation of the network and application control information 114 , 122 .
- the decision tree logic and policy data are stored in a hash table permitting rapid evaluation of the network and application control information 114 , 122 .
- the network and application control information 114 , 122 , as well as the determined results of the authorization and access processing 176 , 184 are control inputs to an NFS/CIFS state machine process 186 .
- Non-file data messages including various NFS/CIFS request and reply messages involved in the read, write, and create NFS/CIFS transaction sequences, are prepared and forwarded 188 , 190 directly from the state machine process 186 to the inbound network interface 172 and an outbound network interface 192 .
- Policy data needed to support the generation of network file request and reply data packets, such as virtual to real mount point mapping data, is accessed from the policy data store 182 as needed.
- the packet payload data 116 is processed 194 into a sequence of logical access blocks (LABs), provided the network file data packet is qualified through access processing 184 for encryption or compression.
- the packet payload data 116 of unqualified network file data packets are processed 194 unchanged into network data packets and provided to the network interface 192 for transmission to the network storage resources 16 .
- the packet payload data of network file data packets corresponds to read and written portions of a file 220 recognized by a file system 36 .
- Individual packet payload data 222 is preferably processed 194 into a sequence of logical access blocks 224 1-N , as shown in FIG. 8 c with each logical access block containing a corresponding portion of the packet payload data 222 .
- the file management header 226 is virtualized for all files associated with a real mount point and locally stored by the platform 50 effectively as part of the policy data held by the policy store 182 .
- the applicable file management header is retrieved as part of the policy set applicable to the requested virtual mount point.
- the preferred embodiments of the present invention provide for the creation of a file management header 226 in connection with each Create file NFS/CIFS transaction.
- the file management header 226 is created and written to the network storage resources 16 effectively as the first file data block as part of the creation of the file 220 on the network storage resources 16 .
- One or more logical access blocks 224 can thereafter be appended to the file as created on the network storage resources 16 and, subsequently, read and written in random order.
- individual or subsets of logical access blocks 224 and the file management header 226 can be written to separate I/O pages within the same or different file spaces and storage devices. In either case, in accordance with the present invention, qualified file data reads and writes directed to the network storage resources 16 are performed as discrete, logical access block-aligned transfers encompassing the offset and range of a client network file data request.
- the file management header 226 and logical access blocks 224 are repackaged in network file data packets as otherwise ordinary blocks of file data for transport to the network storage resources 16 .
- the encryption and/or compression of network file data by secure network file access appliance 12 is thus entirely transparent to the reading and writing of relative to the network storage resources 16 by operation of the present invention.
- the file management header 226 includes a unique file GUID 228 , security parameter index (SPI) 230 , and a security signature 232 .
- the file GUID 228 is preferably a SHA-1-based secure hash of data related to the file, such as the client IP, user UID, and file creation time to provide a 160-bit unique random identifier for the file.
- the security parameter index 230 is preferably a composite of security information including an encryption key identifier (Key) 234 , a security options array (Idx) 236 , and file related information (Info) 238 .
- the encryption key identifier 234 is preferably an encrypted representation of the encryption key name utilized to encrypt the file data contained in the logical access blocks of the file 220 .
- Encryption key name/key value pairs are utilized by the secure network file access appliance 12 are administratively defined and stored in the policy data store 182 .
- an encryption key is associated with a new file, the corresponding encryption key name is securely digested, again preferably using the SHA-1 algorithm, and stored in the key identifier field 234 of the file management header 226 .
- the security parameter index 230 may optionally also include a linked list storing, in encrypted form, the encryption key value for the file 220 .
- Each entry in the linked list includes a public key, encrypted key value tuple.
- the public key corresponds to a trusted encryption key agent server and the encrypted key value is encrypted with the public key of the agent.
- the public key identified agent server can be used to recover the encrypted key value. Providing support for multiple independent agent servers ensures that the encrypted key value can always be recovered.
- the security options array 236 provides an indexed list of the security functions applied to the logical access blocks 224 associated with file management header 226 . These options preferably include identifiers of the whether encryption is used and the applicable encryption algorithm, whether compression is used and the applicable compression algorithm, whether the encryption key name lookup should be user or group based, whether an agent encrypted key list is present, and whether tamper detection through digital signature checking is to be enforced.
- the file related information 238 fields provide storage for various other information, such as a GUID corresponding to the file creator.
- the security signature 232 provides storage for a cyclic redundancy check (CRC) value and digital signature.
- CRC cyclic redundancy check
- the CRC value is preferably computed over the binary value of the preceding portions of the file management header 226 to permit block integrity checking.
- the digital signature is computed for the preceding portions of the file management header 226 including the CRC field to enable detection of tampering with any portion of the file management header 226 .
- a preferred in-band structure of logical access blocks 224 is also shown in FIG. 8D.
- the primary fields of a logical access block 224 include a LAB data field 240 , a LAB signature field 242 , and an optional LAB compression header 244 .
- the LAB data field 240 contains an encrypted and/or compressed portion of the packet payload data 222 .
- the size of the LAB data field 240 is nominally set as a multiple of a natural or convenient block size recognized by the file system 36 and further chosen for block encryption algorithm efficiency.
- segmentation of the packet payload data 222 into the logical access blocks 224 enables reasonably sized blocks of file data to be encrypted and compressed as atomic units. Smaller segments sizes are preferred for obtaining relatively efficient random read/write operations directed to the file 220 as stored by random access devices within the network storage resources 16 . Larger segment sizes are preferred for lower processing overhead, greater encryption and compression efficiency, and where the target device within the network strange resources 16 is a streaming access device, such as a conventional tape drive.
- the packet payload data 222 segment size has a block modulo of eight bytes with a minimum size of 512 bytes and a nominally preferred size of 1024 bytes for random access devices. For streaming access devices, larger block sizes on the order of 8096 bytes may be preferred.
- a smaller block size is used. This smaller block size is chosen to be the largest modulo eight byte block size that is the same or smaller than the size of the last segment. All but at most seven bytes of the last segment are then block encrypted. Any remaining segment bytes are then XORed with a mask value generated by the encryption of an eight-byte length, zero-value string and then appended to the block encrypted portion of the last segment.
- the LAB compression header 242 preferably included only where the packet payload segment held by the logical access block 224 is compressed, includes fields specifying the offset and range of the file data contained within the LAB data field 240 .
- the segment length or range of the packet payload data 222 stored in the LAB data field 240 is variable.
- the segment length is manipulated to obtain compressed data that closely approaches the preferred LAB data field size.
- Padding is provided to reach a modulo eight-byte encryption block compatible size.
- the range value identifies the actual compressed data carried in a completed logical access block 224 .
- the LAB signature 244 is preferably computed as a secure digest of the LAB data field 240 and, where present, the LAB compression header 242 .
- an SHA-1 algorithm is used to create the LAB signature 244 .
- the security of each logical access block 244 when retrieved to the secure network file access appliance 12 , can be assured against tampering by recomputing the secure digest of the LAB data field 240 , including any LAB compression header 242 , and comparing against the LAB signature 244 .
- network file data is stored as logical access blocks 224 containing only unencrypted, uncompressed LAB data 240 and LAB signatures 244 .
- an error correction trailer 246 is provided to store an ECC value computed over the LAB data field 240 , any LAB compression header 242 and the LAB signature 244 .
- ECC values are computed on creation of the logical access blocks 244 .
- the ECC value is used to correct bit errors that may occur as a consequence of extended network infrastructure transport of the logical access blocks 244 .
- bit errors may be introduced by network routers operating at the TCP layer and above. Such infrastructure induced bit errors are otherwise detected from the LAB signature 244 , but are then indistinguishable from data tampering.
- Use of the error correction field 246 serves to independently protect the integrity of the logical access blocks 244 .
- the file management header 226 and the headers 244 and trailers 242 , 246 of the logical access blocks 244 may be included in-band, or in-file, as generally represented in FIG. 8D, as part of the file 220 as ultimately stored by the network storage resources 16 .
- Different in-band layouts can also be used to optimize access to the logical access block data 240 .
- the file management header 226 , digital signatures 242 , and compression headers 244 can be collected into one or more in-band super blocks. The size of these super blocks and the remaining logical access block data 240 can be sized to optimize I/O performance of the network storage resources 16 .
- only the logical access block data 240 is stored by the network storage resources 16 in-band as the network file 220 .
- the file meta-data, including the management header 226 and the headers 244 and trailers 242 , 246 , corresponding to a network file 220 are stored in a separate, meta-data or shadow file. Any parallel storage structure that maintains the relationship between the shadow file and the in-band network file 220 may be used.
- the shadow files can be created and stored on the network resources 16 within the same storage space as the network files 220 , within a different storage space potentially physically remote from the network files 220 , or on the platform 50 provided the parallel association of the shadow files with the network files 220 is maintained.
- shadow files can be stored in the same directory with the counterpart network files 220 and identified by file names that are a defined permutation of the network file 220 file names.
- the shadow files can alternately be stored in a parallel directory structure diverging from a defined root or relative root node of the network storage resources 16 .
- the defined relationship between the shadow files and the corresponding network files 220 is determined and known to the secure network file access appliance 12 , which can ensure the parallel reading and writing of the shadow files with corresponding reading and writing of the network files 220 .
- the packet to LAB processing 194 preferably utilizes, as required, the hardware accelerators 62 to perform encryption 196 and compression 198 over the segments of packet payload data 222 .
- the logical access blocks 224 1-N together containing the packet payload data 222 of a network file data packet, are then collected into a new network file data packet and passed to the network interface 192 for transport to the networks storage resources 16 .
- Network file data packets received through the network interface 192 are similarly processed 200 to expose and deliver the network control information 114 for authentication and access processing 176 , 184 and logical access blocks 224 1-N contained in the packet payload data to a logical access block to packet data process 202 .
- the provision for authentication and access processing 176 , 184 permits even distributed, potentially client-based network storage devices to be equally secured and made accessible as other network storage resources 16 .
- minimal authentication and access processing 176 , 184 is performed for network file data packets received from dedicated network storage resources 16 .
- the logical access blocks 224 1-N received in the packet payload data are processed 202 to apply error correction, where the error correction field 246 is present, and validate the integrity of the LAB data fields 240 , including the LAB compression headers 244 if present, against the digital signature 242 values.
- the file management header 226 is read, typically in advance, by the NFS/CIFS state machine process 186 to obtain the encryption key identifier from the field 234 and compression algorithm identity, if applicable from the options index field 236 .
- the LAB data fields 240 are then decompressed 204 , if applicable, and decrypted 206 .
- the NFS/CIFS state machine process 186 based on the pending inbound file data read request transaction, identifies an offset and range-selected portion of the combined logical access block 224 1-N data representing client read requested data. The selected data is then incorporated into a network file data packet and provided to the network interface 172 for transport to the transaction identified client 22 , 24 .
- an administration interface 208 provides access to and configuration of the policy parser 180 and policy data store 182 .
- a network communications interface 210 provides access to the administration interface 208 independent of the inbound and outbound network interfaces 172 , 192 .
- the software architecture 170 is preferably extended, as shown in FIG. 9, to provide additional security appliance-oriented features.
- the extended architecture 250 includes IP filter layers 252 , 254 implementing firewall-type filtering for network connections made through the network interfaces 172 , 192 .
- a filter rules store 256 preferably maintains iptables-type specifications that define the IP addresses, network protocols, and internet ports permitted to pass network packets through the IP filter layers 252 , 254 .
- the IP filter layers 252 , 254 , and particularly the inbound IP filter layer 252 is set to reject all connections except those pertaining to network file access operations, including the NFS, CIFS, RPC, and mount protocols.
- IP filter layers 252 , 254 These network file data packets passed by the IP filter layers 252 , 254 are directed for packet/LAB processing 258 as performed by the software architecture 170 . Unauthorized connection attempts and access requests lacking adequate policy-based permissions are therefore preferentially received, detected, and audited by the software architecture 170 .
- the flexible analysis capabilities of the authentication and access controls 176 , 184 and policy parser 180 allows a more refined identification of potential abuse patterns and a wider variety of remedial actions, including dynamically blocking specific source IPs, logging detailed information, and issuing real-time administrative alerts.
- the security and reporting strength of the firewall filters 252 , 254 is appropriate for handling connection attempts unrelated to the primary functions of the secure network file access appliance 12 .
- the firewall filters 252 , 254 may also be utilized to proxy selected network data packets, including potentially network file data packets, through the secure network file access appliance 12 , utilizing a bypass route 260 . In the case of VPN 42 and network file access appliance 12 ′ designated source IP addresses and protocols can be identified and appropriately bypassed 260 .
- the firewall filters 252 , 254 are preferably implemented through the kernel execution of the operating system iptables module by the main processors 54 .
- the firewall filter layers 252 , 254 are preferably implemented on the ingress and egress processors 86 , 88 , with the bypass routed network packets being passed directly between the ingress and egress processors 86 , 88 .
- the filter rules maintained in the filter rules store 256 are administered through the administration interface 208 .
- FIG. 10A An NFS/CIFS read transaction 270 , structured in accordance with a preferred embodiment of the present invention, is shown graphically in FIG. 10A.
- a read target file consisting of a file management header 226 and a sequence of logical access blocks 224 1-N , exists on the network storage resources 16 .
- an inbound read request identifies an offset and range of data to read 272 .
- Outbound read requests are issued to read 274 , 276 the file management header 226 and an encompassing, block-aligned sequence of logical access blocks 224 A-X .
- the read request 276 retrieves the requested logical access blocks 224 A-X in a series of one or more network file data packets, which are then processed to complete the inbound read request by returning one or more network file data packets containing the read request data 272 .
- the specific processing 280 associated with an NFS/CIFS read transaction 270 is shown in FIG. 10B.
- the secure network file access appliance 12 on receiving a firewall-filtered file data read request, exposes 282 and parses 284 the network control information 114 against the policy rules and data 182 , 184 .
- a policy compliance failure is reported 286 by return issuance of an NFS/CIFS appropriate reply network data packet.
- the file related access control information is optionally read 288 from the network storage resources 16 to confirm existence of the file and evaluate applicable read data permissions. Where the permissions check is performed and fails, nonexistence of the file or inadequate permissions are reported 286 without issuing the read file request to the network storage resources 16 .
- the file meta-data including the file management header 226 for the request target file, is also read 288 from the network storage resource 16 .
- a block-aligned logical access block offset 290 and range 292 are determined and used to create and issue an outbound read request directed to the network storage resources 16 .
- the read data offset is adjusted to account for the size of the file management header 226 as stored at the beginning of the file. Where the logical access blocks 224 A-X contain compressed data, file data reads of the LAB compression headers 244 may be required to determine adjustments to both the read data offset and an encompassing read request range.
- error correction is applied 296 , depending on whether the LAB ECC field 246 is present, decrypted 298 utilizing the key associated with the key name determined from the key identifier field 234 of the file management header 226 , and decompressed 300 , depending on whether the file management header 226 includes the compression option and identifies a corresponding algorithm.
- the LAB digital signatures 242 are used to check the integrity of the retrieved file data.
- a failure of the integrity check for any of the logical access blocks 224 A-X may result in a re-reading of some or all of the logical access blocks 224 A-X , to protect against soft-errors, with persistent errors being ultimately reported by the return issuance of an NFS/CIFS appropriate error network data packet.
- both soft and persistent errors are logged by the secure network file access appliance 12 .
- Persistent errors, recognized through the operation of the NFS/CIFS state machine processing 186 of the inbound read request, are further preferably asserted against the policy parser 180 for evaluation and subsequently issued 302 as a tampering alert message through the administrative interface 208 .
- the file data identified in the inbound read request is assembled 304 into one or more reply network file dat packets and returned.
- An NFS/CIFS create file transaction 310 preferably operates to create a new file containing a new file management header 226 .
- a create file request process 320 initially exposes 322 and parses 324 the network control information 114 , with any policy compliance failures resulting in the return issuance of an NFS/CIFS appropriate reply network data packet.
- directory information is optionally read 328 from the network storage resources 16 to obtain the target file creation permissions. Where the permissions check is performed and fails, non-existence of the target directory and inadequate permissions are reported 326 without asserting a create file request to the network storage resources 16 .
- a file management header 226 is then created 330 .
- the policy parser 180 based on the stored values provided from the policy data store 182 , generates and provides the necessary values for the security parameter index 230 .
- the policy parser 180 preferably associates encryption keys and compression choices against directory specifications, including mount points.
- the target location of the file to be created is utilized to determine whether encryption and compression are to be applied and the applicable key and algorithms for implementation.
- a secure identifier based on the key name and compression and compression algorithm identifiers are computed and stored in the new file management header 226 along with computed CRC and signature values.
- the NFS/CIFS state machine 186 next provides for the creation and issuance 332 of an NFS/CIFS create file request to the network storage resources 16 utilizing the directory specification provided by the inbound create file request.
- an NFS/CIFS file write request containing the file management header 226 , is then created and issued 334 to the network storage resources 16 .
- an NFS/CIFS file create and write requests are created and issued 334 to the network storage resources 16 to create the shadow file.
- an NFS/CIFS appropriate create file reply network data packet is returned to the client.
- An NFS/CIFS write transaction 340 structured in accordance with a preferred embodiment of the present invention, is shown graphically in FIG. 12A.
- the write of file data to an existing file in the network storage resources 16 uses a read, modify, write procedure.
- An inbound write data request specifies an offset and range of write data 342 that is provided in a transaction sequence of one or more network file data packets. In most instances, the write request data will be unaligned to the logical access blocks 224 1-N existing in the stored file.
- the file management header 226 and any partially overlapped logical access blocks 224 A , 224 X are preemptively read 344 , 346 , 348 , permitting the overlapped logical access blocks 224 A , 224 X to be decrypted and decompressed as required.
- An overlay of the inbound write data 342 with the block-aligned read data is then performed.
- the resulting block-aligned write data is then processed into logical access blocks 224 A-X and written 350 in a write transaction sequence of one or more network file data packets to the network storage resources 16 .
- the preferred process 360 of performing an NFS/CIFS write request transaction is shown in FIG. 12B.
- the received write file data request is received and processed 362 to expose the network control information 114 .
- This information is then parsed 364 against the established policies 180 , 182 , with any compliance failures being reported 386 .
- the network control information 114 is then further processed 368 to identify the target file stored by the network storage resources 16 , create and issue read requests to obtain the file meta-data, including the file management header 226 .
- the logical access block offset and range are then determined 370 , 372 , adjusting as needed for the presence of the file management header 226 and compression of the logical access block 224 contained data.
- a file lock is asserted against the range logical access blocks 224 A-X .
- the initial and terminal logical access blocks 224 A , 224 X are read 374 from the network storage resources 16 , corrected 376 if the LAB ECC field 246 is present, decrypted 378 , and decompressed 380 , as needed. Integrity failure errors are reported 382 .
- Data from the terminal logical access blocks 224 A , 224 X are merged 384 with the write data 342 and the combined data is resegmented 386 , compressed 388 as appropriate, and encrypted 390 .
- LAB ECC values are computed and added 392 to the assembled 394 series of logical access blocks 224 A-X .
- the logical access blocks 224 A-X are assembled, one or more write network file data packets are constructed and sent to the network storage resources 16 . Once the writing the logical access blocks 224 A-X has completed, the file lock is released.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- Storage Device Security (AREA)
- Computer And Data Communications (AREA)
Abstract
A secure network file access appliance supports the secure access and transfer of data between the file system of a client computer system and a network data store. An agent provided on the client computer system and monitored by the secure network file access appliance ensures authentication of the client computer system with respect to file system requests issued to the network data store. The secure network file access appliance is provided in the network infrastructure with the client computer system and network data store to apply qualifying access policies to file system requests. The secure network file access appliance maintains an encryption key store and associates encryption keys with corresponding filesystem files to permit encryption and decryption of file data as transferred to and read from the network data store.
Description
- This application is a continuation of U.S. patent application Ser. No. 10/201,406, filed Jul. 22, 2002, now U.S. Pat. No. ______.
- 1. Field of the Invention
- The present invention is generally related to network infrastructure devices supporting network access to remotely stored data and, in particular, a secure network system utilizing an infrastructure appliance to provide authentication, access, compression and encryption controls over remote file data stores.
- 2. Description of the Related Art
- The use and concomitant evolution of network information systems continues to grow at a substantial pace. Organizations of all sizes, though particularly larger, typically corporate environments, are producing and redeploying information at increasing rates as part of the fundamental business processes implemented by those organizations. In a typical scenario, such as encountered in many parts of the financial, scientific, and manufacturing industries, various files detailing transactions are routinely created and centrally stored for individual and aggregate processing. This same information is then routinely redeployed for interactive use by captive customer service representatives, select component and service suppliers, and often for limited end user access through typically Web-based network interfaces. File stores that measure in the range of tens to hundreds of terabytes are commonplace.
- As an initial matter, the growth in the volume and need for wide accessibility of information is reflected in increasing interest in network attached storage (NAS) and storage area networks (SANs). These technologies support a network-based storage architecture that enables a fundamental independence between the various client, application and network server systems used to access and process stored data and the expansion, configuration, and management of large data storage systems. Other fundamental capabilities provided by network-based storage architectures include the ability to geographically distribute and, further, replicate the data stores, which permit remote data backup and hot fail-over of typically business and real-time transaction processing storage systems.
- While the many enabling capabilities of network-based storage architectures are of substantial value, issues of authentication, access control, and security over the stored data remain. Indeed, the ubiquitous data accessibility inherently afforded by network-based storage architectures is commonly viewed as greatly exacerbating the problems of assuring authentication, access, and security control. The network transport costs associated with delivering and accessing remotely stored data is also recognized as a significant problem.
- Conventional direct attached storage (DAS) architectures, involving application and network servers with dedicated, locally attached storage arrays, have evolved various forms of authentication, access and security controls to protect stored data. These controls run from basic operating system password authentication and access permission attributes to smart cards and physical access barriers. The successive layering of these controls can be used to progressively harden the underlying direct-attached storage.
- While some of the conventional protection controls remain generally applicable to network-based storage architectures, many are, as a practical matter, ineffective. In network-based storage architectures, the storage accessing application servers are typically remotely distributed, which generally precludes any assurance that authorization, access, and security controls are not intentionally or inadvertently circumvented. Even fewer assurances exist for the remotely distributed client computer systems permitted access to the network shared with the network storage.
- The vulnerabilities of conventional network-based storage architectures are appreciated and, as a result, have significantly limited the rapid adoption of NAS and SAN technologies. Other technologies, such as virtual private networking (VPN), are useful in overcoming certain of the limitations of network-based storage architectures. VPNs support a robust encryption of data in transport between the endpoint systems within a VPN session. Thus, conventional VPNs can be used to provide point-to-point security over data transported between various client computer systems, application servers, and the network storage systems.
- VPN and similar technologies, however, fail to support any meaningful access controls or assure the continuing security of data once delivered to a VPN endpoint system. The underlying protocols were simply not designed to provide or enforce storage-type access controls. VPN data, while encrypted and secure during transport, is delivered to a VPN host endpoint subject only to the access controls implemented by the host. The data is also delivered unencrypted and thus again subject only to the security controls provided by the host.
- Other technologies can be potentially employed to layer general access and security controls onto the secure transport capabilities of VPN and similar technologies. Various standard protocols, such as the Kerberos protocol (web.mit.edu/kerberos/www/) and the Lightweight Directory Access Protocol (LDAP; www.openldap.org) can be utilized to differing degrees to provide secure authentication, directory services, and access controls. Encrypting file systems can be utilized to secure file data as stored. Together, these technologies can provide for a well-hardened storage of data within a network-based storage architecture. Considering the requisite separate administration of these technology layers over disparate client computer systems and application servers, however, makes assuring that data is properly subject to rigorously enforced authentication, access and security controls practically impossible.
- Consequently, there remains a fundamental, unsolved tension between ensuring only properly secure access to network-based stored data and enabling appropriate widespread access to the data in fulfillment of business process requirements.
- Thus, a general purpose of the present invention is to provide an efficient network-based storage architecture utilizing a wire-speed infrastructure appliance as a managed portal between client computer systems and network storage for the coordinated control over authentication, access, encryption and compression of data transferred to network connected data storage.
- This is achieved in the present invention by providing a secure network file access appliance in a network infrastructure to support the secure access and transfer of data between the file system of a client computer system and a network data store. An agent provided on the client computer system and monitored by the secure network file access appliance ensures authentication of the client computer system with respect to file system requests issued to the network data store. The secure network file access appliance is provided in the network infrastructure between the client computer system and network data store to apply qualifying access policies and selectively pass through to file system requests. The secure network file access appliance maintains an encryption key store and associates encryption keys with corresponding filesystem files to encrypt and decrypt file data as transferred to and read from the network data store through the secure network file access appliance.
- An advantage of the present invention is that the secure network file access appliance extends comprehensive authorization, access and security services from the user level down to the physical file storage level. Authorization protocol compliance on client systems is actively enforced as a prerequisite for file accesses subject to the security services provided by the secure network file access appliance. Authorized file access requests, originating from an authorized application executed within an authorized session and process, are signed by the agent upon transmission to the secure network file access appliance. Multiple access policies are established to differentially qualify received file access requests, including verifying the agent signature to establish request authenticity and evaluating user and group permissions to establish file access rights. Access policies further define encryption and compression services that are applied to file data transmitted between the secure network file access appliance and network storage. Encryption of the network file data, including the transparent storage of the encrypted file data by the network storage system, ensures the integrity of network file data while within the management scope of the secure network file access appliance. Authentication, access policy, and encryption and compression service exceptions are recognized as intrusion and tampering events that can be, subject to the applicable access policies, logged, issued as administrative alerts, and used as a basis for autonomous protection activities, such as blocking all file access requests from a client network address.
- Another advantage of the present invention is that the secure network file access appliance maintains a secure store of the security encryption keys and operates autonomously to associate the applicable encryption key with encrypted file data as retrieved from a network file store. Meta-data, stored and retrieved automatically in association with the encrypted file data, provides a persistent encryption key identifier that is used to identify a correct encryption key for the file data.
- A further advantage of the present invention is that the authorization, access and security services performed by the secure network file access appliance are performed at wire-speed, enabling the full function of the secure network file access appliance to be transparent to the normal operation of both client systems and network storage systems. Data files, as encrypted by the secure network file access appliance, are presented as conventional data files to the network storage system. The encryption of network data files is therefore transparent to network storage systems, permitting the network data files to be conventionally manipulated using existing management tools, including backup and restore utilities, yet without permitting compromise of the security of the data file content.
- Still another advantage of the present invention is that the secure network file access appliance can implement data compression in combination with encryption to minimize the bandwidth requirements of secure file transfers as well as the size of the secured file data as stored. The connection throughput necessary to maintain a hot-backup and the storage space necessary for progressive archival file backups are reduced. File data compression is accomplished with minimal degradation in the wire-speed operation of the secure network file access appliance.
- Yet another advantage of the present invention is that the secure network file access appliance is implemented as an infrastructure component, permitting easy integration in existing as well as new network systems. The secure network file access appliance particularly supports remote access to geographically distributed network storage systems. An additional layer of access security control is provided through the integral implementation of firewall filtering of the network connections, thereby supporting centrally managed and configurable protections against external access attacks as well as improper internal access attacks.
- These and other advantages and features of the present invention will become better understood upon consideration of the following detailed description of the invention when considered in connection with the accompanying drawings, in which like reference numerals designate like parts throughout the figures thereof, and wherein:
- FIG. 1 is a top level diagram illustrating the operating environment of a preferred embodiment of the present invention;
- FIG. 2 is an architectural block diagram of a preferred, fixed scale appliance embodiment of the present invention;
- FIG. 3 is an architectural block diagram of an alternate, highly-scalable appliance embodiment of the present invention;
- FIG. 4 is a process flow diagram illustrating the deep packet analysis processing provided in accordance with the present invention to support authentication and access qualification of client file oriented network requests directed to network storage resources;
- FIG. 5 provides a process interaction diagram showing the interoperation of client processes with an authentication agent executed by a client computer system;
- FIG. 6 provides a process interaction diagram illustrating the preferred exposure of network storage resources provided in a preferred embodiment of the present invention to provide multiple qualified views of the underlying file data;
- FIG. 7 is a software block diagram illustrating the preferred components implementing network packet protocol processing in accordance with a preferred embodiment of the present invention;
- FIGS.8A-D illustrates the preferred decomposition of file data through the network packet protocol processing implemented in accordance with a preferred embodiment of the present invention;
- FIG. 9 is a software block diagram illustrating an extended network packet protocol processing including firewall processing in accordance with a preferred embodiment of the present invention;
- FIGS.10A-B illustrate the process flow of a file system read request and response performed in accordance with a preferred embodiment of the present invention;
- FIGS.11A-B illustrate the process flow of a file system file create request performed in accordance with a preferred embodiment of the present invention; and
- FIGS.12A-B illustrate the process flow of a file system write request and response performed in accordance with a preferred embodiment of the present invention.
- Secure network file access appliances, implemented in accordance with the present invention, can be effectively utilized in a wide variety of network infrastructure configurations. An
exemplary infrastructure environment 10 is shown in FIG. 1. A secure networkfile access appliance 12 is preferably implemented in theenvironment 10 within anintranet infrastructure 14 to operate as a communications channel between protectednetwork storage resources 16, such as aSAN 18 and network attachedstorage devices 20, andclient computer systems file access appliance 12 selectively encrypts, as determined by access policies implemented within the secure networkfile access appliance 12, file data stored to thenetwork storage resources 16. In accordance with the present invention, the file data encryption maintains the logical file-oriented structure of the data and is thus transparent to thenetwork storage resources 16. Furthermore, the secure networkfile access appliance 12 preferably supports operation as an IP firewall, permitting the secure networkfile access appliance 12 to function as an exclusive infrastructure path through theintranet infrastructure 14. - Network and
other servers 26 implemented as part of theinfrastructure 14 between the secure networkfile access appliance 12 andnetwork storage resources 16 or as part of aNAS resource file access appliance 12, yet are secured against unauthorized access of the encrypted content. Actively used file data encryption keys are preferably held and managed within the secure networkfile access appliance 12 alone. Network accessible trusted agent systems, providing conventional secure key archive services to the secure networkfile access appliance 12, can be relied upon to provide long-term storage and support on-demand retrieval of keys. The encryption keys are not stored on or directly accessible in usable form from the network attachedstorage devices 20 ornetwork servers 26. - Preferably, the secure network
file access appliance 12 processes file data read and write requests in aggregate at wire-speed and with minimal latency in qualifying the access privileges of each read, write, and related file access request, to selectively encrypt and decrypt file data transferred, and further selectively compress and decompress the transferred file data. The round-trip encryption of file data ensures that transfers to remotenetwork storage resources 16 over unsecured networks including the Internet effectively remain secure. Round-trip compression substantially reduces the needed file data transfer bandwidth, particularly where the transfers are for repeated mass archival backups. - Implementation of comprehensive access policy controls at the secure network
file access appliance 12, essentially independent though additive to those of thenetwork storage resources 16 andfile servers 26, enables centralized file data access management. The access permissions and other controls implemented by thenetwork storage resources 16 andfile servers 26 are difficult to globally maintain through additions and reconfigurations of the network attachedstorage devices 20 due to the typically remote and distributed nature of thenetwork storage resources 16 andfile servers 26. The access policy controls provided by the secure networkfile access appliance 12 are significantly more comprehensive, flexible, and administratively uniform than conventional access permissions implemented by the variousnetwork storage resources 16. - Authentication controls are supported by the secure network
file access appliance 12 as a complement to the access policy controls. For the preferred embodiments of the present invention, authentication agent code is installed and executed onclients client 22, auser 28 may represent an individual or a remotely connected computer system utilizing theclient 22 as a network file, Web, or application server, executingconventional user applications 30 supported by a conventional networkcapable operating system 32. - A modified
file system 34 provides for selective authentication processing of file system requests directed to thenetwork storage resources 16, including throughnetwork servers 26. For the preferred embodiments of the present invention, thefile system 34 is mounted through a file system switch facility supported by theoperating system 32 against the directory nodes representingnetwork storage resources 16. Authentication logic provided in anagent program 36, executing largely if not exclusively in kernel space, is called in response to file system operations directed against thefile system 34. Through theoperating system 32, theagent program 36 has access to user, client, process, application, and session information. Where attended user authentication is required, theagent program 36 preferably interoperates through theoperating system 32 to assert an authentication dialog for theuser 30. User responsive information can then be authenticated using standard authentication controls, such as LDAP and other network available authentication servers (not shown). Alternately, or in combination, the user authentication response information can be transmitted to the secure networkfile access appliance 12 for security qualification. - Authentication of
user applications 30 is performed autonomously through theagent program 36. Preferably in response to a first file system operation by auser application 30, as received by thefile system 34, or on notice from theoperating system 32 of the invocation of theuser application 30, theagent program 36 generates a secure hash identification of the loaded binary image of theuser application 30. This hash identifier and the application file attributes are then transmitted to the secure networkfile access appliance 12 for verification. An authentication response is returned to theagent program 36 providing verification status. A verification failure or other exception indicated by the secure networkfile access appliance 12 preferably results in a disallowance of the requested file system operation. - Unattended execution of applications by a
client 22, such as on booting of theclient 22, can be supported through the application authentication mechanism. Preferably, an application launcher utility is scripted to execute on boot. Through application authentication of the utility, the absence of attended user authentication derived information is not treated as an exception by the secure networkfile access appliance 12. The application launcher utility is then enabled to launch a designatedapplication 30. - The state of user and application authentication, in combination with user session and associated process identifiers, is preferably maintained by the
agent program 36. In the preferred embodiments of the present invention, this authentication information and the digital signature of theagent program 36 are combined and sent encrypted to the secure networkfile access appliance 12 with each file system request passed by the modifiedfile system 34. Anetwork layer 38, including an NFS/CIFS network file system layer, modified to include the user and agent authentication information with file system requests, is used to communicate with the secure networkfile access appliance 12. In the preferred embodiment, an NFS packet header field is extended, preferably by redefinition of an existing field, to store and transfer the user and agent authentication information. Additionally, periodic or heartbeat status remote procedure call (RPC) packets are sent by theagent program 36 to the secure networkfile access appliance 12 reflecting the current state of the user and agent authentication information. Client changes relevant to authentication, including specifically terminations of processes and user sessions, are thereby rapidly noticed to the secure networkfile access appliance 12. - The transport of file data between the secure network
file access appliance 12 is generally secure where a client, such asclient 22, is part of thelocal infrastructure 14. Where the transport extends to remote clients, such asclient 24, over an unsecure network, such as theInternet 40, conventional transport security protocols can be transparently employed. As shown, a virtualprivate network 42, can be utilized without interference with the authentication ofusers 30 in accordance with the present invention. Alternatively, or in addition, a secure networkfile access appliance 12′ can be deployed locally with respect to theremote client 24, thereby securing the transport of file data effectively between theremote client 24 andnetwork storage resources 16. - A preferred, fixed scale,
hardware platform 50 for the present invention is shown in FIG. 2. Theplatform 50 is preferably implemented on a motherboard supporting the Intel® E7500 chipset 52, dual 2.2 GHz Intel® Xeon™ processors 54 (Intel Corporation, Santa Clara, Calif.; www.intel.com), and a 1-Gbyte 200-MHz Double Data Rate (DDR)main memory array 56. Thechipset 52 supports six PCI-X buses 58, individually capable of over 8-Gbps throughput and an aggregate throughput of at least 24-Gbps. A basic configuration of two 1-Gbps network interface controllers, supporting ingress and egress network connections, and one 10/100 Mbps network interface controller, supporting a management network connection, are connected to the PCI-X bus 58. A base configuration of three HiFn™ 7851 security processors 62 (Hifn, Inc., Los Gatos, Calif.; www.hifn.com) provides hardware accelerated encryption and compression support for the generic data processing and control function of theprocessors 54. The security processors support symmetric programmable length block encryption algorithms, including 3-DES, at throughputs in excess of 400-Mbps per chip and programmable length block compression algorithms, including LZS, at throughputs in excess of 80 MBps. -
Other peripherals 70, including a BIOS program and boot hard disk drive, are supported though thechipset 52 to enable basic operation of theplatform 50. Preferably, theplatform 50 boots and runs a Linux™ based operating system, based on a commercial distribution of Red Hat™ Linux (Red Hat, Inc., Raleigh, N.C.; www.redhat.com). The software-based authentication and access functions of the secure networkfile access appliance 12 preferably load and execute in the Linux kernel space. Administrative and support utilities are preferably implemented as user-mode applications and daemons. - An alternate, high-throughput,
scalable hardware platform 80 for the secure networkfile access appliance 12 is shown in FIG. 3. This scalable architecture is generally consistent with the architecture disclosed in Network Media Encryption Architecture and Methods for Secure Storage, Ser. No. 10/016,897, filed Dec. 3, 2001 by Pham et al., which is hereby incorporated by reference. In brief, multiple blade-based access processors 82 1-N each preferably implements a central processor executing an instance of an embedded Linux operating system. One or more encryption and compression security processors are provided on each blade as hardware acceleration engines. In place of the directnetwork interface connections 62, packet connections through a high-speed switch fabric 84 provide data paths to aningress processor 86 and an egress processor 88 that serve as packet routers to 10 Gbps or higher throughputnetwork infrastructure connections - A
control processor blade 94 manages and monitors theother blades 82 1-N, 88, 90. Thecontrol processor blade 94 supports the booting of the embedded operating system instances on theblades 82 1-N, 88, 90 and coordinates the sharing of common encryption and compression configuration and control information between the access processor blades 82 1-N. A separate managementnetwork interface controller 96 is provided to enable independent access to thecontrol processor 94 from themanagement network 98. - The logical control and protocol processing functions implemented in the control programs executed on a
platform 50 for a preferred embodiment of the present invention are shown in FIG. 4. Inbound file requests are received as network data packets containing the various network file system messages implemented by a network distributed file system, such as the network file system (NFS) and common internet file system (CIFS). These network data packets are processed to expose thecontrol information 114 contained in the protocol layers of each received data packet and thepacket payload data 116 for examination and processing. - Additionally, application and status information is gathered by an
agent monitoring process 118 listening on a dedicated network port from network connectedclients access control process 120. Continuity of a client heartbeat is used to maintain a client authorization session. User authentication session information, minimally reflecting that a user authentication sequence mediated by theagent program 36 has completed successfully, can also be provided to the authentication andaccess control process 120 within the heartbeat data packets. Transmission of user authentication session information at checkpoint intervals serves to protect against conversion of any client process for the execution of unauthorized applications. Where the authentication andaccess control process 120 operates directly as an authentication server, user and client identifiers and user password acquired by theagent program 36 are relayed through theagent monitor process 118. Authorization responses are generated and returned by the authentication andaccess control process 120 based on the user and client authentication policy information maintained by the authentication andaccess control process 120. - In reference to FIG. 5, authentication enforcement is enabled by requiring a call to the
agent program 36 in connection with the initialization of anew user process 132. User authentication is performed directly by a user mode component of theagent program 36 through a conventional authentication service, such as LDAP, against a user login and password. Alternately, user authentication can be direct through a pluggable authentication module generally consistent with DCE/OSF-RFC 86.0 (Unified Login with Pluggable Authentication Modules (PAM); www.opengroup.org/tech/rfc/rfc86.0.html). In either case, theagent program 36, on authentication of the user, establishes an authenticated user session defined by the login process identifier (LPID), a user identifier (UID), and a group identifier (GID), as established by and obtained from theoperating system 32. - The authentication modified
filesystem 34 receives file requests 134 issued by auser process 132. A kernel mode portion of theagent program 36, operating in conjunction with the authentication modifiedfilesystem 34, determines the source process identifier for eachfile request 134 by accessingoperating system 32 structures. The authenticated user session information maintained by theagent program 36, located by the determined process identifier, is then provided to the modifiednetwork layer 38 for inclusion in the network file system requests 134 as processed through thenetwork layer 38. - Client processes136 spawned from an authenticated
process 132 remain part of the parent authenticated user session. The chain of parent process identifiers is traced by theagent program 36 to associate file requests 138 fromchild processes 136 with corresponding authenticated user sessions. Preferably, to support access management at the level of individual processes, both the authenticated user login parent process identifier (LPID) and the current process identifier (PID) are provided to the modified network layer for inclusion in the session and process corresponding file requests forwarded to the secure networkfile access appliance 12. - In a preferred embodiment of the present invention, the authenticated user session information, including a session identifier generated by the
agent program 36, is encrypted using a session key obtained through a secure key exchange with theagent monitoring process 118. The resulting extended NFS requests thus securely transport the session control information, including at least a session identifier, request source IP, user identifier, group identifier, and process identifiers to the secure networkfile access appliance 12. - Preferably, the
agent program 36 supports authentication ofuser applications 30 as loaded for execution in the authenticated user session processes 132, 136. Digitally signed applications loaded for execution can be verified conventionally by theagent program 36 against digital certificates obtained from a trusted PKI, LDAP or other authentication server. Application authentication information, such as the identity of the authentication server and certificate, can be potentially included by the modifiednetwork layer 38 with the session information provided with corresponding file requests to support auditing of independently verified applications. - Autonomous application authentication by the
agent program 36 is also supported through the secure networkfile access appliance 12. On the loading of an application for execution in aprocess agent program 36 is called and executes, through theoperating system 32, to locate 142 the application binary image and retrieve the application file attributes, including the application filename, path, permissions, and file size. A secure hash signature is generated for the application binary. In a preferred embodiment of the present invention, a 20-byte hash signature is generated using the SHA-1 algorithm. An application authentication request, containing the hash signature, file attributes and a secure application token, is then passed to the secure networkfile access appliance 12 in an RPC directed to theagent monitoring process 118. The secure application token preferably includes a public key, of a public/private key pair stored by the secure networkfile access appliance 12 or trusted third-party authentication server, an application name, and a structure containing a secure hash signature of the application binary image and the application file attributes encrypted with the public key. The token is prior administratively generated through the secure networkfile access appliance 12 or other trusted application authenticator against an administratively determined authentic application. The tokens for authenticated applications are stored on or otherwise made accessible to theclients agent program 36. - On presentation of an application authentication request, the secure network
file access appliance 12 compares the public key provided within the token against known valid public keys prior administratively registered with the secure networkfile access appliance 12. The decrypted token hash signature and file attributes are verified against the hash signature and file attributes separately provided in the request by theagent program 36 and a return RPC communicates the verification status to theagent program 36. Where the loaded application fails authentication, thecorresponding application process file system 34. Thus, within an otherwise authenticated user session, the application authentication provisions of the present invention can enforce explicit and functional limitations on user process execution to a well defined set of authenticated applications. - Referring again to FIG. 4,
packet control information 114 andapplication information 122, exposed bypacket processing 112 and as received from theagent monitoring process 118, is provided to the authentication andaccess control process 120 for each network file data packet received by the secure networkfile access appliance 12. Preferably, the authentication andaccess control process 120 includes a policy store representing the administratively determined, functionally supported operations of the secure networkfile access appliance 12. The polices are preferably stored in a high-performance hash table permitting a policy lookup against theinformation access control process 120. Audit logs of the file requests, as well as error logs and logs of refused operations are produced by the authentication andaccess control process 120. - Policy sets applicable to a received network file packet can be progressively discriminated based on any of the data provided in the
packet control information 114. In particular, IP layer data provides source and destination IPs, permitting specific access constrains to be defined against defined clients, individually or by subnets. The standard NFS/CIFS layer data provides the requesting user UID and GID, as well as the fully qualified file or directory reference, including generally a mount point, file system path, and applicable file name. Theapplication information 122 layer identifies the user session and provides the execution and parent process identifiers. Where utilized, theapplication information 122 layer also provides the application name and signature. Successful discrimination of the policy sets against the providedinformation network storage resources 16. - Preferably, the handling of the various possible types of policy set discrimination failures is defined by the policy sets. Discrimination failures will typically include user authorization failures and unauthorized application execution attempts, unauthorized source IP addresses, and improper file references due to unavailability of the referenced file or lack of adequate user, group or file permissions. Depending on the nature of the failure, the discrimination failure handling defined by the policy sets will direct the production of detailed audit and error log entries and immediate issuance of administrative alarms, including potentially the automated generation of email and voice messages. The policy set discrimination failure handling preferably further defines the type and content of any NFS/CIFS network file error data packets generated by of the NFS/
CIFS state machine 124 and returned to aclient - In accordance with the present invention, the progressive discrimination of the policy sets also determines the active application of encryption and compression to the
packet payload data 116. For inbound network file data packets fromclients control information - Network file packets returned from
network storage resources 16 are similarly processed 112 to expose thepacket control information 114 and permit a combination of data to be considered in determining whether accompanying pocket payload data requires decompression and decryption. While, in accordance with the present invention, encrypted network data packets returned from thenetwork storage resources 16 can be presumed secure, examination of thecontrol information 114 through authentication andaccess processing 120 enables an appropriate authentication of the source and sequence of the returned network file packets. - Preferably, packet payload data presented to the secure network
file access appliance 12 and determined to be encrypted or compressed is processed into a sequence of logical access blocks (LABs) through an encryption andcompression process 126. As part of the encryption andcompression process 126, each logical access block is, in accordance with one preferred embodiment of the present invention, marked with at least an indirect identifier of the applicable encryption key and compression algorithm. Thus, while the decompression and decryption status of outbound network data packets may be suggested by a source directory specification, the applicable encryption key and compression algorithm is determined based on the encryption and compression identifiers associated with the logical access blocks. Decryption and decompression of the logical access blocks are, therefore, not essentially dependent on the directory specification or other independently alterable aspects of the network file. - Discrimination of applicable policy sets is, in accordance with the preferred embodiments of the present invention, expanded through the support by the secure network
file access appliance 12 of multiple, inbound virtual mount points for the variousnetwork storage resources 16. As shown in FIG. 6, multiple virtualized mount points /dev/hd_a, /dev/hd_b, /dev/hd_c, and /dev/td_d may be defined administratively in the configuration of the secure networkfile access appliance 12. These virtual mount points are independently associated through a defined mapping with the same, as by alias, or separate real mount points supported by variousnetwork storage resources Client - In accordance with the present invention, the virtual mount points further expand the ability to discriminate applicable access policy sets for the
client Control information 114 provided with each network file packet directed to the secure networkfile access appliance 12 identifies a target mount point. In accordance with the preferred embodiments of the present invention, the authentication andaccess control process 120 logically selects an applicable policy set based on the identified virtual mount point. The further constraints represented by the selected policy set are concurrently used to determine how the network file data packet is to be processed. For example, otherwise authorizedclients network resource 156 through the /dev/hd_a virtual mount point may be constrained to read-only NFS/CIFS transactions. The separate policy set associated with the /dev/hd_b virtual mount point may support read-write access by only a well defined set of UIDs, further constrained to NFS/CIFS requests originating from a defined subnetwork. - As another example, read-write access of the
network storage resources 156 by theclient 154, administratively limited to providing backup services, may be broadly supported through the virtual mount point /dev/hd_c. The policy set associated with the mount point /dev/hd_c preferably enables read-write access to thenetwork storage resources 156 while disallowing decryption of previously encrypted files. The policy set for the virtual mount point /dev/td_d preferably provides for the encryption and compression of previously unencrypted files upon writing to the archivalnetwork storage resources 158 and for decryption and decompression on reading. Consequently, a user with limited backup access rights can fully administer the backup and restore of files without breach of the secure storage of previously encrypted files. Thus, distinguishing policy sets based on virtualized mount points provides an extensive degree of flexibility in managing the access rights of a community ofclients - Network file packets permitted or refused by operation of the authentication and
access control process 120 are signaled to an NFS/CIFS state machine 124, as shown in FIG. 4. The sequences of network file packets representing select file data transactions, including specifically NFS/CIFS transactions, are tracked by the NFS/CIFS state machine 124, in accordance with the present invention, to support the selective encryption and compression of NFS/CIFS network packet transferred file data and manage the attendant changes in the size and structure of network files as stored by thenetwork storage resources 16. Mount and unmount request RPCs are essentially atomic operations between theclients file access appliance 12. On receipt of a mount request, access is optionally determined by the authentication andaccess control process 120 based on the applicable policy set and a determination that the underlyingnetwork storage resource 16 identified with the corresponding real mount point is available. An RPC response acknowledging the success or failure of the mount or unmount request is then returned. - The NFS/
CIFS state machine 124 tracks the state of each NFS/CIFS transaction processed through the secure networkfile access appliance 12. The principle NFS/CIFS transactions tracked include Read, Write, and Create. All other NFS/CIFS defined transactions (generically Requests) are also tracked by the NFS/CIFS state machine 124. The Read transaction, following from an inbound read request for file data defined by an offset and range, involves building a corresponding read request with the read offset adjusted back to an encryption and compression block boundary and the range adjusted to allow for the encryption and compression of the file data through to the end of a block boundary. The next states include issuing the read request to thenetwork storage resources 16, receiving a responsive series of network read file data packets, and processing, as needed, to decrypt and decompress the received packet payload data. The final read transaction states include extracting the read file data for the originally requested offset and range and building and returning one or more network file data packets with the read file data. - An NFS/CIFS Write transaction requires a read/modify/write operation where existing stored file data is encrypted or compressed. A write transaction includes receiving a write request, building a lock request with a write lock offset adjusted back to an encryption and compression block boundary and the range adjusted to allow for the encryption and compression of the file data through to the end of a block boundary. The next transaction states include issuing a read request for any initial and final partial file data page including the adjusted write offset and range terminus, decrypting, decompressing and modifying the read data page to include the corresponding parts of the file write data as received from the client, encrypting and, as appropriate, compressing the file write data, and building and issuing corresponding write requests to the
network storage resources 156. The final write states include building and sending an unlock request to thenetwork storage resources 156 and building and sending a write request reply to the client. - NFS/CIFS Requests, such as get and set attributes, get access permissions, and make directory, are generally atomic transactions managed by the secure network
file access appliance 12 to support infrastructure compatibility with thenetwork storage resources 156. Request transactions involve receiving a client request and building and sending a corresponding request to thenetwork storage resources 156. Upon receipt of a request response from thenetwork storage resources 156, adjustments are made for the reported file size and other attributes of the network file as stored on thenetwork storage resources 156 depending on the particular request involved in the transaction. A corresponding request response is then constructed and sent to the client. - An NFS/CIFS Create transaction involves receiving a file create request, constructing a file management header for the new file, and building and sending a corresponding request to the
network storage resources 156. Upon receipt of a request response from thenetwork storage resources 156, a corresponding request response is again constructed and sent to the client. - FIG. 7 provides a block diagram and flow representation of the
software architecture 170 utilized in a preferred embodiment of the present invention. Inbound network communications are processed through afirst network interface 172. Network file data packets received fromclients network control information 114 forauthentication processing 176.Application control information 122 collected fromcorresponding agent applications 28 are provided through anagent interface 178 in support of theauthentication processing 176. - Based on interactions with a
policy parser 180, selected elements of the network andapplication control information policy data store 182. Thepolicy parser 180 preferably implements decision tree logic to determine the level of authentication required for processing the network file request represented by the network file data packet received and whether that level of authentication has been met. - The network and
application control information network storage resources 16. Thepolicy processor 180 andpolicy data store 182 operate to determine whether the access attributes provided with the network file request are appropriate to enable access to the specificnetwork storage resources 16 identified by the network file request. - While logically separate operations, the authentication and
access processing agent program 36 and the continuity state of the client session as periodically reported by theagent interface 178. Additional state data accumulated in relation to the nature, timing, and frequency of network file access requests is considered. This state data is accumulated by the secure networkfile access appliance 12 to support static time scheduling and quota controls over network file access requests as well as dynamic traffic shaping of the network file access operations processed through the secure networkfile access appliance 12. The accumulated state data also permits dynamic detection of patterns in file access requests that threshold qualify as intrusion attempts or other circumstances warranting issuance of an administrative alarm. The decision tree evaluation considers prior sequences of file access requests and thereby qualifies the permitted support of a current network file access request. - Policy data is administratively established to define the set of virtual mount points and the mapping of virtual mount points to real mount points. The policy data can also variously define permitted client source IP ranges, whether application authentication is to be enforced as a prerequisite for client execution or operative response by the secure network
file access appliance 12, a limited, permitted set of authenticated digital signatures of execution or response enabled applications, whether user session authentication extends to spawned processes or processes with a different UID or GID, and other data that can be used to match or otherwise discriminate, in operation of thepolicy parser 180, against thecontrol information policy store 182 by thepolicy parser 180 in the evaluation of the network andapplication control information application control information - The network and
application control information access processing state machine process 186. Non-file data messages, including various NFS/CIFS request and reply messages involved in the read, write, and create NFS/CIFS transaction sequences, are prepared and forwarded 188, 190 directly from thestate machine process 186 to theinbound network interface 172 and anoutbound network interface 192. Policy data needed to support the generation of network file request and reply data packets, such as virtual to real mount point mapping data, is accessed from thepolicy data store 182 as needed. - Where ordinary network file data is included in a network file data packet inbound from a
client packet payload data 116 is processed 194 into a sequence of logical access blocks (LABs), provided the network file data packet is qualified through access processing 184 for encryption or compression. Thepacket payload data 116 of unqualified network file data packets are processed 194 unchanged into network data packets and provided to thenetwork interface 192 for transmission to thenetwork storage resources 16. - As represented in FIG. 8A, the packet payload data of network file data packets corresponds to read and written portions of a
file 220 recognized by afile system 36. Individualpacket payload data 222, generally as shown in FIG. 8B, is preferably processed 194 into a sequence of logical access blocks 224 1-N, as shown in FIG. 8c with each logical access block containing a corresponding portion of thepacket payload data 222. In an initial embodiment of the present invention, thefile management header 226 is virtualized for all files associated with a real mount point and locally stored by theplatform 50 effectively as part of the policy data held by thepolicy store 182. The applicable file management header is retrieved as part of the policy set applicable to the requested virtual mount point. The preferred embodiments of the present invention provide for the creation of afile management header 226 in connection with each Create file NFS/CIFS transaction. In one embodiment, thefile management header 226 is created and written to thenetwork storage resources 16 effectively as the first file data block as part of the creation of thefile 220 on thenetwork storage resources 16. One or more logical access blocks 224 can thereafter be appended to the file as created on thenetwork storage resources 16 and, subsequently, read and written in random order. Alternately, to optimize the storage and retrieval of data with respect to thenetwork storage resources 16, individual or subsets of logical access blocks 224 and thefile management header 226 can be written to separate I/O pages within the same or different file spaces and storage devices. In either case, in accordance with the present invention, qualified file data reads and writes directed to thenetwork storage resources 16 are performed as discrete, logical access block-aligned transfers encompassing the offset and range of a client network file data request. - The
file management header 226 and logical access blocks 224 are repackaged in network file data packets as otherwise ordinary blocks of file data for transport to thenetwork storage resources 16. The encryption and/or compression of network file data by secure networkfile access appliance 12 is thus entirely transparent to the reading and writing of relative to thenetwork storage resources 16 by operation of the present invention. - A preferred structure of the
file management header 226 is shown in FIG. 8D and further detailed in Table I below. Preferably, thefile management header 226 includes aunique file GUID 228, security parameter index (SPI) 230, and asecurity signature 232. Thefile GUID 228 is preferably a SHA-1-based secure hash of data related to the file, such as the client IP, user UID, and file creation time to provide a 160-bit unique random identifier for the file. Thesecurity parameter index 230 is preferably a composite of security information including an encryption key identifier (Key) 234, a security options array (Idx) 236, and file related information (Info) 238. - The encryption
key identifier 234 is preferably an encrypted representation of the encryption key name utilized to encrypt the file data contained in the logical access blocks of thefile 220. Encryption key name/key value pairs are utilized by the secure networkfile access appliance 12 are administratively defined and stored in thepolicy data store 182. When, as a product ofaccess processing 184, an encryption key is associated with a new file, the corresponding encryption key name is securely digested, again preferably using the SHA-1 algorithm, and stored in thekey identifier field 234 of thefile management header 226. - The
security parameter index 230 may optionally also include a linked list storing, in encrypted form, the encryption key value for thefile 220. Each entry in the linked list includes a public key, encrypted key value tuple. The public key corresponds to a trusted encryption key agent server and the encrypted key value is encrypted with the public key of the agent. On retrieval of the network file data by a different secure networkfile access appliance 12′, the public key identified agent server can be used to recover the encrypted key value. Providing support for multiple independent agent servers ensures that the encrypted key value can always be recovered.TABLE I Management Header Structure Struct MGT_BLOCK { U32 File_GUID[5]; // 160-bit unique random GUID for File U32 Mgt_Hdr_Ver; // 32-bit version identifier for this structure U32 Size_Mgt_Blk; // Size of the management block structure U32 Options[]; // Option include // --IntegrityMode: to compare digital signatures // --OutOfBand: out-of-band meta-data used // --CypherName: encryption algorithm ID // --ComprName: compression algorithm ID // --UserEncryption: Key_GUID is a user key // --GroupEncryption: Key_GUID is a group key // --HaveKeys: has list of agent encrypted keys U32 Key_GUID[5]; // 160-bit GUID for Key, generated by // SHA-1 (KeyName) U32 Creator_GUID[5]; // 160-bit GUID identifying the file creator BYTE Init_Vector[8]; // Initial seed value for LAB encryption; // encryption seeds are a function of // Init_Vector + LAB Offset U32 Padding[]; U32 CRC; // To verify management header block integrity BYTE Signature[128]; // Signature, signed with PrivKey for // PublicKey_Verify Pre-computed. // Signs only static part of the structure to // avoid overhead on each file under the same // volume/policy. CRC is signed as the last part // so that changing to any part of the whole // block is detected. *Key_Table // Linked list of Public Key, agent encrypted // LAB Symmetric Key tuples } - The
security options array 236 provides an indexed list of the security functions applied to the logical access blocks 224 associated withfile management header 226. These options preferably include identifiers of the whether encryption is used and the applicable encryption algorithm, whether compression is used and the applicable compression algorithm, whether the encryption key name lookup should be user or group based, whether an agent encrypted key list is present, and whether tamper detection through digital signature checking is to be enforced. The filerelated information 238 fields provide storage for various other information, such as a GUID corresponding to the file creator. - Finally, the
security signature 232 provides storage for a cyclic redundancy check (CRC) value and digital signature. The CRC value is preferably computed over the binary value of the preceding portions of thefile management header 226 to permit block integrity checking. The digital signature is computed for the preceding portions of thefile management header 226 including the CRC field to enable detection of tampering with any portion of thefile management header 226. - A preferred in-band structure of logical access blocks224 is also shown in FIG. 8D. The primary fields of a logical access block 224 include a
LAB data field 240, aLAB signature field 242, and an optionalLAB compression header 244. TheLAB data field 240 contains an encrypted and/or compressed portion of thepacket payload data 222. The size of theLAB data field 240 is nominally set as a multiple of a natural or convenient block size recognized by thefile system 36 and further chosen for block encryption algorithm efficiency. - In accordance with the present invention, segmentation of the
packet payload data 222 into the logical access blocks 224 enables reasonably sized blocks of file data to be encrypted and compressed as atomic units. Smaller segments sizes are preferred for obtaining relatively efficient random read/write operations directed to thefile 220 as stored by random access devices within thenetwork storage resources 16. Larger segment sizes are preferred for lower processing overhead, greater encryption and compression efficiency, and where the target device within the networkstrange resources 16 is a streaming access device, such as a conventional tape drive. Preferably, thepacket payload data 222 segment size has a block modulo of eight bytes with a minimum size of 512 bytes and a nominally preferred size of 1024 bytes for random access devices. For streaming access devices, larger block sizes on the order of 8096 bytes may be preferred. - Where the last segment of the
packet payload data 222 is less than the nominally preferred segment size, a smaller block size is used. This smaller block size is chosen to be the largest modulo eight byte block size that is the same or smaller than the size of the last segment. All but at most seven bytes of the last segment are then block encrypted. Any remaining segment bytes are then XORed with a mask value generated by the encryption of an eight-byte length, zero-value string and then appended to the block encrypted portion of the last segment. - The
LAB compression header 242, preferably included only where the packet payload segment held by the logical access block 224 is compressed, includes fields specifying the offset and range of the file data contained within theLAB data field 240. Dependent on the underlying data values and the stream compression algorithm applied, the segment length or range of thepacket payload data 222 stored in theLAB data field 240 is variable. The segment length is manipulated to obtain compressed data that closely approaches the preferred LAB data field size. Padding is provided to reach a modulo eight-byte encryption block compatible size. At a minimum, the range value identifies the actual compressed data carried in a completed logical access block 224. - The
LAB signature 244 is preferably computed as a secure digest of theLAB data field 240 and, where present, theLAB compression header 242. In the preferred embodiments of the present invention, an SHA-1 algorithm is used to create theLAB signature 244. The security of eachlogical access block 244, when retrieved to the secure networkfile access appliance 12, can be assured against tampering by recomputing the secure digest of theLAB data field 240, including anyLAB compression header 242, and comparing against theLAB signature 244. For a preferred variant of the present invention, network file data is stored as logical access blocks 224 containing only unencrypted,uncompressed LAB data 240 andLAB signatures 244. While the efficiency of random access over network file data is maintained, modifications potentially due to improper tampering with the contents of the network file are nonetheless detectable on an individual logical access block 224 level. The conventional necessity of reading the entire network file to compute a secure digest to detect tampering is not required. - In an alternate embodiment of the present invention, an
error correction trailer 246 is provided to store an ECC value computed over theLAB data field 240, anyLAB compression header 242 and theLAB signature 244. ECC values are computed on creation of the logical access blocks 244. Upon retrieval of logical access blocks 244, the ECC value is used to correct bit errors that may occur as a consequence of extended network infrastructure transport of the logical access blocks 244. In particular, bit errors may be introduced by network routers operating at the TCP layer and above. Such infrastructure induced bit errors are otherwise detected from theLAB signature 244, but are then indistinguishable from data tampering. Use of theerror correction field 246 serves to independently protect the integrity of the logical access blocks 244. - The
file management header 226 and theheaders 244 andtrailers file 220 as ultimately stored by thenetwork storage resources 16. Different in-band layouts can also be used to optimize access to the logicalaccess block data 240. Thefile management header 226,digital signatures 242, andcompression headers 244 can be collected into one or more in-band super blocks. The size of these super blocks and the remaining logicalaccess block data 240 can be sized to optimize I/O performance of thenetwork storage resources 16. - Alternately, and potentially preferred, only the logical
access block data 240 is stored by thenetwork storage resources 16 in-band as thenetwork file 220. The file meta-data, including themanagement header 226 and theheaders 244 andtrailers network file 220 are stored in a separate, meta-data or shadow file. Any parallel storage structure that maintains the relationship between the shadow file and the in-band network file 220 may be used. The shadow files can be created and stored on thenetwork resources 16 within the same storage space as the network files 220, within a different storage space potentially physically remote from the network files 220, or on theplatform 50 provided the parallel association of the shadow files with the network files 220 is maintained. For example, shadow files can be stored in the same directory with the counterpart network files 220 and identified by file names that are a defined permutation of thenetwork file 220 file names. The shadow files can alternately be stored in a parallel directory structure diverging from a defined root or relative root node of thenetwork storage resources 16. In either case, the defined relationship between the shadow files and the corresponding network files 220 is determined and known to the secure networkfile access appliance 12, which can ensure the parallel reading and writing of the shadow files with corresponding reading and writing of the network files 220. - Referring again to FIG. 7, the packet to
LAB processing 194 preferably utilizes, as required, thehardware accelerators 62 to performencryption 196 andcompression 198 over the segments ofpacket payload data 222. The logical access blocks 224 1-N, together containing thepacket payload data 222 of a network file data packet, are then collected into a new network file data packet and passed to thenetwork interface 192 for transport to thenetworks storage resources 16. - Network file data packets received through the
network interface 192 are similarly processed 200 to expose and deliver thenetwork control information 114 for authentication andaccess processing packet data process 202. The provision for authentication andaccess processing network storage resources 16. In the preferred embodiments of the present invention, minimal authentication andaccess processing network storage resources 16. - The logical access blocks224 1-N received in the packet payload data are processed 202 to apply error correction, where the
error correction field 246 is present, and validate the integrity of the LAB data fields 240, including theLAB compression headers 244 if present, against thedigital signature 242 values. Thefile management header 226 is read, typically in advance, by the NFS/CIFSstate machine process 186 to obtain the encryption key identifier from thefield 234 and compression algorithm identity, if applicable from theoptions index field 236. The LAB data fields 240 are then decompressed 204, if applicable, and decrypted 206. The NFS/CIFSstate machine process 186, based on the pending inbound file data read request transaction, identifies an offset and range-selected portion of the combined logical access block 224 1-N data representing client read requested data. The selected data is then incorporated into a network file data packet and provided to thenetwork interface 172 for transport to the transaction identifiedclient - For the preferred embodiments of the present invention, an
administration interface 208 provides access to and configuration of thepolicy parser 180 andpolicy data store 182. Anetwork communications interface 210 provides access to theadministration interface 208 independent of the inbound and outbound network interfaces 172, 192. - The
software architecture 170 is preferably extended, as shown in FIG. 9, to provide additional security appliance-oriented features. Theextended architecture 250 includes IP filter layers 252, 254 implementing firewall-type filtering for network connections made through the network interfaces 172, 192. A filter rules store 256 preferably maintains iptables-type specifications that define the IP addresses, network protocols, and internet ports permitted to pass network packets through the IP filter layers 252, 254. Preferably, the IP filter layers 252, 254, and particularly the inboundIP filter layer 252, is set to reject all connections except those pertaining to network file access operations, including the NFS, CIFS, RPC, and mount protocols. These network file data packets passed by the IP filter layers 252, 254 are directed for packet/LAB processing 258 as performed by thesoftware architecture 170. Unauthorized connection attempts and access requests lacking adequate policy-based permissions are therefore preferentially received, detected, and audited by thesoftware architecture 170. - The flexible analysis capabilities of the authentication and
access controls policy parser 180, particularly based on access to the full set ofcontrol information file access appliance 12. The firewall filters 252, 254 may also be utilized to proxy selected network data packets, including potentially network file data packets, through the secure networkfile access appliance 12, utilizing abypass route 260. In the case ofVPN 42 and networkfile access appliance 12′ designated source IP addresses and protocols can be identified and appropriately bypassed 260. - For the fixed scale,
hardware platform 50, the firewall filters 252, 254 are preferably implemented through the kernel execution of the operating system iptables module by themain processors 54. On thescalable hardware platform 80, the firewall filter layers 252, 254 are preferably implemented on the ingress andegress processors 86, 88, with the bypass routed network packets being passed directly between the ingress andegress processors 86, 88. The filter rules maintained in the filter rules store 256 are administered through theadministration interface 208. - An NFS/CIFS read
transaction 270, structured in accordance with a preferred embodiment of the present invention, is shown graphically in FIG. 10A. A read target file, consisting of afile management header 226 and a sequence of logical access blocks 224 1-N, exists on thenetwork storage resources 16. In general, an inbound read request identifies an offset and range of data to read 272. Outbound read requests are issued to read 274, 276 thefile management header 226 and an encompassing, block-aligned sequence of logical access blocks 224 A-X. The readrequest 276 retrieves the requested logical access blocks 224 A-X in a series of one or more network file data packets, which are then processed to complete the inbound read request by returning one or more network file data packets containing the readrequest data 272. - The
specific processing 280 associated with an NFS/CIFS readtransaction 270 is shown in FIG. 10B. The secure networkfile access appliance 12, on receiving a firewall-filtered file data read request, exposes 282 and parses 284 thenetwork control information 114 against the policy rules anddata - Where the read request complies with the defined policy requirements, the file related access control information is optionally read288 from the
network storage resources 16 to confirm existence of the file and evaluate applicable read data permissions. Where the permissions check is performed and fails, nonexistence of the file or inadequate permissions are reported 286 without issuing the read file request to thenetwork storage resources 16. The file meta-data, including thefile management header 226 for the request target file, is also read 288 from thenetwork storage resource 16. A block-aligned logical access block offset 290 andrange 292 are determined and used to create and issue an outbound read request directed to thenetwork storage resources 16. The read data offset is adjusted to account for the size of thefile management header 226 as stored at the beginning of the file. Where the logical access blocks 224 A-X contain compressed data, file data reads of theLAB compression headers 244 may be required to determine adjustments to both the read data offset and an encompassing read request range. - As the requested logical access blocks224 A-X are received 294, error correction is applied 296, depending on whether the
LAB ECC field 246 is present, decrypted 298 utilizing the key associated with the key name determined from thekey identifier field 234 of thefile management header 226, and decompressed 300, depending on whether thefile management header 226 includes the compression option and identifies a corresponding algorithm. The LABdigital signatures 242 are used to check the integrity of the retrieved file data. A failure of the integrity check for any of the logical access blocks 224 A-X may result in a re-reading of some or all of the logical access blocks 224 A-X, to protect against soft-errors, with persistent errors being ultimately reported by the return issuance of an NFS/CIFS appropriate error network data packet. Preferably, both soft and persistent errors are logged by the secure networkfile access appliance 12. Persistent errors, recognized through the operation of the NFS/CIFSstate machine processing 186 of the inbound read request, are further preferably asserted against thepolicy parser 180 for evaluation and subsequently issued 302 as a tampering alert message through theadministrative interface 208. Finally, as file data is received and processed in response to the outbound read request, the file data identified in the inbound read request is assembled 304 into one or more reply network file dat packets and returned. - An NFS/CIFS create
file transaction 310, as shown graphically in FIG. 11A, preferably operates to create a new file containing a newfile management header 226. As further detailed in FIG. 11B, a createfile request process 320 initially exposes 322 and parses 324 thenetwork control information 114, with any policy compliance failures resulting in the return issuance of an NFS/CIFS appropriate reply network data packet. Provided the file create request complies with the defined policy requirements, directory information is optionally read 328 from thenetwork storage resources 16 to obtain the target file creation permissions. Where the permissions check is performed and fails, non-existence of the target directory and inadequate permissions are reported 326 without asserting a create file request to thenetwork storage resources 16. - A
file management header 226 is then created 330. Through operation of the NFS/CIFSstate machine processing 186, thepolicy parser 180, based on the stored values provided from thepolicy data store 182, generates and provides the necessary values for thesecurity parameter index 230. In particular, thepolicy parser 180 preferably associates encryption keys and compression choices against directory specifications, including mount points. Thus, the target location of the file to be created is utilized to determine whether encryption and compression are to be applied and the applicable key and algorithms for implementation. A secure identifier based on the key name and compression and compression algorithm identifiers are computed and stored in the newfile management header 226 along with computed CRC and signature values. - The NFS/
CIFS state machine 186 next provides for the creation andissuance 332 of an NFS/CIFS create file request to thenetwork storage resources 16 utilizing the directory specification provided by the inbound create file request. For in-band storage of thefile management header 226, an NFS/CIFS file write request, containing thefile management header 226, is then created and issued 334 to thenetwork storage resources 16. Where a shadow meta-data file is designated for use, an NFS/CIFS file create and write requests, the latter containing thefile management header 226, are created and issued 334 to thenetwork storage resources 16 to create the shadow file. Finally, an NFS/CIFS appropriate create file reply network data packet is returned to the client. - An NFS/
CIFS write transaction 340, structured in accordance with a preferred embodiment of the present invention, is shown graphically in FIG. 12A. The write of file data to an existing file in thenetwork storage resources 16 uses a read, modify, write procedure. An inbound write data request specifies an offset and range ofwrite data 342 that is provided in a transaction sequence of one or more network file data packets. In most instances, the write request data will be unaligned to the logical access blocks 224 1-N existing in the stored file. Thefile management header 226 and any partially overlapped logical access blocks 224 A, 224 X are preemptively read 344, 346, 348, permitting the overlapped logical access blocks 224 A, 224 X to be decrypted and decompressed as required. An overlay of theinbound write data 342 with the block-aligned read data is then performed. The resulting block-aligned write data is then processed into logical access blocks 224 A-X and written 350 in a write transaction sequence of one or more network file data packets to thenetwork storage resources 16. - The
preferred process 360 of performing an NFS/CIFS write request transaction is shown in FIG. 12B. The received write file data request is received and processed 362 to expose thenetwork control information 114. This information is then parsed 364 against the establishedpolicies network control information 114 is then further processed 368 to identify the target file stored by thenetwork storage resources 16, create and issue read requests to obtain the file meta-data, including thefile management header 226. The logical access block offset and range are then determined 370, 372, adjusting as needed for the presence of thefile management header 226 and compression of the logical access block 224 contained data. A file lock is asserted against the range logical access blocks 224 A-X. The initial and terminal logical access blocks 224 A, 224 X are read 374 from thenetwork storage resources 16, corrected 376 if theLAB ECC field 246 is present, decrypted 378, and decompressed 380, as needed. Integrity failure errors are reported 382. Data from the terminal logical access blocks 224 A, 224 X are merged 384 with thewrite data 342 and the combined data is resegmented 386, compressed 388 as appropriate, and encrypted 390. As applicable, LAB ECC values are computed and added 392 to the assembled 394 series of logical access blocks 224 A-X. As the logical access blocks 224 A-X are assembled, one or more write network file data packets are constructed and sent to thenetwork storage resources 16. Once the writing the logical access blocks 224 A-X has completed, the file lock is released. - Thus, a system and methods for establishing secure network file access between users of distributed computer systems and network-based storage systems has been described. In view of the above description of the preferred embodiments of the present invention, many modifications and variations of the disclosed embodiments will be readily appreciated by those of skill in the art. It is therefore to be understood that, within the scope of the appended claims, the invention may be practiced otherwise than as specifically described above.
Claims (35)
1. A network storage architecture supporting securely controlled access and transfer of data between a client computer system and a network data store, said network storage architecture comprising:
a) an agent program, executed on a client computer system, operative with respect to an application program, executable by said client computer system to access a network data store, to develop authentication data with respect to said application program; and
b) a network appliance, coupleable through a communications network to said client computer system, interoperable with said agent program to receive and validate said authentication data, said network appliance providing a response message to said agent program to control execution of said application program.
2. The network storage architecture of claim 1 wherein said authentication data includes user and session data.
3. The network storage architecture of claim 2 wherein said authentication data includes a secure signature of said application program.
4. The network storage architecture of claim 1 wherein said agent program is operative to obtain user authentication and collect data with respect to user sessions and processes to develop said authentication data.
5. The network storage architecture of claim 4 wherein said agent program is further operative to generate a secure signature of said application program and provide said secure signature as part of said authentication data.
6. The network storage architecture of claim 1 wherein said network appliance includes a policy parser operative to evaluate said authentication data and a policy data store including predetermined policy data accessible by said policy parser.
7. The network storage architecture of claim 6 wherein said predetermined policy data, as evaluated by said policy parser, is determinative of said response message.
8. A network storage architecture supporting securely controlled access and transfer of data between a client computer system and a network data store, said network storage architecture comprising:
a) an agent program, executed on a client computer system, responsive to a source file request issued with respect to a network data store by an application program executed by said client computer system, said agent program being operative to develop authentication data with respect to said application program and to provide a file request message including a representation of said source file request and said authentication data; and
b) a network appliance, coupleable through a communications network to said client computer system and responsive to said file request message, said network appliance including a policy parser operative to evaluate said file request message and a policy data store including predetermined policy data accessible by said policy parser, said network appliance, responsive to the evaluation of said file request message, enabling performance of said source file request with respect to said network data store.
9. The network storage architecture of claim 8 wherein said authentication data includes an authenticated identification of a user associated with said application program.
10. The network storage architecture of claim 9 wherein said authentication data includes user session and context data.
11. The network storage architecture of claim 10 wherein said authentication data includes a secure signature of said application program.
12. The network storage architecture of claim 8 wherein said network appliance enables the generation of a modified file request corresponding to said source file request and directed to said network data store.
13. The network storage architecture of claim 12 further comprising a first communications network through which said file request message is received by said network appliance and a second communications network through which said modified file request is provided to said network data store.
14. The network storage architecture of claim 13 wherein said network appliance includes an encryption unit and wherein said network appliance further provides for the cipher processing of file data transferred in connection with said modified file request.
15. The network storage architecture of claim 14 wherein said policy data store further provides for the storage of an encryption key identifier determinable by said policy parser on evaluation of said file request message and wherein said network appliance obtains an encryption key identified by said encryption key identifier for use in the cipher processing of file data transferred in connection with said modified file request.
16. The network storage architecture of claim 15 wherein said authentication data includes a process identifier, corresponding to said application program as executed on said client computer system, a verified user identifier, and a group identifier, and wherein said policy parser is operative to qualify said file request message against said predetermined policy data with respect to said process identifier, verified user identifier, and group identifier.
17. A method of securing access by a client computer system to file data stored on a storage device accessible by said client computer system, said method comprising the steps of:
a) intercepting, by a first program as executed on a client computer system, a data transfer request issued by a second program, as executed on said client computer system, directed to a data file stored by a client accessible file data store;
b) first processing, by said first program, said data transfer request to associate authentication data with said data transfer request;
c) evaluating, by a security appliance coupled to said client computer system through a communications network, said data transfer request, said authentication data, and access control data corresponding to said data file to qualify said data transfer request; and
d) second processing to selectively enable said data transfer request to proceed relative to said data file dependent on the qualification of said data transfer request.
18. The method of claim 17 wherein said authentication data includes process and context identification information.
19. The method of claim 17 wherein said authentication data includes a verified user identifier and a process identifier.
20. The method of claim 17 wherein said authentication data includes a verified user identifier, a process identifier, a group identifier.
21. The method of claim 17 wherein said data transfer request specifies a data range of file data and wherein said second processing step includes the step of modifying said data range to accommodate block encryption of file data within said data file.
22. The method of claim 17 wherein said step of evaluating associates encryption control data with said data transfer request and wherein said second processing step, responsive to said encryption control data, includes cipher processing of file data transferred in connection with said data transfer request.
23. The method of claim 22 further comprising the steps of:
a) first transferring said data transfer request to said security appliance through a first communications network; and
b) second transferring said data transfer request relative to said client accessible file data store through a second communications network.
24. The method of claim 23 wherein, through said first and second transferring steps, said security appliance is established a network portal through which network file accesses are routed between said client computer system and said client accessible file data store.
25. A method of securing file access operations by a client computer system made with respect to a client accessible file data store, said method comprising the steps of:
a) intercepting, by a first program executing on a client computer system, file operation requests issued by a second program, as executing on said client computer system, wherein said file operation requests are issued with respect to files stored in a filesystem accessible by said client computer system;
b) determining, by said first program relative to a predetermined file operation request, authentication data for said second program, wherein said authentication data includes user and process identification data and a representation of said predetermined file operation request; and
c) enabling, by a security appliance responsive to said authentication data, said predetermined file operation request with respect to a file identified by said predetermined file operation request, wherein said enabling step is dependent on qualification, by said security appliance, of said authentication data against policy data defining operation permissions relative to said file.
26. The method of claim 25 further comprising the steps of:
a) associating an encryption key with said predetermined file operation request determined from the qualification of said authentication data against said policy data; and
b) cipher processing, using said encryption key, file data transferred relative to said file.
27. The method of claim 26 wherein said step of cipher processing includes modifying the specification of said predetermined file operation request to accommodate encryption of file data transferred relative to said file.
28. The method of claim 27 wherein said step of cipher processing is performed on said security appliance.
29. The method of claim 28 wherein said authentication data includes a verified user identification and a login process identification.
30. A security appliance for securing access by client computer systems to persistently stored data files, said security appliance comprising:
a) a processor coupleable to a client computer system to receive an access request message, wherein said access request message includes authentication data and an identification of a file operation directed to an identified data file stored in a persistent data file store; and
b) a policy data store, accessible by said processor, providing for the storage of predetermined file operation qualifiers applicable to data files present in said persistent data file store, wherein said policy data store is maintained secure by said processor with respect to said client computer system, and wherein said processor is operative to selectively enable said file operation dependent on an evaluation of said predetermined file operation qualifiers with respect to said access request message.
31. The security appliance of claim 30 wherein said authentication data includes a verified user identifier and a group identifier and wherein said processor is operative to discriminate said verified user identifiers, said group identifier, said file operation and said identified data file against said predetermined file operation qualifiers to obtain said evaluation.
32. The security appliance of claim 31 wherein said policy data store further provides for the storage of encryption keys in association with said predetermined file operation qualifiers and wherein said processor is operative to retrieve a predetermined encryption key from said policy data store dependent on said evaluation.
33. The security appliance of claim 32 wherein said processor, responsive to said evaluation, is further operative to provide for said file operation to be passed to said persistent data file store.
34. The security appliance of claim 33 wherein said processor, responsive to said evaluation, is further operative to modify a specification of said file operation to accommodate the transfer of encrypted data in connection with the performance of said file operation with respect to said identified data file.
35. The security appliance of claim 34 wherein said processor includes an encryption engine operative to process encrypted data transferred with respect to said identified data file.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/712,474 US20040107342A1 (en) | 2002-07-22 | 2003-11-12 | Secure network file access control system |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/201,406 US6678828B1 (en) | 2002-07-22 | 2002-07-22 | Secure network file access control system |
US10/712,474 US20040107342A1 (en) | 2002-07-22 | 2003-11-12 | Secure network file access control system |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/201,406 Continuation US6678828B1 (en) | 2002-07-22 | 2002-07-22 | Secure network file access control system |
Publications (1)
Publication Number | Publication Date |
---|---|
US20040107342A1 true US20040107342A1 (en) | 2004-06-03 |
Family
ID=29780249
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/201,406 Expired - Lifetime US6678828B1 (en) | 2002-07-22 | 2002-07-22 | Secure network file access control system |
US10/712,474 Abandoned US20040107342A1 (en) | 2002-07-22 | 2003-11-12 | Secure network file access control system |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/201,406 Expired - Lifetime US6678828B1 (en) | 2002-07-22 | 2002-07-22 | Secure network file access control system |
Country Status (5)
Country | Link |
---|---|
US (2) | US6678828B1 (en) |
EP (1) | EP1540481A4 (en) |
JP (1) | JP5067771B2 (en) |
AU (1) | AU2003243780A1 (en) |
WO (1) | WO2004010304A1 (en) |
Cited By (83)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040205960A1 (en) * | 2003-04-15 | 2004-10-21 | Mitsuhiko Miyazaki | Electric part handling device |
US20040243835A1 (en) * | 2003-05-28 | 2004-12-02 | Andreas Terzis | Multilayer access control security system |
US20050038996A1 (en) * | 2003-06-24 | 2005-02-17 | Randy Meyerson | Method and apparatus for controlling access restrictions for media playback |
US20050108303A1 (en) * | 2003-10-31 | 2005-05-19 | Carter Richard D. | Remote backup and restore technique |
US20050171961A1 (en) * | 2004-01-30 | 2005-08-04 | Microsoft Corporation | Fingerprinting software applications |
US20050278529A1 (en) * | 2004-06-10 | 2005-12-15 | Hitachi, Ltd. | Method and apparatus for validation of application data on a storage system |
US20060130123A1 (en) * | 2004-12-14 | 2006-06-15 | International Business Machines Corporation | Method for authenticating database connections in a multi-tier environment |
US20060179066A1 (en) * | 2005-02-04 | 2006-08-10 | Microsoft Corporation | Flexible file format for updating an address book |
US20070094315A1 (en) * | 2005-05-04 | 2007-04-26 | Samsung Electronics Co., Ltd. | Apparatus and method for storing and managing additional data in file system |
US20070240219A1 (en) * | 2006-04-06 | 2007-10-11 | George Tuvell | Malware Detection System And Method for Compressed Data on Mobile Platforms |
US20070245409A1 (en) * | 2006-04-12 | 2007-10-18 | James Harris | Systems and Methods for Providing Levels of Access and Action Control Via an SSL VPN Appliance |
US20070256142A1 (en) * | 2006-04-18 | 2007-11-01 | Hartung Michael H | Encryption of data in storage systems |
US20080034410A1 (en) * | 2006-08-03 | 2008-02-07 | Citrix Systems, Inc. | Systems and Methods for Policy Based Triggering of Client-Authentication at Directory Level Granularity |
US20080034419A1 (en) * | 2006-08-03 | 2008-02-07 | Citrix Systems, Inc. | Systems and Methods for Application Based Interception of SSL/VPN Traffic |
US20080031235A1 (en) * | 2006-08-03 | 2008-02-07 | Citrix Systems, Inc. | Systems and Methods of Fine Grained Interception of Network Communications on a Virtual Private Network |
US20080034418A1 (en) * | 2006-08-03 | 2008-02-07 | Citrix Systems, Inc. | Systems and Methods for Application Based Interception SSI/VPN Traffic |
US20080046616A1 (en) * | 2006-08-21 | 2008-02-21 | Citrix Systems, Inc. | Systems and Methods of Symmetric Transport Control Protocol Compression |
US20080301179A1 (en) * | 2005-04-14 | 2008-12-04 | Microsoft Corporation | Client side indexing of offline address book files |
US7469260B2 (en) | 2003-03-19 | 2008-12-23 | Hitachi, Ltd. | File storage service system, file management device, file management method, ID denotative NAS server and file reading method |
US20090133110A1 (en) * | 2007-11-13 | 2009-05-21 | Applied Identity | System and method using globally unique identities |
US20090138939A1 (en) * | 2007-11-09 | 2009-05-28 | Applied Identity | System and method for inferring access policies from access event records |
US20090144818A1 (en) * | 2008-11-10 | 2009-06-04 | Applied Identity | System and method for using variable security tag location in network communications |
US20090165076A1 (en) * | 2007-12-19 | 2009-06-25 | International Business Machines Corporation | Method, system, and computer program product for data security policy enforcement |
US20090241170A1 (en) * | 2008-03-19 | 2009-09-24 | Applied Identity | Access, priority and bandwidth management based on application identity |
US20090265353A1 (en) * | 2008-04-16 | 2009-10-22 | Murali Vaddagiri | Method and system for extending role based access control across network file systems |
US20090292957A1 (en) * | 2008-05-21 | 2009-11-26 | International Business Machines Corporation | System for repeated unmount attempts of distributed file systems |
US20090328186A1 (en) * | 2002-04-25 | 2009-12-31 | Dennis Vance Pollutro | Computer security system |
US20100086135A1 (en) * | 2008-10-07 | 2010-04-08 | Wideman Roderick B | Generating unique aliases for keys used with tape libraries |
US20100100949A1 (en) * | 2007-07-06 | 2010-04-22 | Abhilash Vijay Sonwane | Identity and policy-based network security and management system and method |
US20100185852A1 (en) * | 2007-07-05 | 2010-07-22 | Hitachi Software Engineering Co., Ltd. | Encryption and decryption method for shared encrypted file |
US20110022812A1 (en) * | 2009-05-01 | 2011-01-27 | Van Der Linden Rob | Systems and methods for establishing a cloud bridge between virtual storage resources |
US20110040966A1 (en) * | 2007-09-06 | 2011-02-17 | Siemens Entreprise Communications Gmbh & Co. Kg | Method and device for authenticating transmitted user data |
CN102065148A (en) * | 2011-01-12 | 2011-05-18 | 无锡网芯科技有限公司 | Memory system access authorizing method based on communication network |
US20110225074A1 (en) * | 2010-03-12 | 2011-09-15 | Microsoft Corporation | System and method for providing information as a service via web services |
US20120023557A1 (en) * | 2005-09-06 | 2012-01-26 | Fortinet, Inc. | Method, apparatus, signals, and medium for managing transfer of data in a data network |
US8176562B1 (en) * | 2007-12-21 | 2012-05-08 | Symantec Corporation | Privacy protection during remote administration |
US8191162B1 (en) * | 2007-04-10 | 2012-05-29 | Zafesoft Inc. | System and method for securing and tracking files |
US8196182B2 (en) | 2007-08-24 | 2012-06-05 | Netapp, Inc. | Distributed management of crypto module white lists |
US8245050B1 (en) | 2006-09-29 | 2012-08-14 | Netapp, Inc. | System and method for initial key establishment using a split knowledge protocol |
WO2013122875A1 (en) * | 2012-02-13 | 2013-08-22 | Eugene Shablygin | Secure digital storage |
US8601263B1 (en) * | 2010-05-18 | 2013-12-03 | Google Inc. | Storing encrypted objects |
US8606939B1 (en) * | 2005-11-14 | 2013-12-10 | Cisco Technology, Inc. | Method of configuring an on-demand secure connection between a control site and a client network |
US8611542B1 (en) | 2007-04-26 | 2013-12-17 | Netapp, Inc. | Peer to peer key synchronization |
US8726338B2 (en) | 2012-02-02 | 2014-05-13 | Juniper Networks, Inc. | Dynamic threat protection in mobile networks |
US8824686B1 (en) | 2007-04-27 | 2014-09-02 | Netapp, Inc. | Cluster key synchronization |
US8943575B2 (en) | 2008-04-30 | 2015-01-27 | Citrix Systems, Inc. | Method and system for policy simulation |
WO2015016993A3 (en) * | 2013-04-26 | 2015-04-16 | Vormetric, Inc. | Encryption solution for protecting file systems in multi-host clusters |
US9141808B1 (en) * | 2010-10-29 | 2015-09-22 | Symantec Corporation | Data loss prevention |
US9202049B1 (en) | 2010-06-21 | 2015-12-01 | Pulse Secure, Llc | Detecting malware on mobile devices |
CN105279030A (en) * | 2014-06-10 | 2016-01-27 | 财团法人资讯工业策进会 | Synchronization device and method |
WO2016010604A3 (en) * | 2014-04-28 | 2016-03-31 | Topia Technology, Inc. | Systems and methods for security hardening of data in transit and at rest via segmentation, shuffling and multi-key encryption |
US9473506B1 (en) * | 2013-10-15 | 2016-10-18 | Progress Software Corporation | Secure file transfer and notification server |
US9531678B1 (en) | 2013-10-15 | 2016-12-27 | Progress Software Corporation | On-premises data access and firewall tunneling |
US20170041305A1 (en) * | 2015-08-04 | 2017-02-09 | Electronics And Telecommunications Research Institute | Apparatus and method for process authentication in redundant system |
US9774445B1 (en) | 2007-09-04 | 2017-09-26 | Netapp, Inc. | Host based rekeying |
US9830473B1 (en) * | 2011-12-15 | 2017-11-28 | United Services Automobile Association (Usaa) | Rules-based data access systems and methods |
US9971585B2 (en) | 2012-10-16 | 2018-05-15 | Citrix Systems, Inc. | Wrapping unmanaged applications on a mobile device |
US9973489B2 (en) | 2012-10-15 | 2018-05-15 | Citrix Systems, Inc. | Providing virtualized private network tunnels |
US9985850B2 (en) | 2013-03-29 | 2018-05-29 | Citrix Systems, Inc. | Providing mobile device management functionalities |
US10044757B2 (en) | 2011-10-11 | 2018-08-07 | Citrix Systems, Inc. | Secure execution of enterprise applications on mobile devices |
US10089028B2 (en) * | 2016-05-27 | 2018-10-02 | Dell Products L.P. | Remote secure drive discovery and access |
US10097584B2 (en) | 2013-03-29 | 2018-10-09 | Citrix Systems, Inc. | Providing a managed browser |
US10284627B2 (en) | 2013-03-29 | 2019-05-07 | Citrix Systems, Inc. | Data management for an application with multiple operation modes |
US10367815B2 (en) * | 2009-03-17 | 2019-07-30 | Sophos Limited | Protecting sensitive information from a secure data store |
US10476885B2 (en) | 2013-03-29 | 2019-11-12 | Citrix Systems, Inc. | Application with multiple operation modes |
US10558818B2 (en) * | 2017-02-22 | 2020-02-11 | Red Hat, Inc. | Supporting security access controls in an overlay filesystem |
US10616182B1 (en) | 2017-11-30 | 2020-04-07 | Progress Software Corporation | Data access and firewall tunneling using a custom socket factory |
US10891370B2 (en) * | 2016-11-23 | 2021-01-12 | Blackberry Limited | Path-based access control for message-based operating systems |
US10908896B2 (en) | 2012-10-16 | 2021-02-02 | Citrix Systems, Inc. | Application wrapping for application management framework |
CN113438234A (en) * | 2021-06-24 | 2021-09-24 | 字极(上海)网络科技有限公司 | Network data security protection encryption method |
US11188659B2 (en) | 2019-09-11 | 2021-11-30 | International Business Machines Corporation | Concurrent enablement of encryption on an operational path at a host port |
US11188658B2 (en) | 2019-09-11 | 2021-11-30 | International Business Machines Corporation | Concurrent enablement of encryption on an operational path at a storage port |
US11201749B2 (en) | 2019-09-11 | 2021-12-14 | International Business Machines Corporation | Establishing a security association and authentication to secure communication between an initiator and a responder |
US11206144B2 (en) | 2019-09-11 | 2021-12-21 | International Business Machines Corporation | Establishing a security association and authentication to secure communication between an initiator and a responder |
US11245521B2 (en) | 2019-09-25 | 2022-02-08 | International Business Machines Corporation | Reverting from a new security association to a previous security association in response to an error during a rekey operation |
US11275603B2 (en) * | 2017-07-01 | 2022-03-15 | Intel Corporation | Technologies for memory replay prevention using compressive encryption |
US11303441B2 (en) | 2019-09-25 | 2022-04-12 | International Business Machines Corporation | Reverting from a new security association to a previous security association in response to an error during a rekey operation |
US11308243B2 (en) | 2019-09-11 | 2022-04-19 | International Business Machines Corporation | Maintenance of access for security enablement in a storage device |
US20220150241A1 (en) * | 2020-11-11 | 2022-05-12 | Hewlett Packard Enterprise Development Lp | Permissions for backup-related operations |
US11354455B2 (en) | 2019-09-11 | 2022-06-07 | International Business Machines Corporation | Maintenance of access for security enablement on a host system |
US20220182448A1 (en) * | 2020-12-04 | 2022-06-09 | Cloudflare, Inc. | State Management and Storage With Policy Enforcement in a Distributed Cloud Computing Network |
US11477725B2 (en) * | 2020-06-30 | 2022-10-18 | Amazon Technologies, Inc. | Multiple access points for data containers |
US11841970B1 (en) * | 2007-09-26 | 2023-12-12 | Trend Micro Incorporated | Systems and methods for preventing information leakage |
Families Citing this family (204)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6192408B1 (en) * | 1997-09-26 | 2001-02-20 | Emc Corporation | Network file server sharing local caches of file access information in data processors assigned to respective file systems |
US6560217B1 (en) * | 1999-02-25 | 2003-05-06 | 3Com Corporation | Virtual home agent service using software-replicated home agents |
US7103574B1 (en) * | 1999-03-27 | 2006-09-05 | Microsoft Corporation | Enforcement architecture and method for digital rights management |
DE19929049A1 (en) * | 1999-06-25 | 2000-12-28 | Ibm | Arrangement for user-defined application loading/running has token with non-volatile, volatile memories and microprocessor, application register, communications agent and device |
WO2001029775A1 (en) | 1999-10-18 | 2001-04-26 | Stamps.Com | Cryptographic module for secure processing of value-bearing items |
WO2001029778A1 (en) | 1999-10-18 | 2001-04-26 | Stamps.Com | Method and apparatus for on-line value-bearing item system |
AU2001247986A1 (en) * | 2000-02-16 | 2001-08-27 | Stamps.Com | Secure on-line ticketing |
US7464162B2 (en) | 2000-07-10 | 2008-12-09 | Oracle International Corporation | Systems and methods for testing whether access to a resource is authorized based on access information |
US7194764B2 (en) * | 2000-07-10 | 2007-03-20 | Oracle International Corporation | User authentication |
US8661539B2 (en) * | 2000-07-10 | 2014-02-25 | Oracle International Corporation | Intrusion threat detection |
US7249369B2 (en) * | 2000-07-10 | 2007-07-24 | Oracle International Corporation | Post data processing |
US7080077B2 (en) * | 2000-07-10 | 2006-07-18 | Oracle International Corporation | Localized access |
US7124203B2 (en) * | 2000-07-10 | 2006-10-17 | Oracle International Corporation | Selective cache flushing in identity and access management systems |
US9038170B2 (en) | 2000-07-10 | 2015-05-19 | Oracle International Corporation | Logging access system events |
US7134137B2 (en) * | 2000-07-10 | 2006-11-07 | Oracle International Corporation | Providing data to applications from an access system |
US7035274B2 (en) * | 2000-12-20 | 2006-04-25 | Intel Corporation | Techniques for storing data on message queuing middleware servers without registration of the sending application |
US7395430B2 (en) * | 2001-08-28 | 2008-07-01 | International Business Machines Corporation | Secure authentication using digital certificates |
US7185364B2 (en) | 2001-03-21 | 2007-02-27 | Oracle International Corporation | Access system interface |
US7231661B1 (en) | 2001-06-21 | 2007-06-12 | Oracle International Corporation | Authorization services with external authentication |
GB2379146A (en) * | 2001-08-23 | 2003-02-26 | Inventec Corp | Transmission of encrypted and digitally signed files over the internet |
US20030051135A1 (en) * | 2001-08-31 | 2003-03-13 | Michael Gill | Protecting data in a network attached storage device |
US7225256B2 (en) | 2001-11-30 | 2007-05-29 | Oracle International Corporation | Impersonation in an access system |
US20030167316A1 (en) * | 2002-03-01 | 2003-09-04 | Bramnick Arnold H. | Data storage service for users of data communication networks |
US7356711B1 (en) | 2002-05-30 | 2008-04-08 | Microsoft Corporation | Secure registration |
US8103715B1 (en) | 2002-06-11 | 2012-01-24 | Cisco Technology, Inc. | Approach for managing mobile agents in networks |
US7493911B2 (en) * | 2002-08-09 | 2009-02-24 | The Boeing Company | Shrouded valve apparatus and related methods |
FR2844415B1 (en) * | 2002-09-05 | 2005-02-11 | At & T Corp | FIREWALL SYSTEM FOR INTERCONNECTING TWO IP NETWORKS MANAGED BY TWO DIFFERENT ADMINISTRATIVE ENTITIES |
US7143288B2 (en) * | 2002-10-16 | 2006-11-28 | Vormetric, Inc. | Secure file system server architecture and methods |
US7318100B2 (en) * | 2003-04-14 | 2008-01-08 | Riverbed Technology, Inc. | Cooperative proxy auto-discovery and connection interception |
US7650416B2 (en) | 2003-08-12 | 2010-01-19 | Riverbed Technology | Content delivery for client-server protocols with user affinities using connection end-point proxies |
US7120666B2 (en) * | 2002-10-30 | 2006-10-10 | Riverbed Technology, Inc. | Transaction accelerator for client-server communication systems |
US8176186B2 (en) | 2002-10-30 | 2012-05-08 | Riverbed Technology, Inc. | Transaction accelerator for client-server communications systems |
US8364815B2 (en) | 2005-03-18 | 2013-01-29 | Riverbed Technology, Inc. | Reliability and availability of distributed servers |
US6667700B1 (en) * | 2002-10-30 | 2003-12-23 | Nbt Technology, Inc. | Content-based segmentation scheme for data compression in storage and transmission including hierarchical segment representation |
US7650638B1 (en) * | 2002-12-02 | 2010-01-19 | Arcsight, Inc. | Network security monitoring system employing bi-directional communication |
US7334013B1 (en) | 2002-12-20 | 2008-02-19 | Microsoft Corporation | Shared services management |
US7421500B2 (en) * | 2003-01-10 | 2008-09-02 | Hewlett-Packard Development Company, L.P. | Grid computing control system |
US7383586B2 (en) | 2003-01-17 | 2008-06-03 | Microsoft Corporation | File system operation and digital rights management (DRM) |
US9372870B1 (en) * | 2003-01-21 | 2016-06-21 | Peer Fusion, Inc. | Peer to peer code generator and decoder for digital systems and cluster storage system |
US7685631B1 (en) * | 2003-02-05 | 2010-03-23 | Microsoft Corporation | Authentication of a server by a client to prevent fraudulent user interfaces |
US7370212B2 (en) * | 2003-02-25 | 2008-05-06 | Microsoft Corporation | Issuing a publisher use license off-line in a digital rights management (DRM) system |
US7596703B2 (en) * | 2003-03-21 | 2009-09-29 | Hitachi, Ltd. | Hidden data backup and retrieval for a secure device |
US9003048B2 (en) * | 2003-04-01 | 2015-04-07 | Microsoft Technology Licensing, Llc | Network zones |
US7426745B2 (en) * | 2003-04-24 | 2008-09-16 | International Business Machines Corporation | Methods and systems for transparent data encryption and decryption |
US7917751B2 (en) * | 2003-05-22 | 2011-03-29 | International Business Machines Corporation | Distributed filesystem network security extension |
US7480798B2 (en) * | 2003-06-05 | 2009-01-20 | International Business Machines Corporation | System and method for representing multiple security groups as a single data object |
US7412602B2 (en) * | 2003-09-30 | 2008-08-12 | Toshiba Corporation | Method and system for storing document images in a network file system |
US7904487B2 (en) * | 2003-10-09 | 2011-03-08 | Oracle International Corporation | Translating data access requests |
US7882132B2 (en) * | 2003-10-09 | 2011-02-01 | Oracle International Corporation | Support for RDBMS in LDAP system |
US7631344B2 (en) * | 2003-11-04 | 2009-12-08 | Alcatel Lucent | Distributed authentication framework stack |
US8244903B2 (en) * | 2003-12-22 | 2012-08-14 | Emc Corporation | Data streaming and backup systems having multiple concurrent read threads for improved small file performance |
US10375023B2 (en) * | 2004-02-20 | 2019-08-06 | Nokia Technologies Oy | System, method and computer program product for accessing at least one virtual private network |
US7496500B2 (en) * | 2004-03-01 | 2009-02-24 | Microsoft Corporation | Systems and methods that determine intent of data and respond to the data based on the intent |
US7636941B2 (en) * | 2004-03-10 | 2009-12-22 | Microsoft Corporation | Cross-domain authentication |
US7437551B2 (en) * | 2004-04-02 | 2008-10-14 | Microsoft Corporation | Public key infrastructure scalability certificate revocation status validation |
US20060230014A1 (en) * | 2004-04-26 | 2006-10-12 | Storewiz Inc. | Method and system for compression of files for storage and operation on compressed files |
US7424482B2 (en) * | 2004-04-26 | 2008-09-09 | Storwize Inc. | Method and system for compression of data for block mode access storage |
US20060190643A1 (en) * | 2004-04-26 | 2006-08-24 | Storewiz, Inc. | Method and system for compression of data for block mode access storage |
CA2564844C (en) * | 2004-04-26 | 2014-12-09 | Storewiz, Inc. | Method and system for compression of files for storage and operation on compressed files |
US20060242406A1 (en) | 2005-04-22 | 2006-10-26 | Microsoft Corporation | Protected computing environment |
US7509491B1 (en) | 2004-06-14 | 2009-03-24 | Cisco Technology, Inc. | System and method for dynamic secured group communication |
US8036221B2 (en) | 2004-06-14 | 2011-10-11 | Cisco Technology, Inc. | Method and system for dynamic secured group communication |
JP4574287B2 (en) * | 2004-09-01 | 2010-11-04 | キヤノン株式会社 | File management device |
JP4566668B2 (en) * | 2004-09-21 | 2010-10-20 | 株式会社日立製作所 | Encryption / decryption management method in computer system having storage hierarchy |
US7630974B2 (en) | 2004-09-28 | 2009-12-08 | Oracle International Corporation | Multi-language support for enterprise identity and access management |
EP1865399B1 (en) * | 2004-09-30 | 2016-07-13 | Citrix Systems, Inc. | A method and apparatus for assigning access control levels in providing access to networked content files |
US7428642B2 (en) * | 2004-10-15 | 2008-09-23 | Hitachi, Ltd. | Method and apparatus for data storage |
US8347078B2 (en) * | 2004-10-18 | 2013-01-01 | Microsoft Corporation | Device certificate individualization |
US20060089917A1 (en) * | 2004-10-22 | 2006-04-27 | Microsoft Corporation | License synchronization |
EP1650646A3 (en) | 2004-10-22 | 2008-11-19 | Quantum Corporation | Data storage system for storing data in different types of data storage media |
US20060106838A1 (en) * | 2004-10-26 | 2006-05-18 | Ayediran Abiola O | Apparatus, system, and method for validating files |
CN100407202C (en) * | 2004-10-27 | 2008-07-30 | 株式会社理光 | Document-management service device, authentication service device, document-management service program, authentication service program, recording medium, document-management service method, and authen |
US8176564B2 (en) | 2004-11-15 | 2012-05-08 | Microsoft Corporation | Special PC mode entered upon detection of undesired state |
US8336085B2 (en) | 2004-11-15 | 2012-12-18 | Microsoft Corporation | Tuning product policy using observed evidence of customer behavior |
US8191115B2 (en) * | 2005-01-10 | 2012-05-29 | Microsoft Corporation | Method and apparatus for extensible security authorization grouping |
US20060156021A1 (en) * | 2005-01-10 | 2006-07-13 | Microsoft Corporation | Method and apparatus for providing permission information in a security authorization mechanism |
US20060156008A1 (en) * | 2005-01-12 | 2006-07-13 | Microsoft Corporation | Last line of defense ensuring and enforcing sufficiently valid/current code |
US8423788B2 (en) * | 2005-02-07 | 2013-04-16 | Sandisk Technologies Inc. | Secure memory card with life cycle phases |
US8108691B2 (en) * | 2005-02-07 | 2012-01-31 | Sandisk Technologies Inc. | Methods used in a secure memory card with life cycle phases |
US8321686B2 (en) * | 2005-02-07 | 2012-11-27 | Sandisk Technologies Inc. | Secure memory card with life cycle phases |
US20060248194A1 (en) | 2005-03-18 | 2006-11-02 | Riverbed Technology, Inc. | Connection forwarding |
US8438645B2 (en) | 2005-04-27 | 2013-05-07 | Microsoft Corporation | Secure clock with grace periods |
US8725646B2 (en) * | 2005-04-15 | 2014-05-13 | Microsoft Corporation | Output protection levels |
US8327050B2 (en) * | 2005-04-21 | 2012-12-04 | International Business Machines Corporation | Systems and methods for compressing files for storage and operation on compressed files |
US8438633B1 (en) | 2005-04-21 | 2013-05-07 | Seven Networks, Inc. | Flexible real-time inbox access |
US9363481B2 (en) | 2005-04-22 | 2016-06-07 | Microsoft Technology Licensing, Llc | Protected media pipeline |
US9436804B2 (en) * | 2005-04-22 | 2016-09-06 | Microsoft Technology Licensing, Llc | Establishing a unique session key using a hardware functionality scan |
US20060265758A1 (en) * | 2005-05-20 | 2006-11-23 | Microsoft Corporation | Extensible media rights |
US8353046B2 (en) * | 2005-06-08 | 2013-01-08 | Microsoft Corporation | System and method for delivery of a modular operating system |
US7748031B2 (en) | 2005-07-08 | 2010-06-29 | Sandisk Corporation | Mass storage device with automated credentials loading |
US7730327B2 (en) * | 2005-09-09 | 2010-06-01 | Netapp, Inc. | Managing the encryption of data |
US7934049B2 (en) * | 2005-09-14 | 2011-04-26 | Sandisk Corporation | Methods used in a secure yet flexible system architecture for secure devices with flash mass storage memory |
US8966284B2 (en) * | 2005-09-14 | 2015-02-24 | Sandisk Technologies Inc. | Hardware driver integrity check of memory card controller firmware |
US20070079364A1 (en) * | 2005-09-30 | 2007-04-05 | Timothy Abels | Directory-secured packages for authentication of software installation |
KR101296195B1 (en) * | 2005-10-18 | 2013-08-13 | 텔레콤 이탈리아 소시에떼 퍼 아찌오니 | A method for controlling access to file systems, related system, SIM card and computer program product for use therein |
CN101346883A (en) * | 2005-10-26 | 2009-01-14 | 斯多维兹有限公司 | Method and system for compression of data for block mode access storage |
US8077699B2 (en) * | 2005-11-07 | 2011-12-13 | Microsoft Corporation | Independent message stores and message transport agents |
US7987509B2 (en) * | 2005-11-10 | 2011-07-26 | International Business Machines Corporation | Generation of unique significant key from URL get/post content |
US7921165B2 (en) * | 2005-11-30 | 2011-04-05 | Microsoft Corporation | Retaining mail for availability after relay |
US7734754B2 (en) * | 2005-12-28 | 2010-06-08 | Microsoft Corporation | Reviewing effectiveness of communication rules system |
US7810160B2 (en) * | 2005-12-28 | 2010-10-05 | Microsoft Corporation | Combining communication policies into common rules store |
US8688813B2 (en) | 2006-01-11 | 2014-04-01 | Oracle International Corporation | Using identity/resource profile and directory enablers to support identity management |
WO2007092311A2 (en) * | 2006-02-03 | 2007-08-16 | Zywave, Inc. | Data processing system and method |
JP4256397B2 (en) * | 2006-02-17 | 2009-04-22 | 誠 後藤 | File storage device |
US20070226519A1 (en) * | 2006-03-22 | 2007-09-27 | Lower Level Software Llc | System, method, and computer-readable medium for controlling data flow in a network |
WO2008005629A2 (en) * | 2006-05-26 | 2008-01-10 | Riverbed Technology, Inc. | Throttling of predictive acks in an accelerated network communication system |
US7769834B2 (en) | 2006-05-30 | 2010-08-03 | Riverbed Technology, Inc. | System for selecting a proxy pair based on configurations of autodiscovered proxies on a network |
US8028026B2 (en) * | 2006-05-31 | 2011-09-27 | Microsoft Corporation | Perimeter message filtering with extracted user-specific preferences |
US8726020B2 (en) * | 2006-05-31 | 2014-05-13 | Microsoft Corporation | Updating configuration information to a perimeter network |
US8549295B2 (en) | 2006-05-31 | 2013-10-01 | Microsoft Corporation | Establishing secure, mutually authenticated communication credentials |
US8016192B2 (en) * | 2006-06-06 | 2011-09-13 | Motorola Mobility, Inc. | User-configurable priority list for mobile device electronic payment applications |
US7792301B2 (en) * | 2006-06-29 | 2010-09-07 | Microsoft Corporation | Access control and encryption in multi-user systems |
US8416954B1 (en) * | 2008-09-30 | 2013-04-09 | Emc Corporation | Systems and methods for accessing storage or network based replicas of encrypted volumes with no additional key management |
US8166113B2 (en) * | 2006-08-02 | 2012-04-24 | Microsoft Corporation | Access limited EMM distribution lists |
US20080072058A1 (en) * | 2006-08-24 | 2008-03-20 | Yoram Cedar | Methods in a reader for one time password generating device |
US20080052524A1 (en) * | 2006-08-24 | 2008-02-28 | Yoram Cedar | Reader for one time password generating device |
US20080066192A1 (en) * | 2006-09-07 | 2008-03-13 | International Business Machines Corporation | Keyless copy of encrypted data |
US7856657B2 (en) * | 2006-10-30 | 2010-12-21 | Hewlett-Packard Development Company, L.P. | Secure access of resources at shared appliances |
US8677091B2 (en) | 2006-12-18 | 2014-03-18 | Commvault Systems, Inc. | Writing data and storage system specific metadata to network attached storage device |
US8423794B2 (en) * | 2006-12-28 | 2013-04-16 | Sandisk Technologies Inc. | Method and apparatus for upgrading a memory card that has security mechanisms for preventing copying of secure content and applications |
EP2115660A4 (en) * | 2007-01-26 | 2011-11-02 | Safenet Inc | Secure file encryption |
WO2008138008A1 (en) * | 2007-05-08 | 2008-11-13 | Riverbed Technology, Inc | A hybrid segment-oriented file server and wan accelerator |
US7720995B2 (en) * | 2007-06-08 | 2010-05-18 | Cisco Technology, Inc. | Conditional BGP advertising for dynamic group VPN (DGVPN) clients |
AT504798B1 (en) * | 2007-10-24 | 2008-08-15 | Data Noah Gmbh | METHOD AND DEVICE FOR SELF-CREATING BACKUP COPIES |
US8051491B1 (en) * | 2007-12-10 | 2011-11-01 | Amazon Technologies, Inc. | Controlling use of computing-related resources by multiple independent parties |
US20090319772A1 (en) * | 2008-04-25 | 2009-12-24 | Netapp, Inc. | In-line content based security for data at rest in a network storage system |
US9395929B2 (en) * | 2008-04-25 | 2016-07-19 | Netapp, Inc. | Network storage server with integrated encryption, compression and deduplication capability |
US8589697B2 (en) * | 2008-04-30 | 2013-11-19 | Netapp, Inc. | Discarding sensitive data from persistent point-in-time image |
US8117464B1 (en) | 2008-04-30 | 2012-02-14 | Netapp, Inc. | Sub-volume level security for deduplicated data |
US8613045B1 (en) | 2008-05-01 | 2013-12-17 | F5 Networks, Inc. | Generating secure roaming user profiles over a network |
US8495030B2 (en) * | 2011-01-06 | 2013-07-23 | International Business Machines Corporation | Records declaration filesystem monitoring |
US8880879B2 (en) * | 2008-09-04 | 2014-11-04 | Intel Corporation | Accelerated cryptography with an encryption attribute |
US9240883B2 (en) | 2008-09-04 | 2016-01-19 | Intel Corporation | Multi-key cryptography for encrypting file system acceleration |
US8411863B2 (en) * | 2008-10-03 | 2013-04-02 | Microsoft Corporation | Full volume encryption in a clustered environment |
EP2180401A1 (en) | 2008-10-24 | 2010-04-28 | Thomson Telecom Belgium | A method at a gateway for selecting and managing a default disk |
US20100146592A1 (en) * | 2008-12-04 | 2010-06-10 | Dell Products L. P. | Systems and methods for providing session continuity across a chassis management controller failover |
US8380989B2 (en) * | 2009-03-05 | 2013-02-19 | Sybase, Inc. | System and method for second factor authentication |
US8364984B2 (en) * | 2009-03-13 | 2013-01-29 | Microsoft Corporation | Portable secure data files |
US9654285B2 (en) * | 2009-04-27 | 2017-05-16 | International Business Machines Corporation | Defining access rights to content |
US8589698B2 (en) * | 2009-05-15 | 2013-11-19 | International Business Machines Corporation | Integrity service using regenerated trust integrity gather program |
US8782086B2 (en) | 2009-08-27 | 2014-07-15 | Cleversafe, Inc. | Updating dispersed storage network access control information |
US8230478B2 (en) * | 2009-08-27 | 2012-07-24 | International Business Machines Corporation | Flexibly assigning security configurations to applications |
WO2011027352A1 (en) * | 2009-09-03 | 2011-03-10 | Mcafee, Inc. | Network access control |
US9369524B2 (en) * | 2009-10-26 | 2016-06-14 | Netapp, Inc. | Simplified and unified management for network-attached storage |
US11301592B2 (en) * | 2010-01-28 | 2022-04-12 | Pure Storage, Inc. | Distributed storage with data obfuscation and method for use therewith |
US9317572B2 (en) | 2010-03-31 | 2016-04-19 | Cloudera, Inc. | Configuring a system to collect and aggregate datasets |
US8874526B2 (en) | 2010-03-31 | 2014-10-28 | Cloudera, Inc. | Dynamically processing an event using an extensible data model |
US9082127B2 (en) | 2010-03-31 | 2015-07-14 | Cloudera, Inc. | Collecting and aggregating datasets for analysis |
US9081888B2 (en) | 2010-03-31 | 2015-07-14 | Cloudera, Inc. | Collecting and aggregating log data with fault tolerance |
KR101643273B1 (en) | 2010-04-09 | 2016-08-01 | 삼성전자주식회사 | Method of storing data in storage media, data storage device using the same, and system including the same |
US9058497B2 (en) | 2010-12-23 | 2015-06-16 | Microsoft Technology Licensing, Llc | Cryptographic key management |
US8788815B1 (en) * | 2011-01-31 | 2014-07-22 | Gazzang, Inc. | System and method for controlling access to decrypted data |
US8880592B2 (en) | 2011-03-31 | 2014-11-04 | Cloudera, Inc. | User interface implementation for partial display update |
US8862871B2 (en) * | 2011-04-15 | 2014-10-14 | Architecture Technology, Inc. | Network with protocol, privacy preserving source attribution and admission control and method |
WO2012160366A1 (en) * | 2011-05-20 | 2012-11-29 | Bae Systems Plc | Supervised data transfer |
US9128949B2 (en) | 2012-01-18 | 2015-09-08 | Cloudera, Inc. | Memory allocation buffer for reduction of heap fragmentation |
US9172608B2 (en) | 2012-02-07 | 2015-10-27 | Cloudera, Inc. | Centralized configuration and monitoring of a distributed computing cluster |
US9405692B2 (en) | 2012-03-21 | 2016-08-02 | Cloudera, Inc. | Data processing performance enhancement in a distributed file system |
US9338008B1 (en) | 2012-04-02 | 2016-05-10 | Cloudera, Inc. | System and method for secure release of secret information over a network |
US9842126B2 (en) | 2012-04-20 | 2017-12-12 | Cloudera, Inc. | Automatic repair of corrupt HBases |
US20140047236A1 (en) | 2012-08-07 | 2014-02-13 | International Business Machines Corporation | Authenticated file handles for network file systems |
US9753954B2 (en) | 2012-09-14 | 2017-09-05 | Cloudera, Inc. | Data node fencing in a distributed file system |
US9003550B2 (en) * | 2012-12-31 | 2015-04-07 | SmartBridge, LLC | Systems and methods for crisis management and situational awareness |
US9342557B2 (en) | 2013-03-13 | 2016-05-17 | Cloudera, Inc. | Low latency query engine for Apache Hadoop |
US9860223B2 (en) * | 2013-03-27 | 2018-01-02 | International Business Machines Corporation | Mapping the network file system (NFS) protocol to secure web-based applications |
US10073987B2 (en) * | 2013-04-02 | 2018-09-11 | Western Digital Technologies, Inc. | Methods and systems for privileged execution support for file system commands on a storage device |
US9819436B2 (en) | 2013-08-26 | 2017-11-14 | Coriant Operations, Inc. | Intranodal ROADM fiber management apparatuses, systems, and methods |
US9477731B2 (en) | 2013-10-01 | 2016-10-25 | Cloudera, Inc. | Background format optimization for enhanced SQL-like queries in Hadoop |
US9934382B2 (en) | 2013-10-28 | 2018-04-03 | Cloudera, Inc. | Virtual machine image encryption |
US9690671B2 (en) | 2013-11-01 | 2017-06-27 | Cloudera, Inc. | Manifest-based snapshots in distributed computing environments |
CN103631873B (en) * | 2013-11-07 | 2017-12-12 | 华为技术有限公司 | A kind of data compression method and storage system |
US9397990B1 (en) * | 2013-11-08 | 2016-07-19 | Google Inc. | Methods and systems of generating and using authentication credentials for decentralized authorization in the cloud |
US10171635B2 (en) | 2013-12-04 | 2019-01-01 | Cloudera, Inc. | Ensuring properly ordered events in a distributed computing environment |
US9213653B2 (en) | 2013-12-05 | 2015-12-15 | Intel Corporation | Memory integrity |
RU2573785C2 (en) * | 2013-12-05 | 2016-01-27 | Закрытое акционерное общество "Лаборатория Касперского" | System and method for applying file access rules during transfer thereof between computers |
US9747333B2 (en) | 2014-10-08 | 2017-08-29 | Cloudera, Inc. | Querying operating system state on multiple machines declaratively |
US10120904B2 (en) | 2014-12-31 | 2018-11-06 | Cloudera, Inc. | Resource management in a distributed computing environment |
US9350556B1 (en) | 2015-04-20 | 2016-05-24 | Google Inc. | Security model for identification and authentication in encrypted communications using delegate certificate chain bound to third party key |
US10044718B2 (en) | 2015-05-27 | 2018-08-07 | Google Llc | Authorization in a distributed system using access control lists and groups |
US10235262B2 (en) * | 2015-06-11 | 2019-03-19 | Instana, Inc. | Recognition of operational elements by fingerprint in an application performance management system |
US10353762B2 (en) | 2015-06-11 | 2019-07-16 | Instana, Inc. | Hierarchical fault determination in an application performance management system |
US10466914B2 (en) * | 2015-08-31 | 2019-11-05 | Pure Storage, Inc. | Verifying authorized access in a dispersed storage network |
US9990249B2 (en) * | 2015-12-24 | 2018-06-05 | Intel Corporation | Memory integrity with error detection and correction |
US10594491B2 (en) | 2015-12-24 | 2020-03-17 | Intel Corporation | Cryptographic system memory management |
EP3345370B1 (en) | 2016-01-29 | 2019-03-13 | Google LLC | Device access revocation |
US9954958B2 (en) * | 2016-01-29 | 2018-04-24 | Red Hat, Inc. | Shared resource management |
US10164955B1 (en) | 2016-05-25 | 2018-12-25 | Google Llc | Volatile encryption keys |
US9983988B1 (en) * | 2016-06-23 | 2018-05-29 | Amazon Technologies, Inc. | Resuming testing after a destructive event |
US10417094B1 (en) | 2016-07-13 | 2019-09-17 | Peer Fusion, Inc. | Hyper storage cluster |
KR102107277B1 (en) * | 2016-08-08 | 2020-05-06 | (주)나무소프트 | System and method for anti-fishing or anti-ransomware application |
US10346318B2 (en) | 2016-09-13 | 2019-07-09 | Intel Corporation | Multi-stage memory integrity method and apparatus |
US10747744B2 (en) | 2016-10-10 | 2020-08-18 | AlphaPoint | Distributed ledger comprising snapshots |
US10361997B2 (en) | 2016-12-29 | 2019-07-23 | Riverbed Technology, Inc. | Auto discovery between proxies in an IPv6 network |
US10491635B2 (en) * | 2017-06-30 | 2019-11-26 | BlueTalon, Inc. | Access policies based on HDFS extended attributes |
US11379593B2 (en) | 2017-08-16 | 2022-07-05 | Hewlett-Packard Development Company, L.P. | Storage monitoring |
US11294860B2 (en) * | 2018-06-07 | 2022-04-05 | Sap Se | Secure decompression |
US11115490B2 (en) * | 2018-07-31 | 2021-09-07 | EMC IP Holding Company LLC | Host based read cache for san supporting NVMEF with E2E validation |
US11429794B2 (en) | 2018-09-06 | 2022-08-30 | Daniel L. Coffing | System for providing dialogue guidance |
US11743268B2 (en) * | 2018-09-14 | 2023-08-29 | Daniel L. Coffing | Fact management system |
US11863588B2 (en) * | 2019-08-07 | 2024-01-02 | Cisco Technology, Inc. | Dynamically tailored trust for secure application-service networking in an enterprise |
CN110579977B (en) * | 2019-09-17 | 2021-11-23 | 珠海格力电器股份有限公司 | Control method and device of electrical equipment and computer readable storage medium |
JP2022074807A (en) * | 2020-11-05 | 2022-05-18 | 株式会社日立製作所 | File storage and computer system |
CN113836577A (en) * | 2021-09-09 | 2021-12-24 | 武汉市风奥科技股份有限公司 | Intranet and extranet access control method and access control system of confidential computer |
CN114978806A (en) * | 2022-05-05 | 2022-08-30 | 上海联虹技术有限公司 | Data transmission method based on hardware acceleration, device and processor thereof |
Citations (99)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4503287A (en) * | 1981-11-23 | 1985-03-05 | Analytics, Inc. | Two-tiered communication security employing asymmetric session keys |
US4588991A (en) * | 1983-03-07 | 1986-05-13 | Atalla Corporation | File access security method and means |
US4649233A (en) * | 1985-04-11 | 1987-03-10 | International Business Machines Corporation | Method for establishing user authenication with composite session keys among cryptographically communicating nodes |
US5007082A (en) * | 1988-08-03 | 1991-04-09 | Kelly Services, Inc. | Computer software encryption apparatus |
US5150407A (en) * | 1991-12-16 | 1992-09-22 | Chan Steve S C | Secured data storage devices |
US5235641A (en) * | 1990-03-13 | 1993-08-10 | Hitachi, Ltd. | File encryption method and file cryptographic system |
US5235642A (en) * | 1992-07-21 | 1993-08-10 | Digital Equipment Corporation | Access control subsystem and method for distributed computer system using locally cached authentication credentials |
US5321841A (en) * | 1989-06-29 | 1994-06-14 | Digital Equipment Corporation | System for determining the rights of object access for a server process by combining them with the rights of the client process |
US5349642A (en) * | 1992-11-03 | 1994-09-20 | Novell, Inc. | Method and apparatus for authentication of client server communication |
US5412717A (en) * | 1992-05-15 | 1995-05-02 | Fischer; Addison M. | Computer system security method and apparatus having program authorization information data structures |
US5440635A (en) * | 1993-08-23 | 1995-08-08 | At&T Corp. | Cryptographic protocol for remote authentication |
US5453979A (en) * | 1994-01-27 | 1995-09-26 | Dsc Communications Corporation | Method and apparatus for generating route information for asynchronous transfer mode cell processing |
US5463772A (en) * | 1993-04-23 | 1995-10-31 | Hewlett-Packard Company | Transparent peripheral file systems with on-board compression, decompression, and space management |
US5506961A (en) * | 1992-09-11 | 1996-04-09 | International Business Machines Corporation | Connection authorizer for controlling access to system resources |
US5539883A (en) * | 1991-10-31 | 1996-07-23 | International Business Machines Corporation | Load balancing of network by maintaining in each computer information regarding current load on the computer and load on some other computers in the network |
US5548724A (en) * | 1993-03-22 | 1996-08-20 | Hitachi, Ltd. | File server system and file access control method of the same |
US5550984A (en) * | 1994-12-07 | 1996-08-27 | Matsushita Electric Corporation Of America | Security system for preventing unauthorized communications between networks by translating communications received in ip protocol to non-ip protocol to remove address and routing services information |
US5564106A (en) * | 1995-03-09 | 1996-10-08 | Motorola, Inc. | Method for providing blind access to an encryption key |
US5566170A (en) * | 1994-12-29 | 1996-10-15 | Storage Technology Corporation | Method and apparatus for accelerated packet forwarding |
US5602918A (en) * | 1995-12-22 | 1997-02-11 | Virtual Open Network Environment Corp. | Application level security system and method |
US5638448A (en) * | 1995-10-24 | 1997-06-10 | Nguyen; Minhtam C. | Network with secure communications sessions |
US5649099A (en) * | 1993-06-04 | 1997-07-15 | Xerox Corporation | Method for delegating access rights through executable access control program without delegating access rights not in a specification to any intermediary nor comprising server security |
US5655120A (en) * | 1993-09-24 | 1997-08-05 | Siemens Aktiengesellschaft | Method for load balancing in a multi-processor system where arising jobs are processed by a plurality of processors under real-time conditions |
US5657390A (en) * | 1995-08-25 | 1997-08-12 | Netscape Communications Corporation | Secure socket layer application program apparatus and method |
US5680461A (en) * | 1995-10-26 | 1997-10-21 | Sun Microsystems, Inc. | Secure network protocol system and method |
US5720034A (en) * | 1995-12-07 | 1998-02-17 | Case; Jeffrey D. | Method for secure key production |
US5754791A (en) * | 1996-03-25 | 1998-05-19 | I-Cube, Inc. | Hierarchical address translation system for a network switch |
US5774668A (en) * | 1995-06-07 | 1998-06-30 | Microsoft Corporation | System for on-line service in which gateway computer uses service map which includes loading condition of servers broadcasted by application servers for load balancing |
US5784463A (en) * | 1996-12-04 | 1998-07-21 | V-One Corporation | Token distribution, registration, and dynamic configuration of user entitlement for an application level security system and method |
US5787175A (en) * | 1995-10-23 | 1998-07-28 | Novell, Inc. | Method and apparatus for collaborative document control |
US5790800A (en) * | 1995-10-13 | 1998-08-04 | Digital Equipment Corporation | Client application program mobilizer |
US5862348A (en) * | 1996-02-09 | 1999-01-19 | Citrix Systems, Inc. | Method and apparatus for connecting a client node to a server node based on load levels |
US5872783A (en) * | 1996-07-24 | 1999-02-16 | Cisco Systems, Inc. | Arrangement for rendering forwarding decisions for packets transferred among network switches |
US5905725A (en) * | 1996-12-16 | 1999-05-18 | Juniper Networks | High speed switching device |
US5918074A (en) * | 1997-07-25 | 1999-06-29 | Neonet Llc | System architecture for and method of dual path data processing and management of packets and/or cells and the like |
US5922073A (en) * | 1996-01-10 | 1999-07-13 | Canon Kabushiki Kaisha | System and method for controlling access to subject data using location data associated with the subject data and a requesting device |
US5931947A (en) * | 1997-09-11 | 1999-08-03 | International Business Machines Corporation | Secure array of remotely encrypted storage devices |
US5940507A (en) * | 1997-02-11 | 1999-08-17 | Connected Corporation | Secure file archive through encryption key management |
US5941947A (en) * | 1995-08-18 | 1999-08-24 | Microsoft Corporation | System and method for controlling access to data entities in a computer network |
US6038668A (en) * | 1997-09-08 | 2000-03-14 | Science Applications International Corporation | System, method, and medium for retrieving, organizing, and utilizing networked data |
US6052785A (en) * | 1997-11-21 | 2000-04-18 | International Business Machines Corporation | Multiple remote data access security mechanism for multitiered internet computer networks |
US6061796A (en) * | 1997-08-26 | 2000-05-09 | V-One Corporation | Multi-access virtual private network |
US6061650A (en) * | 1996-09-10 | 2000-05-09 | Nortel Networks Corporation | Method and apparatus for transparently providing mobile network functionality |
US6078960A (en) * | 1998-07-03 | 2000-06-20 | Acceleration Software International Corporation | Client-side load-balancing in client server network |
US6078943A (en) * | 1997-02-07 | 2000-06-20 | International Business Machines Corporation | Method and apparatus for dynamic interval-based load balancing |
US6084969A (en) * | 1997-12-31 | 2000-07-04 | V-One Corporation | Key encryption system and method, pager unit, and pager proxy for a two-way alphanumeric pager network |
US6091720A (en) * | 1994-10-26 | 2000-07-18 | Nortel Networks Corporation | Dynamically controlled routing using dynamic management of intra-link traffic to virtual destination nodes |
US6104716A (en) * | 1997-03-28 | 2000-08-15 | International Business Machines Corporation | Method and apparatus for lightweight secure communication tunneling over the internet |
US6173306B1 (en) * | 1995-07-21 | 2001-01-09 | Emc Corporation | Dynamic load balancing |
US6175924B1 (en) * | 1997-06-20 | 2001-01-16 | International Business Machines Corp. | Method and apparatus for protecting application data in secure storage areas |
US6185681B1 (en) * | 1998-05-07 | 2001-02-06 | Stephen Zizzi | Method of transparent encryption and decryption for an electronic document management system |
US6185684B1 (en) * | 1998-08-28 | 2001-02-06 | Adobe Systems, Inc. | Secured document access control using recipient lists |
US6199077B1 (en) * | 1998-12-08 | 2001-03-06 | Yodlee.Com, Inc. | Server-side web summary generation and presentation |
US6202157B1 (en) * | 1997-12-08 | 2001-03-13 | Entrust Technologies Limited | Computer network security system and method having unilateral enforceable security policy provision |
US6219790B1 (en) * | 1998-06-19 | 2001-04-17 | Lucent Technologies Inc. | Centralized authentication, authorization and accounting server with support for multiple transport protocols and multiple client types |
US6246771B1 (en) * | 1997-11-26 | 2001-06-12 | V-One Corporation | Session key recovery system and method |
US6249866B1 (en) * | 1997-09-16 | 2001-06-19 | Microsoft Corporation | Encrypting file system and method |
US6253193B1 (en) * | 1995-02-13 | 2001-06-26 | Intertrust Technologies Corporation | Systems and methods for the secure transaction management and electronic rights protection |
US6252878B1 (en) * | 1997-10-30 | 2001-06-26 | Cisco Technology, Inc. | Switched architecture access server |
US6253321B1 (en) * | 1998-06-19 | 2001-06-26 | Ssh Communications Security Ltd. | Method and arrangement for implementing IPSEC policy management using filter code |
US6259699B1 (en) * | 1997-12-30 | 2001-07-10 | Nexabit Networks, Llc | System architecture for and method of processing packets and/or cells in a common switch |
US6260155B1 (en) * | 1998-05-01 | 2001-07-10 | Quad Research | Network information server |
US6263445B1 (en) * | 1998-06-30 | 2001-07-17 | Emc Corporation | Method and apparatus for authenticating connections to a storage system coupled to a network |
US6266705B1 (en) * | 1998-09-29 | 2001-07-24 | Cisco Systems, Inc. | Look up mechanism and associated hash table for a network switch |
US6272522B1 (en) * | 1998-11-17 | 2001-08-07 | Sun Microsystems, Incorporated | Computer data packet switching and load balancing system using a general-purpose multiprocessor architecture |
US20010016907A1 (en) * | 1999-12-30 | 2001-08-23 | Lg Electronics, Inc. | Security protocol structure in application layer |
US6282652B1 (en) * | 1998-02-26 | 2001-08-28 | Sun Microsystems, Inc. | System for separately designating security requirements for methods invoked on a computer |
US6286104B1 (en) * | 1999-08-04 | 2001-09-04 | Oracle Corporation | Authentication and authorization in a multi-tier relational database management system |
US6292827B1 (en) * | 1997-06-20 | 2001-09-18 | Shore Technologies (1999) Inc. | Information transfer systems and method with dynamic distribution of data, control and management of information |
US20020010679A1 (en) * | 2000-07-06 | 2002-01-24 | Felsher David Paul | Information record infrastructure, system and method |
US6351775B1 (en) * | 1997-05-30 | 2002-02-26 | International Business Machines Corporation | Loading balancing across servers in a computer network |
US6354886B1 (en) * | 2000-09-08 | 2002-03-12 | Advanced Connecteck Inc. | Electrical connector |
US6374336B1 (en) * | 1997-12-24 | 2002-04-16 | Avid Technology, Inc. | Computer system and process for transferring multiple high bandwidth streams of data between multiple storage units and multiple applications in a scalable and reliable manner |
US6377577B1 (en) * | 1998-06-30 | 2002-04-23 | Cisco Technology, Inc. | Access control list processing in hardware |
US6378072B1 (en) * | 1998-02-03 | 2002-04-23 | Compaq Computer Corporation | Cryptographic system |
US6405315B1 (en) * | 1997-09-11 | 2002-06-11 | International Business Machines Corporation | Decentralized remotely encrypted file system |
US20020091734A1 (en) * | 2000-11-13 | 2002-07-11 | Digital Door, Inc. | Data security system and method |
US6424621B1 (en) * | 1998-11-17 | 2002-07-23 | Sun Microsystems, Inc. | Software interface between switching module and operating system of a data packet switching and load balancing system |
US6438612B1 (en) * | 1998-09-11 | 2002-08-20 | Ssh Communications Security, Ltd. | Method and arrangement for secure tunneling of data between virtual routers |
US6438652B1 (en) * | 1998-10-09 | 2002-08-20 | International Business Machines Corporation | Load balancing cooperating cache servers by shifting forwarded request |
US6505254B1 (en) * | 1999-04-19 | 2003-01-07 | Cisco Technology, Inc. | Methods and apparatus for routing requests in a network |
US6505300B2 (en) * | 1998-06-12 | 2003-01-07 | Microsoft Corporation | Method and system for secure running of untrusted content |
US6519636B2 (en) * | 1998-10-28 | 2003-02-11 | International Business Machines Corporation | Efficient classification, manipulation, and control of network transmissions by associating network flows with rule based functions |
US6529950B1 (en) * | 1999-06-17 | 2003-03-04 | International Business Machines Corporation | Policy-based multivariate application-level QoS negotiation for multimedia services |
US20030046366A1 (en) * | 2001-02-13 | 2003-03-06 | Shishir Pardikar | System and method for providing transparent access to distributed authoring and versioning files including encrypted files |
US20030056095A1 (en) * | 2001-09-14 | 2003-03-20 | International Business Machines Corporation | Securing decrypted files in a shared environment |
US6539483B1 (en) * | 2000-01-12 | 2003-03-25 | International Business Machines Corporation | System and method for generation VPN network policies |
US6542992B1 (en) * | 1999-01-26 | 2003-04-01 | 3Com Corporation | Control and coordination of encryption and compression between network entities |
US20030074355A1 (en) * | 2001-03-23 | 2003-04-17 | Restaurant Services, Inc. ("RSI"). | System, method and computer program product for a secure supply chain management framework |
US6560217B1 (en) * | 1999-02-25 | 2003-05-06 | 3Com Corporation | Virtual home agent service using software-replicated home agents |
US6571287B1 (en) * | 1999-01-14 | 2003-05-27 | Cisco Technology, Inc. | Distributed database system with authoritative node |
US20030112977A1 (en) * | 2001-12-18 | 2003-06-19 | Dipankar Ray | Communicating data securely within a mobile communications network |
US6584023B1 (en) * | 2002-01-09 | 2003-06-24 | International Business Machines Corporation | System for implementing a column redundancy scheme for arrays with controls that span multiple data bits |
US6584508B1 (en) * | 1999-07-13 | 2003-06-24 | Networks Associates Technology, Inc. | Advanced data guard having independently wrapped components |
US6594763B1 (en) * | 1998-10-27 | 2003-07-15 | Sprint Communications Company L.P. | Object-based security system |
US6596718B1 (en) * | 2001-11-27 | 2003-07-22 | Hoffmann-La Roche Inc. | 7-Morpholin-4yl-benzothiazole amide derivatives |
US6845395B1 (en) * | 1999-06-30 | 2005-01-18 | Emc Corporation | Method and apparatus for identifying network devices on a storage network |
US6850446B1 (en) * | 2001-12-06 | 2005-02-01 | Virage Logic Corporation | Memory cell sensing with low noise generation |
US6901403B1 (en) * | 2000-03-02 | 2005-05-31 | Quovadx, Inc. | XML presentation of general-purpose data sources |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5742759A (en) * | 1995-08-18 | 1998-04-21 | Sun Microsystems, Inc. | Method and system for facilitating access control to system resources in a distributed computer system |
FI980291L (en) * | 1998-02-09 | 1999-08-10 | Nokia Mobile Phones Ltd | Mobile internet access |
US6158010A (en) * | 1998-10-28 | 2000-12-05 | Crosslogix, Inc. | System and method for maintaining security in a distributed computer network |
US6324581B1 (en) * | 1999-03-03 | 2001-11-27 | Emc Corporation | File server system using file system storage, data movers, and an exchange of meta data among data movers for file locking and direct access to shared file systems |
US6671773B2 (en) * | 2000-12-07 | 2003-12-30 | Spinnaker Networks, Llc | Method and system for responding to file system requests |
-
2002
- 2002-07-22 US US10/201,406 patent/US6678828B1/en not_active Expired - Lifetime
-
2003
- 2003-06-24 WO PCT/US2003/020020 patent/WO2004010304A1/en active Application Filing
- 2003-06-24 EP EP03765467A patent/EP1540481A4/en not_active Withdrawn
- 2003-06-24 JP JP2004523025A patent/JP5067771B2/en not_active Expired - Fee Related
- 2003-06-24 AU AU2003243780A patent/AU2003243780A1/en not_active Abandoned
- 2003-11-12 US US10/712,474 patent/US20040107342A1/en not_active Abandoned
Patent Citations (99)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4503287A (en) * | 1981-11-23 | 1985-03-05 | Analytics, Inc. | Two-tiered communication security employing asymmetric session keys |
US4588991A (en) * | 1983-03-07 | 1986-05-13 | Atalla Corporation | File access security method and means |
US4649233A (en) * | 1985-04-11 | 1987-03-10 | International Business Machines Corporation | Method for establishing user authenication with composite session keys among cryptographically communicating nodes |
US5007082A (en) * | 1988-08-03 | 1991-04-09 | Kelly Services, Inc. | Computer software encryption apparatus |
US5321841A (en) * | 1989-06-29 | 1994-06-14 | Digital Equipment Corporation | System for determining the rights of object access for a server process by combining them with the rights of the client process |
US5235641A (en) * | 1990-03-13 | 1993-08-10 | Hitachi, Ltd. | File encryption method and file cryptographic system |
US5539883A (en) * | 1991-10-31 | 1996-07-23 | International Business Machines Corporation | Load balancing of network by maintaining in each computer information regarding current load on the computer and load on some other computers in the network |
US5150407A (en) * | 1991-12-16 | 1992-09-22 | Chan Steve S C | Secured data storage devices |
US5412717A (en) * | 1992-05-15 | 1995-05-02 | Fischer; Addison M. | Computer system security method and apparatus having program authorization information data structures |
US5235642A (en) * | 1992-07-21 | 1993-08-10 | Digital Equipment Corporation | Access control subsystem and method for distributed computer system using locally cached authentication credentials |
US5506961A (en) * | 1992-09-11 | 1996-04-09 | International Business Machines Corporation | Connection authorizer for controlling access to system resources |
US5349642A (en) * | 1992-11-03 | 1994-09-20 | Novell, Inc. | Method and apparatus for authentication of client server communication |
US5548724A (en) * | 1993-03-22 | 1996-08-20 | Hitachi, Ltd. | File server system and file access control method of the same |
US5463772A (en) * | 1993-04-23 | 1995-10-31 | Hewlett-Packard Company | Transparent peripheral file systems with on-board compression, decompression, and space management |
US5649099A (en) * | 1993-06-04 | 1997-07-15 | Xerox Corporation | Method for delegating access rights through executable access control program without delegating access rights not in a specification to any intermediary nor comprising server security |
US5440635A (en) * | 1993-08-23 | 1995-08-08 | At&T Corp. | Cryptographic protocol for remote authentication |
US5655120A (en) * | 1993-09-24 | 1997-08-05 | Siemens Aktiengesellschaft | Method for load balancing in a multi-processor system where arising jobs are processed by a plurality of processors under real-time conditions |
US5453979A (en) * | 1994-01-27 | 1995-09-26 | Dsc Communications Corporation | Method and apparatus for generating route information for asynchronous transfer mode cell processing |
US6091720A (en) * | 1994-10-26 | 2000-07-18 | Nortel Networks Corporation | Dynamically controlled routing using dynamic management of intra-link traffic to virtual destination nodes |
US5550984A (en) * | 1994-12-07 | 1996-08-27 | Matsushita Electric Corporation Of America | Security system for preventing unauthorized communications between networks by translating communications received in ip protocol to non-ip protocol to remove address and routing services information |
US5566170A (en) * | 1994-12-29 | 1996-10-15 | Storage Technology Corporation | Method and apparatus for accelerated packet forwarding |
US6253193B1 (en) * | 1995-02-13 | 2001-06-26 | Intertrust Technologies Corporation | Systems and methods for the secure transaction management and electronic rights protection |
US5564106A (en) * | 1995-03-09 | 1996-10-08 | Motorola, Inc. | Method for providing blind access to an encryption key |
US5774668A (en) * | 1995-06-07 | 1998-06-30 | Microsoft Corporation | System for on-line service in which gateway computer uses service map which includes loading condition of servers broadcasted by application servers for load balancing |
US6173306B1 (en) * | 1995-07-21 | 2001-01-09 | Emc Corporation | Dynamic load balancing |
US5941947A (en) * | 1995-08-18 | 1999-08-24 | Microsoft Corporation | System and method for controlling access to data entities in a computer network |
US5657390A (en) * | 1995-08-25 | 1997-08-12 | Netscape Communications Corporation | Secure socket layer application program apparatus and method |
US5790800A (en) * | 1995-10-13 | 1998-08-04 | Digital Equipment Corporation | Client application program mobilizer |
US5787175A (en) * | 1995-10-23 | 1998-07-28 | Novell, Inc. | Method and apparatus for collaborative document control |
US5638448A (en) * | 1995-10-24 | 1997-06-10 | Nguyen; Minhtam C. | Network with secure communications sessions |
US5680461A (en) * | 1995-10-26 | 1997-10-21 | Sun Microsystems, Inc. | Secure network protocol system and method |
US5720034A (en) * | 1995-12-07 | 1998-02-17 | Case; Jeffrey D. | Method for secure key production |
US5602918A (en) * | 1995-12-22 | 1997-02-11 | Virtual Open Network Environment Corp. | Application level security system and method |
US5922073A (en) * | 1996-01-10 | 1999-07-13 | Canon Kabushiki Kaisha | System and method for controlling access to subject data using location data associated with the subject data and a requesting device |
US5862348A (en) * | 1996-02-09 | 1999-01-19 | Citrix Systems, Inc. | Method and apparatus for connecting a client node to a server node based on load levels |
US5754791A (en) * | 1996-03-25 | 1998-05-19 | I-Cube, Inc. | Hierarchical address translation system for a network switch |
US5872783A (en) * | 1996-07-24 | 1999-02-16 | Cisco Systems, Inc. | Arrangement for rendering forwarding decisions for packets transferred among network switches |
US6061650A (en) * | 1996-09-10 | 2000-05-09 | Nortel Networks Corporation | Method and apparatus for transparently providing mobile network functionality |
US5784463A (en) * | 1996-12-04 | 1998-07-21 | V-One Corporation | Token distribution, registration, and dynamic configuration of user entitlement for an application level security system and method |
US5905725A (en) * | 1996-12-16 | 1999-05-18 | Juniper Networks | High speed switching device |
US6078943A (en) * | 1997-02-07 | 2000-06-20 | International Business Machines Corporation | Method and apparatus for dynamic interval-based load balancing |
US5940507A (en) * | 1997-02-11 | 1999-08-17 | Connected Corporation | Secure file archive through encryption key management |
US6104716A (en) * | 1997-03-28 | 2000-08-15 | International Business Machines Corporation | Method and apparatus for lightweight secure communication tunneling over the internet |
US6351775B1 (en) * | 1997-05-30 | 2002-02-26 | International Business Machines Corporation | Loading balancing across servers in a computer network |
US6175924B1 (en) * | 1997-06-20 | 2001-01-16 | International Business Machines Corp. | Method and apparatus for protecting application data in secure storage areas |
US6292827B1 (en) * | 1997-06-20 | 2001-09-18 | Shore Technologies (1999) Inc. | Information transfer systems and method with dynamic distribution of data, control and management of information |
US5918074A (en) * | 1997-07-25 | 1999-06-29 | Neonet Llc | System architecture for and method of dual path data processing and management of packets and/or cells and the like |
US6061796A (en) * | 1997-08-26 | 2000-05-09 | V-One Corporation | Multi-access virtual private network |
US6038668A (en) * | 1997-09-08 | 2000-03-14 | Science Applications International Corporation | System, method, and medium for retrieving, organizing, and utilizing networked data |
US6405315B1 (en) * | 1997-09-11 | 2002-06-11 | International Business Machines Corporation | Decentralized remotely encrypted file system |
US5931947A (en) * | 1997-09-11 | 1999-08-03 | International Business Machines Corporation | Secure array of remotely encrypted storage devices |
US6249866B1 (en) * | 1997-09-16 | 2001-06-19 | Microsoft Corporation | Encrypting file system and method |
US6252878B1 (en) * | 1997-10-30 | 2001-06-26 | Cisco Technology, Inc. | Switched architecture access server |
US6052785A (en) * | 1997-11-21 | 2000-04-18 | International Business Machines Corporation | Multiple remote data access security mechanism for multitiered internet computer networks |
US6246771B1 (en) * | 1997-11-26 | 2001-06-12 | V-One Corporation | Session key recovery system and method |
US6202157B1 (en) * | 1997-12-08 | 2001-03-13 | Entrust Technologies Limited | Computer network security system and method having unilateral enforceable security policy provision |
US6374336B1 (en) * | 1997-12-24 | 2002-04-16 | Avid Technology, Inc. | Computer system and process for transferring multiple high bandwidth streams of data between multiple storage units and multiple applications in a scalable and reliable manner |
US6259699B1 (en) * | 1997-12-30 | 2001-07-10 | Nexabit Networks, Llc | System architecture for and method of processing packets and/or cells in a common switch |
US6084969A (en) * | 1997-12-31 | 2000-07-04 | V-One Corporation | Key encryption system and method, pager unit, and pager proxy for a two-way alphanumeric pager network |
US6378072B1 (en) * | 1998-02-03 | 2002-04-23 | Compaq Computer Corporation | Cryptographic system |
US6282652B1 (en) * | 1998-02-26 | 2001-08-28 | Sun Microsystems, Inc. | System for separately designating security requirements for methods invoked on a computer |
US6260155B1 (en) * | 1998-05-01 | 2001-07-10 | Quad Research | Network information server |
US6185681B1 (en) * | 1998-05-07 | 2001-02-06 | Stephen Zizzi | Method of transparent encryption and decryption for an electronic document management system |
US6505300B2 (en) * | 1998-06-12 | 2003-01-07 | Microsoft Corporation | Method and system for secure running of untrusted content |
US6219790B1 (en) * | 1998-06-19 | 2001-04-17 | Lucent Technologies Inc. | Centralized authentication, authorization and accounting server with support for multiple transport protocols and multiple client types |
US6253321B1 (en) * | 1998-06-19 | 2001-06-26 | Ssh Communications Security Ltd. | Method and arrangement for implementing IPSEC policy management using filter code |
US6263445B1 (en) * | 1998-06-30 | 2001-07-17 | Emc Corporation | Method and apparatus for authenticating connections to a storage system coupled to a network |
US6377577B1 (en) * | 1998-06-30 | 2002-04-23 | Cisco Technology, Inc. | Access control list processing in hardware |
US6078960A (en) * | 1998-07-03 | 2000-06-20 | Acceleration Software International Corporation | Client-side load-balancing in client server network |
US6185684B1 (en) * | 1998-08-28 | 2001-02-06 | Adobe Systems, Inc. | Secured document access control using recipient lists |
US6438612B1 (en) * | 1998-09-11 | 2002-08-20 | Ssh Communications Security, Ltd. | Method and arrangement for secure tunneling of data between virtual routers |
US6266705B1 (en) * | 1998-09-29 | 2001-07-24 | Cisco Systems, Inc. | Look up mechanism and associated hash table for a network switch |
US6438652B1 (en) * | 1998-10-09 | 2002-08-20 | International Business Machines Corporation | Load balancing cooperating cache servers by shifting forwarded request |
US6594763B1 (en) * | 1998-10-27 | 2003-07-15 | Sprint Communications Company L.P. | Object-based security system |
US6519636B2 (en) * | 1998-10-28 | 2003-02-11 | International Business Machines Corporation | Efficient classification, manipulation, and control of network transmissions by associating network flows with rule based functions |
US6272522B1 (en) * | 1998-11-17 | 2001-08-07 | Sun Microsystems, Incorporated | Computer data packet switching and load balancing system using a general-purpose multiprocessor architecture |
US6424621B1 (en) * | 1998-11-17 | 2002-07-23 | Sun Microsystems, Inc. | Software interface between switching module and operating system of a data packet switching and load balancing system |
US6199077B1 (en) * | 1998-12-08 | 2001-03-06 | Yodlee.Com, Inc. | Server-side web summary generation and presentation |
US6571287B1 (en) * | 1999-01-14 | 2003-05-27 | Cisco Technology, Inc. | Distributed database system with authoritative node |
US6542992B1 (en) * | 1999-01-26 | 2003-04-01 | 3Com Corporation | Control and coordination of encryption and compression between network entities |
US6560217B1 (en) * | 1999-02-25 | 2003-05-06 | 3Com Corporation | Virtual home agent service using software-replicated home agents |
US6505254B1 (en) * | 1999-04-19 | 2003-01-07 | Cisco Technology, Inc. | Methods and apparatus for routing requests in a network |
US6529950B1 (en) * | 1999-06-17 | 2003-03-04 | International Business Machines Corporation | Policy-based multivariate application-level QoS negotiation for multimedia services |
US6845395B1 (en) * | 1999-06-30 | 2005-01-18 | Emc Corporation | Method and apparatus for identifying network devices on a storage network |
US6584508B1 (en) * | 1999-07-13 | 2003-06-24 | Networks Associates Technology, Inc. | Advanced data guard having independently wrapped components |
US6286104B1 (en) * | 1999-08-04 | 2001-09-04 | Oracle Corporation | Authentication and authorization in a multi-tier relational database management system |
US20010016907A1 (en) * | 1999-12-30 | 2001-08-23 | Lg Electronics, Inc. | Security protocol structure in application layer |
US6539483B1 (en) * | 2000-01-12 | 2003-03-25 | International Business Machines Corporation | System and method for generation VPN network policies |
US6901403B1 (en) * | 2000-03-02 | 2005-05-31 | Quovadx, Inc. | XML presentation of general-purpose data sources |
US20020010679A1 (en) * | 2000-07-06 | 2002-01-24 | Felsher David Paul | Information record infrastructure, system and method |
US6354886B1 (en) * | 2000-09-08 | 2002-03-12 | Advanced Connecteck Inc. | Electrical connector |
US20020091734A1 (en) * | 2000-11-13 | 2002-07-11 | Digital Door, Inc. | Data security system and method |
US20030046366A1 (en) * | 2001-02-13 | 2003-03-06 | Shishir Pardikar | System and method for providing transparent access to distributed authoring and versioning files including encrypted files |
US20030074355A1 (en) * | 2001-03-23 | 2003-04-17 | Restaurant Services, Inc. ("RSI"). | System, method and computer program product for a secure supply chain management framework |
US20030056095A1 (en) * | 2001-09-14 | 2003-03-20 | International Business Machines Corporation | Securing decrypted files in a shared environment |
US6596718B1 (en) * | 2001-11-27 | 2003-07-22 | Hoffmann-La Roche Inc. | 7-Morpholin-4yl-benzothiazole amide derivatives |
US6850446B1 (en) * | 2001-12-06 | 2005-02-01 | Virage Logic Corporation | Memory cell sensing with low noise generation |
US20030112977A1 (en) * | 2001-12-18 | 2003-06-19 | Dipankar Ray | Communicating data securely within a mobile communications network |
US6584023B1 (en) * | 2002-01-09 | 2003-06-24 | International Business Machines Corporation | System for implementing a column redundancy scheme for arrays with controls that span multiple data bits |
Cited By (164)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090328186A1 (en) * | 2002-04-25 | 2009-12-31 | Dennis Vance Pollutro | Computer security system |
US8910241B2 (en) | 2002-04-25 | 2014-12-09 | Citrix Systems, Inc. | Computer security system |
US9781114B2 (en) | 2002-04-25 | 2017-10-03 | Citrix Systems, Inc. | Computer security system |
US8190573B2 (en) | 2003-03-19 | 2012-05-29 | Hitachi, Ltd. | File storage service system, file management device, file management method, ID denotative NAS server and file reading method |
US20090089298A1 (en) * | 2003-03-19 | 2009-04-02 | Hitachi, Ltd. | File Storage Service System, File Management Device, File Management Method, ID Denotative NAS Server and File Reading Method |
US8700573B2 (en) | 2003-03-19 | 2014-04-15 | Hitachi, Ltd. | File storage service system, file management device, file management method, ID denotative NAS server and file reading method |
US7469260B2 (en) | 2003-03-19 | 2008-12-23 | Hitachi, Ltd. | File storage service system, file management device, file management method, ID denotative NAS server and file reading method |
US20040205960A1 (en) * | 2003-04-15 | 2004-10-21 | Mitsuhiko Miyazaki | Electric part handling device |
US7900240B2 (en) | 2003-05-28 | 2011-03-01 | Citrix Systems, Inc. | Multilayer access control security system |
US8528047B2 (en) | 2003-05-28 | 2013-09-03 | Citrix Systems, Inc. | Multilayer access control security system |
US20100325697A1 (en) * | 2003-05-28 | 2010-12-23 | Citrix Systems, Inc. | Multilayer access control security system |
US20040243835A1 (en) * | 2003-05-28 | 2004-12-02 | Andreas Terzis | Multilayer access control security system |
US20050038996A1 (en) * | 2003-06-24 | 2005-02-17 | Randy Meyerson | Method and apparatus for controlling access restrictions for media playback |
US8181022B2 (en) * | 2003-06-24 | 2012-05-15 | Realnetworks, Inc. | Method and apparatus for controlling access restrictions for media playback |
US20050108303A1 (en) * | 2003-10-31 | 2005-05-19 | Carter Richard D. | Remote backup and restore technique |
US20050171961A1 (en) * | 2004-01-30 | 2005-08-04 | Microsoft Corporation | Fingerprinting software applications |
US7549171B2 (en) * | 2004-06-10 | 2009-06-16 | Hitachi, Ltd. | Method and apparatus for validation of application data on a storage system |
US20050278529A1 (en) * | 2004-06-10 | 2005-12-15 | Hitachi, Ltd. | Method and apparatus for validation of application data on a storage system |
US20060130123A1 (en) * | 2004-12-14 | 2006-06-15 | International Business Machines Corporation | Method for authenticating database connections in a multi-tier environment |
US7526793B2 (en) * | 2004-12-14 | 2009-04-28 | International Business Machines Corporation | Method for authenticating database connections in a multi-tier environment |
US7584209B2 (en) * | 2005-02-04 | 2009-09-01 | Microsoft Corporation | Flexible file format for updating an address book |
US20060179066A1 (en) * | 2005-02-04 | 2006-08-10 | Microsoft Corporation | Flexible file format for updating an address book |
US20080301179A1 (en) * | 2005-04-14 | 2008-12-04 | Microsoft Corporation | Client side indexing of offline address book files |
US20070094315A1 (en) * | 2005-05-04 | 2007-04-26 | Samsung Electronics Co., Ltd. | Apparatus and method for storing and managing additional data in file system |
US20120023557A1 (en) * | 2005-09-06 | 2012-01-26 | Fortinet, Inc. | Method, apparatus, signals, and medium for managing transfer of data in a data network |
US9729655B2 (en) | 2005-09-06 | 2017-08-08 | Fortinet, Inc. | Managing transfer of data in a data network |
US8856884B2 (en) * | 2005-09-06 | 2014-10-07 | Fortinet, Inc. | Method, apparatus, signals, and medium for managing transfer of data in a data network |
US9118719B2 (en) | 2005-09-06 | 2015-08-25 | Fortinet, Inc. | Method, apparatus, signals, and medium for managing transfer of data in a data network |
US8606939B1 (en) * | 2005-11-14 | 2013-12-10 | Cisco Technology, Inc. | Method of configuring an on-demand secure connection between a control site and a client network |
US9576131B2 (en) | 2006-04-06 | 2017-02-21 | Juniper Networks, Inc. | Malware detection system and method for mobile platforms |
WO2007117636A3 (en) * | 2006-04-06 | 2008-04-24 | Smobile Systems Inc | Malware detection system and method for comprssed data on mobile platforms |
US9542555B2 (en) | 2006-04-06 | 2017-01-10 | Pulse Secure, Llc | Malware detection system and method for compressed data on mobile platforms |
WO2007117636A2 (en) * | 2006-04-06 | 2007-10-18 | Smobile Systems, Inc. | Malware detection system and method for comprssed data on mobile platforms |
US20070240219A1 (en) * | 2006-04-06 | 2007-10-11 | George Tuvell | Malware Detection System And Method for Compressed Data on Mobile Platforms |
US9009818B2 (en) | 2006-04-06 | 2015-04-14 | Pulse Secure, Llc | Malware detection system and method for compressed data on mobile platforms |
US8886822B2 (en) | 2006-04-12 | 2014-11-11 | Citrix Systems, Inc. | Systems and methods for accelerating delivery of a computing environment to a remote user |
US8151323B2 (en) | 2006-04-12 | 2012-04-03 | Citrix Systems, Inc. | Systems and methods for providing levels of access and action control via an SSL VPN appliance |
US20070245409A1 (en) * | 2006-04-12 | 2007-10-18 | James Harris | Systems and Methods for Providing Levels of Access and Action Control Via an SSL VPN Appliance |
US20070256142A1 (en) * | 2006-04-18 | 2007-11-01 | Hartung Michael H | Encryption of data in storage systems |
US7752676B2 (en) | 2006-04-18 | 2010-07-06 | International Business Machines Corporation | Encryption of data in storage systems |
US20080034419A1 (en) * | 2006-08-03 | 2008-02-07 | Citrix Systems, Inc. | Systems and Methods for Application Based Interception of SSL/VPN Traffic |
US9253193B2 (en) | 2006-08-03 | 2016-02-02 | Citrix Systems, Inc. | Systems and methods for policy based triggering of client-authentication at directory level granularity |
US9497198B2 (en) | 2006-08-03 | 2016-11-15 | Citrix Systems, Inc. | Systems and methods for application based interception of SSL/VPN traffic |
US7843912B2 (en) | 2006-08-03 | 2010-11-30 | Citrix Systems, Inc. | Systems and methods of fine grained interception of network communications on a virtual private network |
US8566925B2 (en) | 2006-08-03 | 2013-10-22 | Citrix Systems, Inc. | Systems and methods for policy based triggering of client-authentication at directory level granularity |
US20080034418A1 (en) * | 2006-08-03 | 2008-02-07 | Citrix Systems, Inc. | Systems and Methods for Application Based Interception SSI/VPN Traffic |
US8869262B2 (en) | 2006-08-03 | 2014-10-21 | Citrix Systems, Inc. | Systems and methods for application based interception of SSL/VPN traffic |
US20080031235A1 (en) * | 2006-08-03 | 2008-02-07 | Citrix Systems, Inc. | Systems and Methods of Fine Grained Interception of Network Communications on a Virtual Private Network |
US8495181B2 (en) | 2006-08-03 | 2013-07-23 | Citrix Systems, Inc | Systems and methods for application based interception SSI/VPN traffic |
US20080034410A1 (en) * | 2006-08-03 | 2008-02-07 | Citrix Systems, Inc. | Systems and Methods for Policy Based Triggering of Client-Authentication at Directory Level Granularity |
US9294439B2 (en) | 2006-08-03 | 2016-03-22 | Citrix Systems, Inc. | Systems and methods for application-based interception of SSL/VPN traffic |
US8694684B2 (en) * | 2006-08-21 | 2014-04-08 | Citrix Systems, Inc. | Systems and methods of symmetric transport control protocol compression |
US20080046616A1 (en) * | 2006-08-21 | 2008-02-21 | Citrix Systems, Inc. | Systems and Methods of Symmetric Transport Control Protocol Compression |
US8245050B1 (en) | 2006-09-29 | 2012-08-14 | Netapp, Inc. | System and method for initial key establishment using a split knowledge protocol |
US8191162B1 (en) * | 2007-04-10 | 2012-05-29 | Zafesoft Inc. | System and method for securing and tracking files |
US8611542B1 (en) | 2007-04-26 | 2013-12-17 | Netapp, Inc. | Peer to peer key synchronization |
US8824686B1 (en) | 2007-04-27 | 2014-09-02 | Netapp, Inc. | Cluster key synchronization |
US20100185852A1 (en) * | 2007-07-05 | 2010-07-22 | Hitachi Software Engineering Co., Ltd. | Encryption and decryption method for shared encrypted file |
US8984620B2 (en) * | 2007-07-06 | 2015-03-17 | Cyberoam Technologies Pvt. Ltd. | Identity and policy-based network security and management system and method |
US20100100949A1 (en) * | 2007-07-06 | 2010-04-22 | Abhilash Vijay Sonwane | Identity and policy-based network security and management system and method |
US8196182B2 (en) | 2007-08-24 | 2012-06-05 | Netapp, Inc. | Distributed management of crypto module white lists |
US9774445B1 (en) | 2007-09-04 | 2017-09-26 | Netapp, Inc. | Host based rekeying |
US20110040966A1 (en) * | 2007-09-06 | 2011-02-17 | Siemens Entreprise Communications Gmbh & Co. Kg | Method and device for authenticating transmitted user data |
US8713310B2 (en) * | 2007-09-06 | 2014-04-29 | Siemens Enterprise Communications Gmbh & Co. Kg | Method and device for authenticating transmitted user data |
US11841970B1 (en) * | 2007-09-26 | 2023-12-12 | Trend Micro Incorporated | Systems and methods for preventing information leakage |
US8516539B2 (en) | 2007-11-09 | 2013-08-20 | Citrix Systems, Inc | System and method for inferring access policies from access event records |
US20090138939A1 (en) * | 2007-11-09 | 2009-05-28 | Applied Identity | System and method for inferring access policies from access event records |
US20090133110A1 (en) * | 2007-11-13 | 2009-05-21 | Applied Identity | System and method using globally unique identities |
US8990910B2 (en) | 2007-11-13 | 2015-03-24 | Citrix Systems, Inc. | System and method using globally unique identities |
US8495357B2 (en) | 2007-12-19 | 2013-07-23 | International Business Machines Corporation | Data security policy enforcement |
US20090165076A1 (en) * | 2007-12-19 | 2009-06-25 | International Business Machines Corporation | Method, system, and computer program product for data security policy enforcement |
US8176562B1 (en) * | 2007-12-21 | 2012-05-08 | Symantec Corporation | Privacy protection during remote administration |
US20090241170A1 (en) * | 2008-03-19 | 2009-09-24 | Applied Identity | Access, priority and bandwidth management based on application identity |
US9240945B2 (en) | 2008-03-19 | 2016-01-19 | Citrix Systems, Inc. | Access, priority and bandwidth management based on application identity |
US20090265353A1 (en) * | 2008-04-16 | 2009-10-22 | Murali Vaddagiri | Method and system for extending role based access control across network file systems |
US8943575B2 (en) | 2008-04-30 | 2015-01-27 | Citrix Systems, Inc. | Method and system for policy simulation |
US20090292957A1 (en) * | 2008-05-21 | 2009-11-26 | International Business Machines Corporation | System for repeated unmount attempts of distributed file systems |
US7886187B2 (en) * | 2008-05-21 | 2011-02-08 | International Business Machines Corporation | System for repeated unmount attempts of distributed file systems |
US8320569B2 (en) * | 2008-10-07 | 2012-11-27 | Wideman Roderick B | Generating unique aliases for keys used with tape libraries |
US20100086135A1 (en) * | 2008-10-07 | 2010-04-08 | Wideman Roderick B | Generating unique aliases for keys used with tape libraries |
US8990573B2 (en) | 2008-11-10 | 2015-03-24 | Citrix Systems, Inc. | System and method for using variable security tag location in network communications |
US20090144818A1 (en) * | 2008-11-10 | 2009-06-04 | Applied Identity | System and method for using variable security tag location in network communications |
US10367815B2 (en) * | 2009-03-17 | 2019-07-30 | Sophos Limited | Protecting sensitive information from a secure data store |
US10997310B2 (en) | 2009-03-17 | 2021-05-04 | Sophos Limited | Protecting sensitive information from a secure data store |
US11763019B2 (en) | 2009-03-17 | 2023-09-19 | Sophos Limited | Protecting sensitive information from a secure data store |
US9210100B2 (en) | 2009-05-01 | 2015-12-08 | Citrix Systems, Inc. | Systems and methods for establishing a cloud bridge between virtual storage resources |
US20110022812A1 (en) * | 2009-05-01 | 2011-01-27 | Van Der Linden Rob | Systems and methods for establishing a cloud bridge between virtual storage resources |
US8578076B2 (en) | 2009-05-01 | 2013-11-05 | Citrix Systems, Inc. | Systems and methods for establishing a cloud bridge between virtual storage resources |
US20110225074A1 (en) * | 2010-03-12 | 2011-09-15 | Microsoft Corporation | System and method for providing information as a service via web services |
US9148283B1 (en) * | 2010-05-18 | 2015-09-29 | Google Inc. | Storing encrypted objects |
US8650657B1 (en) | 2010-05-18 | 2014-02-11 | Google Inc. | Storing encrypted objects |
US8607358B1 (en) | 2010-05-18 | 2013-12-10 | Google Inc. | Storing encrypted objects |
US8601600B1 (en) | 2010-05-18 | 2013-12-03 | Google Inc. | Storing encrypted objects |
US8601263B1 (en) * | 2010-05-18 | 2013-12-03 | Google Inc. | Storing encrypted objects |
US9202049B1 (en) | 2010-06-21 | 2015-12-01 | Pulse Secure, Llc | Detecting malware on mobile devices |
US10320835B1 (en) | 2010-06-21 | 2019-06-11 | Pulse Secure, Llc | Detecting malware on mobile devices |
US9141808B1 (en) * | 2010-10-29 | 2015-09-22 | Symantec Corporation | Data loss prevention |
CN102065148A (en) * | 2011-01-12 | 2011-05-18 | 无锡网芯科技有限公司 | Memory system access authorizing method based on communication network |
US10402546B1 (en) | 2011-10-11 | 2019-09-03 | Citrix Systems, Inc. | Secure execution of enterprise applications on mobile devices |
US10044757B2 (en) | 2011-10-11 | 2018-08-07 | Citrix Systems, Inc. | Secure execution of enterprise applications on mobile devices |
US10469534B2 (en) | 2011-10-11 | 2019-11-05 | Citrix Systems, Inc. | Secure execution of enterprise applications on mobile devices |
US10063595B1 (en) | 2011-10-11 | 2018-08-28 | Citrix Systems, Inc. | Secure execution of enterprise applications on mobile devices |
US11134104B2 (en) | 2011-10-11 | 2021-09-28 | Citrix Systems, Inc. | Secure execution of enterprise applications on mobile devices |
US12141321B1 (en) | 2011-12-15 | 2024-11-12 | United Services Automobile Association (Usaa) | Rules-based data access systems and methods |
US11295033B1 (en) | 2011-12-15 | 2022-04-05 | United Services Automobile Association (Usaa) | Rules-based data access systems and methods |
US10467430B1 (en) | 2011-12-15 | 2019-11-05 | United Services Automobile Association (Usaa) | Rules-based data access systems and methods |
US9830473B1 (en) * | 2011-12-15 | 2017-11-28 | United Services Automobile Association (Usaa) | Rules-based data access systems and methods |
US11763027B1 (en) | 2011-12-15 | 2023-09-19 | United Services Automobile Association (Usaa) | Rules-based data access systems and methods |
US8726338B2 (en) | 2012-02-02 | 2014-05-13 | Juniper Networks, Inc. | Dynamic threat protection in mobile networks |
US9177169B2 (en) | 2012-02-13 | 2015-11-03 | Wwpass Corporation | Secure digital storage |
WO2013122875A1 (en) * | 2012-02-13 | 2013-08-22 | Eugene Shablygin | Secure digital storage |
US9973489B2 (en) | 2012-10-15 | 2018-05-15 | Citrix Systems, Inc. | Providing virtualized private network tunnels |
US9971585B2 (en) | 2012-10-16 | 2018-05-15 | Citrix Systems, Inc. | Wrapping unmanaged applications on a mobile device |
US10545748B2 (en) | 2012-10-16 | 2020-01-28 | Citrix Systems, Inc. | Wrapping unmanaged applications on a mobile device |
US10908896B2 (en) | 2012-10-16 | 2021-02-02 | Citrix Systems, Inc. | Application wrapping for application management framework |
US10476885B2 (en) | 2013-03-29 | 2019-11-12 | Citrix Systems, Inc. | Application with multiple operation modes |
US9985850B2 (en) | 2013-03-29 | 2018-05-29 | Citrix Systems, Inc. | Providing mobile device management functionalities |
US10701082B2 (en) | 2013-03-29 | 2020-06-30 | Citrix Systems, Inc. | Application with multiple operation modes |
US10284627B2 (en) | 2013-03-29 | 2019-05-07 | Citrix Systems, Inc. | Data management for an application with multiple operation modes |
US10965734B2 (en) | 2013-03-29 | 2021-03-30 | Citrix Systems, Inc. | Data management for an application with multiple operation modes |
US10097584B2 (en) | 2013-03-29 | 2018-10-09 | Citrix Systems, Inc. | Providing a managed browser |
WO2015016993A3 (en) * | 2013-04-26 | 2015-04-16 | Vormetric, Inc. | Encryption solution for protecting file systems in multi-host clusters |
US9202077B2 (en) | 2013-04-26 | 2015-12-01 | Vormetric, Inc. | Encryption solution for protecting file systems in multi-host clusters |
US10038673B1 (en) | 2013-10-15 | 2018-07-31 | Progress Software Corporation | On-premises data access and firewall tunneling |
US10372929B1 (en) | 2013-10-15 | 2019-08-06 | Progress Software Corporation | Secure file transfer and notification server |
US9531678B1 (en) | 2013-10-15 | 2016-12-27 | Progress Software Corporation | On-premises data access and firewall tunneling |
US9473506B1 (en) * | 2013-10-15 | 2016-10-18 | Progress Software Corporation | Secure file transfer and notification server |
US10623377B1 (en) | 2013-10-15 | 2020-04-14 | Progress Software Corporation | On-premises data access and firewall tunneling |
US10162971B2 (en) | 2014-04-28 | 2018-12-25 | Topia Technology, Inc. | Systems and methods for cryptographic-chain-based group membership content sharing |
WO2016010604A3 (en) * | 2014-04-28 | 2016-03-31 | Topia Technology, Inc. | Systems and methods for security hardening of data in transit and at rest via segmentation, shuffling and multi-key encryption |
US10657270B2 (en) | 2014-04-28 | 2020-05-19 | Topia Technology, Inc. | Systems and methods for cryptographic-chain-based group membership content sharing |
US9990502B2 (en) | 2014-04-28 | 2018-06-05 | Topia Technology, Inc. | Systems and methods for security hardening of data in transit and at rest via segmentation, shuffling and multi-key encryption |
US11042653B2 (en) | 2014-04-28 | 2021-06-22 | Topia Technology, Inc. | Systems and methods for cryptographic-chain-based group membership content sharing |
US11783056B2 (en) | 2014-04-28 | 2023-10-10 | Topia Technology, Inc. | Systems and methods for cryptographic-chain-based group membership content sharing |
CN105279030A (en) * | 2014-06-10 | 2016-01-27 | 财团法人资讯工业策进会 | Synchronization device and method |
US20170041305A1 (en) * | 2015-08-04 | 2017-02-09 | Electronics And Telecommunications Research Institute | Apparatus and method for process authentication in redundant system |
US10205714B2 (en) * | 2015-08-04 | 2019-02-12 | Electronics And Telecommunications Research Institute | Apparatus and method for process authentication in redundant system |
US10089028B2 (en) * | 2016-05-27 | 2018-10-02 | Dell Products L.P. | Remote secure drive discovery and access |
US10891370B2 (en) * | 2016-11-23 | 2021-01-12 | Blackberry Limited | Path-based access control for message-based operating systems |
US10558818B2 (en) * | 2017-02-22 | 2020-02-11 | Red Hat, Inc. | Supporting security access controls in an overlay filesystem |
US11775332B2 (en) | 2017-07-01 | 2023-10-03 | Intel Corporation | Technologies for memory replay prevention using compressive encryption |
US11275603B2 (en) * | 2017-07-01 | 2022-03-15 | Intel Corporation | Technologies for memory replay prevention using compressive encryption |
US11677724B1 (en) | 2017-11-30 | 2023-06-13 | Progress Software Corporation | Data access and firewall tunneling using a custom socket factory |
US12113776B1 (en) | 2017-11-30 | 2024-10-08 | Progress Software Corporation | Data access and firewall tunneling using a custom socket factory |
US11303613B1 (en) | 2017-11-30 | 2022-04-12 | Progress Software Corporation | Data access and firewall tunneling using a custom socket factory |
US10616182B1 (en) | 2017-11-30 | 2020-04-07 | Progress Software Corporation | Data access and firewall tunneling using a custom socket factory |
US11188658B2 (en) | 2019-09-11 | 2021-11-30 | International Business Machines Corporation | Concurrent enablement of encryption on an operational path at a storage port |
US11206144B2 (en) | 2019-09-11 | 2021-12-21 | International Business Machines Corporation | Establishing a security association and authentication to secure communication between an initiator and a responder |
US11354455B2 (en) | 2019-09-11 | 2022-06-07 | International Business Machines Corporation | Maintenance of access for security enablement on a host system |
US11188659B2 (en) | 2019-09-11 | 2021-11-30 | International Business Machines Corporation | Concurrent enablement of encryption on an operational path at a host port |
US11201749B2 (en) | 2019-09-11 | 2021-12-14 | International Business Machines Corporation | Establishing a security association and authentication to secure communication between an initiator and a responder |
DE112020003699B4 (en) | 2019-09-11 | 2023-04-20 | International Business Machines Corporation | SIMULTANEOUSLY ENABLE ENCRYPTION ON AN OPERATIONAL PATH ON A MEMORY PORT |
DE112020003731B4 (en) | 2019-09-11 | 2023-04-20 | International Business Machines Corporation | SIMULTANEOUSLY ENABLE ENCRYPTION ON AN OPERATIONAL PATH ON A HOST MEMORY PORT |
DE112020003731T5 (en) | 2019-09-11 | 2022-05-05 | International Business Machines Corporation | SIMULTANEOUSLY ENABLE ENCRYPTION ON AN OPERATIONAL PATH ON A HOST MEMORY PORT |
US11308243B2 (en) | 2019-09-11 | 2022-04-19 | International Business Machines Corporation | Maintenance of access for security enablement in a storage device |
US11303441B2 (en) | 2019-09-25 | 2022-04-12 | International Business Machines Corporation | Reverting from a new security association to a previous security association in response to an error during a rekey operation |
US11245521B2 (en) | 2019-09-25 | 2022-02-08 | International Business Machines Corporation | Reverting from a new security association to a previous security association in response to an error during a rekey operation |
US11477725B2 (en) * | 2020-06-30 | 2022-10-18 | Amazon Technologies, Inc. | Multiple access points for data containers |
US11864095B2 (en) | 2020-06-30 | 2024-01-02 | Amazon Technologies, Inc. | Multiple access points for data containers |
US20220150241A1 (en) * | 2020-11-11 | 2022-05-12 | Hewlett Packard Enterprise Development Lp | Permissions for backup-related operations |
US12088583B2 (en) * | 2020-11-11 | 2024-09-10 | Hewlett Packard Enterprise Development Lp | Permissions for backup-related operations |
US12034805B2 (en) * | 2020-12-04 | 2024-07-09 | Cloudflare, Inc. | State management and storage with policy enforcement in a distributed cloud computing network |
US20220182448A1 (en) * | 2020-12-04 | 2022-06-09 | Cloudflare, Inc. | State Management and Storage With Policy Enforcement in a Distributed Cloud Computing Network |
CN113438234A (en) * | 2021-06-24 | 2021-09-24 | 字极(上海)网络科技有限公司 | Network data security protection encryption method |
Also Published As
Publication number | Publication date |
---|---|
AU2003243780A1 (en) | 2004-02-09 |
JP5067771B2 (en) | 2012-11-07 |
EP1540481A1 (en) | 2005-06-15 |
EP1540481A4 (en) | 2010-08-11 |
US6678828B1 (en) | 2004-01-13 |
WO2004010304A1 (en) | 2004-01-29 |
JP2005534104A (en) | 2005-11-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6931530B2 (en) | Secure network file access controller implementing access control and auditing | |
US6678828B1 (en) | Secure network file access control system | |
US7334124B2 (en) | Logical access block processing protocol for transparent secure file storage | |
US7143288B2 (en) | Secure file system server architecture and methods | |
US11991279B2 (en) | Resilient secret sharing cloud based architecture for data vault | |
US8335915B2 (en) | Encryption based security system for network storage | |
JP6118778B2 (en) | System and method for securing data in motion | |
US8321921B1 (en) | Method and apparatus for providing authentication and encryption services by a software as a service platform | |
US9424432B2 (en) | Systems and methods for secure and persistent retention of sensitive information | |
US10007767B1 (en) | System and method for securing tenant data on a local appliance prior to delivery to a SaaS data center hosted application service | |
US8706800B1 (en) | Client device systems and methods for providing secure access to application services and associated client data hosted by an internet coupled platform | |
Slamanig et al. | On cloud storage and the cloud of clouds approach | |
JP2013524352A (en) | System and method for securing data in motion | |
JP2007507760A (en) | Secure cluster configuration dataset transfer protocol | |
EP1388061A2 (en) | Encryption based security system for network storage | |
CN109936555A (en) | A data storage method, device and system based on cloud platform | |
Clark et al. | Secure compartmented data access over an untrusted network using a COTS-based architecture | |
Munir | Computing Database Service | |
Lin | A firewall approach to personal knowledge system | |
Izquierdo et al. | Security issues in network file systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |