Patent Publication Number: US-RE47443-E

Title: Document security system that permits external users to gain access to secured files

Description:
CROSS-REFERENCE TO RELATED APPLICATION 
     This is a Division of U.S. application Ser. No. 10/262,218, filed Sep. 30, 2002, now allowed, which is hereby incorporated by reference in its entirety for all purposes. 
     U.S. application Ser. No. 10/262,218 is related to U.S. patent application Ser. No. 10/075,194, filed Feb. 12, 2002, now U.S. Pat. No. 8,065,713 issued on Nov. 22, 2011 and entitled “SYSTEM AND METHOD FOR PROVIDING MULTI-LOCATION ACCESS MANAGEMENT TO SECURED ITEMS,” which is hereby incorporated by reference in its entirety for all purposes. 
    
    
     BACKGROUND OF THE INVENTION 
     1. Field of the Invention 
     The present invention relates to security systems for data and, more particularly, to security systems that protect data in an inter/intra enterprise environment. 
     2. Description of Related Art 
     The Internet is the fastest growing telecommunications medium in history. This growth and the easy access it affords have significantly enhanced the opportunity to use advanced information technology for both the public and private sectors. It provides unprecedented opportunities for interaction and data sharing among businesses and individuals. However, the advantages provided by the Internet come with a significantly greater element of risk to the confidentiality and integrity of information. The Internet is an open, public and international network of interconnected computers and electronic devices. Without proper security measures, an unauthorized person or machine may intercept any information traveling across the Internet, and may even get access to proprietary information stored in computers that interconnect to the Internet, but are otherwise generally inaccessible by the public. 
     As organizations become more dependent on networks for business transactions, data sharing, and everyday communications, their networks have to be increasingly accessible to customers, employees, suppliers, partners, contractors and telecommuters. Unfortunately, as the accessibility increases, so does the exposure of critical data that is stored on the network. Hackers can threaten all kinds of valuable corporate information resources including intellectual property (e.g., trade secrets, software code, and prerelease competitive data), sensitive employee information (e.g., payroll figures and HR records), and classified information (e.g., passwords, databases, customer records, product information, and financial data). Thus data security is becoming increasingly mission-critical. 
     There are many efforts in progress aimed at protecting proprietary information traveling across the Internet and controlling access to computers carrying the proprietary information. Every day hundreds of thousands of people interact electronically, whether it is through e-mail, e-commerce (business conducted over the Internet), ATM machines or cellular phones. The perpetual increase of information transmitted electronically has led to an increased reliance on cryptography. 
     In protecting the proprietary information traveling across the Internet, one or more cryptographic techniques are often used to secure a private communication session between two communicating computers on the Internet. Cryptographic techniques provide a way to transmit information across an unsecure communication channel without disclosing the contents of the information to anyone eavesdropping on the communication channel. An encryption process is a cryptographic technique whereby one party can protect the contents of data in transit from access by an unauthorized third party, yet the intended party can read the data using a corresponding decryption process. 
     Many organizations have deployed firewalls, Virtual Private Networks (VPNs), and Intrusion Detection Systems (IDS) to provide protection. Unfortunately, these various security means have been proven insufficient to reliably protect proprietary information residing on their internal networks. For example, depending on passwords to access sensitive documents from within often causes security breaches when the password of a few characters long is leaked or detected. 
     Enterprise security solutions secure data within an enterprise premise (e.g., internal networks). Some enterprise security solutions prohibit external users (clients) to have any access to secure data. Unfortunately, such enterprise security solutions are not suitable for use in a collaborative environment in which both regular internal users (e.g., employees) and external users (e.g., consultants) need to access some secured data of the enterprise. 
     Thus, there is a need for improved approaches to enable file security systems to permit external users to access secured data without compromising the integrity of an enterprise security system. 
     SUMMARY OF THE INVENTION 
     The invention relates to an improved system and approaches for exchanging secured files (e.g., documents) between internal users of an organization and external users. A file security system of the organization operates to protect the files of the organization and thus prevents or limits external users from accessing internal documents. Although the external users are unaffiliated with the organization (i.e., not employees or contractors), the external users often have working relationships with internal users. These working relationships (also referred to herein as partner relationships) often present the need for file (document) exchange. According to one aspect of the invention, external users having working relationships with internal users are able to be given limited user privileges within the file security system, such that restricted file (document) exchange is permitted between such internal and external users. 
     The invention can be implemented in numerous ways, including as a method, system, device, and computer readable medium. Several embodiments of the invention are discussed below. 
     An embodiment of the present invention provides a system that includes a server including an access manager configured to restrict access to files of an organization and maintain at least encryption keys for internal and external users and an external access server operatively connected to the server and coupled between the server and a data network. The data network is configured to allow the external users use of the external access server. In addition, the external access server is configured to permit file exchange between the internal users and the external users via the server. 
     Another embodiment of the present invention provides a method that includes restricting access to files in a server including an access manager that restricts access to files of an organization and maintains at least encryption keys for internal and external users, permitting file exchange between the internal users and the external users through an external access server operatively connected to the server and coupled between the server and a data network and using the data network to allow the external users to interact with the external access server. 
     A further embodiment of the present invention provides a computer-readable storage device having instructions stored thereon, execution of which, by a computing device, causes the computing device to perform operations including restricting access to files in a server, including an access manager that restricts access to files of an organization and maintains at least encryption keys for internal and external users, permitting file exchange between the internal users and the external users through an external access server operatively connected to the server and coupled between the server and a data network and using the data network to allow the external users to interact with the external access server. 
     Other objects, features, and advantages of the present invention will become apparent upon examining the following detailed description of an embodiment thereof, taken in conjunction with the attached drawings. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       The present invention will be readily understood by the following detailed description in conjunction with the accompanying drawings, wherein like reference numerals designate like structural elements, and in which: 
         FIG. 1  is a block diagram of a document security system according to one embodiment of the invention. 
         FIG. 2  is a flow diagram of relationship setup processing according to one embodiment of the invention. 
         FIG. 3  is a flow diagram of document delivery processing according to one embodiment of the invention. 
         FIG. 4  is a flow diagram of document access processing according to one embodiment of the invention. 
         FIG. 5  is a flow diagram of access control processing according to one embodiment of the invention. 
         FIG. 6  is a flow diagram of client-side document delivery processing according to one embodiment of the invention. 
         FIG. 7  is a flow diagram of server-side document delivery processing according to one embodiment of the invention. 
         FIG. 8  shows a basic security system in which the invention may be practiced in accordance with one embodiment thereof. 
         FIG. 9  shows an exemplary data structure of a secured file that may be used in one embodiment of the invention. 
     
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
     The invention relates to an improved system and approaches for exchanging secured files (e.g., documents) between internal users of an organization and external users. A file security system of the organization operates to protect the files of the organization and thus prevents or limits external users from accessing internal documents. Although the external users are unaffiliated with the organization (i.e., not employees or contractors), the external users often have working relationships with internal users. These working relationships (also referred to herein as partner relationships) often present the need for file (document) exchange. According to one aspect of the invention, external users having working relationships with internal users are able to be given limited user privileges within the file security system, such that restricted file (document) exchange is permitted between such internal and external users. The invention is suitable for use in an enterprise file security system. 
     A file security system (or document security system) serves to limit access to files (documents) to authorized users. Often, an organization, such as a company, would use a file security system to limit access to its files (documents). For example, users of a group might be able to access files (documents) pertaining to the group, whereas other users not within the group would not be able to access such files (documents). Such access, when permitted, would allow a user of the group to retrieve a copy of the file (document) via a data network. 
     As used herein, a user may mean a human user, a software agent, a group of users, member of a group of users, a device and/or application. Besides a human user who needs to access a secured document, a software application or agent sometimes needs to access secured files in order to proceed. Accordingly, unless specifically stated, the “user” as used herein does not necessarily pertain to a human being. 
     Secured files are files that require one or more keys, passwords, access privileges, etc. to gain access to their content. According to one aspect of the invention, the security is provided through encryption and access rules. The files, for example, can pertain to documents, multimedia files, data, executable code, images and text. In general, a secured file can only be accessed by authenticated users with appropriate access rights or privileges. In one embodiment, each secured file is provided with a header portion and a data portion, where the header portion contains or points to security information. The security information is used to determine whether access to associated data portions of secured files is permitted. 
     In the following description, numerous specific details are set forth in order to provide a thorough understanding of the present invention. However, it will become obvious to those skilled in the art that the invention may be practiced without these specific details. The description and representation herein are the common meanings used by those experienced or skilled in the art to most effectively convey the substance of their work to others skilled in the art. In other instances, well-known methods, procedures, components, and circuitry have not been described in detail to avoid unnecessarily obscuring aspects of the present invention. 
     Reference herein to “one embodiment” or “an embodiment” means that a particular feature, structure, or characteristic described in connection with the embodiment can be included in at least one embodiment of the invention. The appearances of the phrase “in one embodiment” in various places in the specification are not necessarily all referring to the same embodiment, nor are separate or alternative embodiments mutually exclusive of other embodiments. Further, the order of blocks in process flowcharts or diagrams representing one or more embodiments of the invention do not inherently indicate any particular order nor imply any limitations in the invention. 
     Embodiments of the present invention are discussed herein with reference to  FIGS. 1-9 . However, those skilled in the art will readily appreciate that the detailed description given herein with respect to these figures is for explanatory purposes as the invention extends beyond these limited embodiments. 
       FIG. 1  is a block diagram of a document security system  100  according to one embodiment of the invention. The document security system  100  is responsible for providing protection of electronic data in an organization and includes a central server  102  that controls the overall operation of the document security system  100 . The central server  102  imposes restrictions on the access to secured documents that are stored centrally or locally. 
     The central server  102  is assisted by a key store  104 . Among other things, the key store  104  can store key pairs (public and private keys). In one embodiment, the key store  104  can be implemented in a database that stores key pairs (among other things). The central server  102  is also assisted by local servers  106  and  108  that can provide distributed access control. Various internal users to an organization that are utilizing the document security system  100  interact with the central server  102  and/or one of the local servers  106  and  108 . These internal users are represented by users  110 - 116 . As illustrated in the embodiment shown in  FIG. 1 , user I-A  110  and user I-B  112  are affiliated with the local server  106 , and user I-C  114  and user I-D  116  are affiliated with the local server  108 . It should be understood, however, that various other arrangements or configurations of local servers and users can be utilized. 
     The document security system  100  also facilitates access by external users to secured documents that are maintained by the document security system  100 . In this regard, the document security system  100  includes an external access server  118 . The external access server  118  allows external users to be granted access to some of the secured documents. More particularly, the external access server  118  is coupled between a private network  121  in the document security system  100  and a (public) data network  120  and thus facilitates the access from external users  122 - 128  to some of the secured files without compromising the security integrity of the document security system  100 . The data network  120  is, for example, a global computer network, a wide area network or a local area network. However, since the external users  122 - 128  are not directly affiliated with the organization, the external users are therefore often given limited access rights to some of the secured documents from machines coupled to the data network  120 . Although the document security system  100  shown in  FIG. 1  illustrates multiple local servers  106  and  108 , multiple internal users  110 - 116 , multiple external users  122 - 128 , it should be recognized that the document security system  100  can, more generally, utilize zero or more local servers, one or more internal users, and one or more external users. 
     According to one embodiment of the invention, external users are permitted to be members of user groups maintained by the central server  102 . As such, the external users are able to exchange certain secured documents with internal users. In one embodiment, the exchange of the secured documents between internal and external users is limited to exchanges between members of a common user group. Despite document exchange capabilities, the external users are unable to perform various operations with respect to user groups that internal users would be able to perform. For example, external users would be unable to change group membership or to query group membership to determine who are the members of the user group. Typically, an external user would be added to a particular user group when a relationship between the organization and the external user is arranged. The exchange of documents between internal users and external users is secured using public key encryption. The document security system  100  manages the storage and accessibility of public and private keys for the internal and external users. The document security system  100  can advantageously minimize the client software needed at the machines utilized by the external users. 
     The invention facilitates exchange of files (e.g., documents) between internal users of an organization and external users. Although the external users are unaffiliated with the organization (i.e., not employees or contractors), the external users often have working relationships with internal users. These working relationships (also referred to herein as partner relationships) often present the need for file (document) exchange. A file security system (e.g., document security system  100 ) of the organization operates to protect the files of the organization and thus prevents or limits external users from accessing internal documents. According to the invention, external users having working relationships with internal users are able to be given limited user privileges within a file security system such that restricted file (document) exchange is permitted between such internal and external users. 
       FIG. 2  is a flow diagram of relationship setup processing  200  according to one embodiment of the invention. The relationship setup processing  200  operates to arrange or set up a partner relationship between a partner and an organization (e.g., company). The organization is typically represented by an internal user or a group of users, and the partner is typically represented by one or more external users. 
     The relationship setup processing  200  initially establishes  202  a partner relationship between a partner and an organization. In this context, the organization is deemed to protect various documents of the organization and its various internal users. In one embodiment, the organization uses a file (document) security system to protect the various documents. The partner is deemed external to the organization. However, the partner is desirous of exchanging documents with the organization. The partner relationship between the partner and the organization (or between respective members thereof) is such that document exchange is permitted so that mutual business objectives can be efficiently achieved. After the partner relationship has been established  202 , key pairs are created  204 . The key pairs are used in document exchanges between the partner and the organization (e.g., between respective individuals thereof). For example, each of the partner and the organization would have a public key for encryption, as well as a private key for decryption. For example, to release a document from the organization to the partner, the organization would secure (e.g., encrypt) the document using the public key of the partner and then, upon acquiring the secured document, the partner would unsecure (e.g., decrypt) the secured document using its private key. Similarly, when the partner releases a document to the organization, the partner can secure (e.g., encrypt) the document using the public key of the organization and then, upon acquiring the secured document, the organization can unsecure (e.g., decrypt) the document using its private key. After the key pairs are created  204 , the key pairs can be stored  206  to a key store. In one embodiment, the key store is within the file security system. System rights for the partner can then be configured  208 . The system rights can be configured to permit limited access privileges to the partner. For example, the partner can be configured to include one or more of its employees within a user group maintained for the organization. After the system rights have been configured  208 , the relationship setup processing  200  ends. 
     According to one embodiment, a partner relationship between an organization and a partner can confer on the partner: (i) query rights, and (ii) rights to get public keys of the organization. For example query right might include the right to get members of a group used by the file security system. However, having the right to get public keys of the organization does not give access to secured documents of the organization. 
       FIG. 3  is a flow diagram of document delivery processing  300  according to one embodiment of the invention. The document delivery processing  300  serves to deliver a secured document from an internal user to an external user. The internal user is associated with an organization, and the external user is associated with the partner. 
     The document delivery processing  300  begins with a decision  302  that determines whether a request to release a document to an external user has been received. In one embodiment, the request to release a document to an external user is initiated by an internal user. When the decision  302  determines that a request to release a document to an external user has not yet been received, the document delivery processing  300  awaits such a request. In other words, the document delivery processing  300  can be considered to be invoked when a request to release a document to an external user is received. 
     After a request to release a document to an external user has been received, a public key associated with the external user is retrieved  304  from a key store. In general, the key store serves to store a plurality of keys utilized by a document security system of the organization. In one embodiment, the key store can be the key store  104  illustrated in  FIG. 1 . Next, a decision  306  determines whether a public key associated with the external user was available from the key store. In one embodiment, the availability of the public key is controlled by the partner relationship. When the decision  306  determines that the key store does not have a public key associated with the external user, then the document is not permitted to be delivered to the external user and thus the request is denied  308 . Here, the particular external user is deemed not authorized to exchange documents with either the organization in general, or an internal user in particular. 
     On the other hand, when the decision  306  determines that a public key associated with the external user is available from the key store, then at least a portion of security information for the secured document is encrypted  310  using the public key. In one embodiment, the secured document that is to be delivered to the external user has a security information portion (also known as a header portion) and a data portion. The security information portion includes the security information providing restrictive access to the secured document. The security information may include access control components, such as keys or access rules that are utilized to control access to the data portion of the secured document. When the decision  306  determines that a public key is available, then at least a part of the security information portion for the secured document is encrypted  310  using the public key. Then, access control restrictions can be imposed  312  on the external user. The access control restrictions can limit the type, character or extent of access that the external user is granted with respect to the secured document. For example, the access control restrictions can be imposed by providing access rules within the security information portion of the secured document. After the access control restrictions are imposed  312  and encryption  310  with the public key, the secured document is released  314  to the external user. In one embodiment, the secured document is released  314  by being transmitted. Typically, the transmission of the secured document to the external user is performed through one or more networks (e.g., data networks). After the secured document has been released  314  to the external user (or after operation  308  when the request to deliver the secured document to the external user is denied), the document delivery processing  300  is complete and ends. 
       FIG. 4  is a flow diagram of document access processing  400  according to one embodiment of the invention. The document access processing  400  involves an external user accessing a secured document that has been made available to the external user by an internal user. 
     The document access processing  400  begins with the external user acting to login  402  to an external access server. The external access server is associated with the document security system and utilized to permit limited external access to the document security system. As an example, the external access server can be the external access server  118  illustrated in  FIG. 1 . 
     A decision  404  then determines whether the login  402  has been successful. When the decision  404  determines that login has not been successful, then access is denied  406  to the external access server and no secured documents are made available to external users. Following the operation  406 , the document access processing  400  is complete and ends as the external user was unable to successfully log into the external access server. 
     On the other hand, when the decision  404  determines that the external user has successfully logged into the external access server, then a private key associated with the external user is retrieved  408 . In one embodiment, the private key is downloaded from the document security system via the external access server. In another embodiment, the private key is recovered locally. 
     Next, a decision  410  determines whether an access request for an encrypted document has been received. When the decision  410  determines that an access request for the secured document has not yet been received, a decision  412  determines whether the document access processing  400  should end. When the decision  412  determines that the document access processing  400  should not end, then the document access processing  400  returns to repeat the decision  410  and subsequent operations. On the other hand, when the decision  412  determines that the document access processing  400  should end, then the document access processing  400  is complete and ends. 
     Alternatively, when the decision  410  determines that an access request for the secured document has been received, then at least a portion of the security information for the secured document is decrypted  414  using the private key. Next, document level security is evaluated  416  to permit or deny access to the document contents. Following the operation  416 , the document access processing  400  is complete and ends. 
       FIG. 5  is a flow diagram of access control processing  500  according to one embodiment of the invention. The access control processing  500  is, for example, suitable for use as the operations carried out by the operation  416  illustrated in  FIG. 4 . 
     The access control processing  500  initially obtains  502  access rules associated with the secured document. In one embodiment, the access rules are provided within the security information portion of the secured document. The access rules are then evaluated  504  against the access privilege of the user attempting to access the secured document. A decision  506  then determines whether the access rules are satisfied. When the decision  506  determines that the access rules are not satisfied, then access to the secured document is denied. Alternatively, when the decision  506  determines that the access rules are satisfied, then a file key associated with the secured document is obtained  510 . In one embodiment, the file key is provided within the security information portion of the secured document. The file key can be encrypted or in a clear format. In the case in which the file key is itself encrypted, the file key is first decrypted. Next, the secured document is decrypted  512  using the file key. Following the operation  512 , the access control processing  500  is complete and ends. 
       FIGS. 6 and 7  pertain to document delivery processing in which an external user provides a secured document to an internal user.  FIG. 6  is a flow diagram of client-side document delivery processing  600  according to one embodiment of the invention. The client-side document delivery processing  600  is referred to as client-side because a client machine associated with the external user is performing or initiating the operations. 
     The client-side document delivery processing  600  begins with a decision  602  that determines whether a request (from an external user) to release a document to an internal user has been received. When the decision  602  determines that a request to release a document to an internal user has not yet been received, the client-side document delivery processing  600  awaits such a request. Once the decision  602  determines that a request to release a document to an internal user has been received, the client-side document delivery processing  600  continues. In other words, the client-side document delivery processing  600  can be considered to be invoked when the decision  602  determines that a request to release a document to an internal user has been received. The external user can interact with the client machine to initiate or make such a request. 
     After the decision  602  determines that a request to release a document to an internal user has been received, a public key associated with the internal user is requested  604 . Here, according to one embodiment, the public key associated with the internal user is requested  604  from the document security system. A decision  606  then determines whether a response has been received. When the decision  606  determines that a response has not yet been received, the client-side document delivery processing  600  awaits such a response. When the decision  606  determines that a response has been received, a decision  608  first determines whether the request is from an external user who is what they claim to be. According to one embodiment, certificates are used prevent someone from impersonating someone else. Depending on implementation, a certification of the external user may be issued by a third party (e.g., Certificate Authority) or the document security system itself. When the decision  608  determines that the external user is not who they claim to be, then the request is denied  610  because the response received was presumably from an unauthorized user or system. 
     On the other hand, when the decision  608  determines that the external user is who they claim to be (i.e., an authorized user), a decision  612  determines whether a public key is available. Here, the response received is examined to determine whether the response includes the public key associated with the internal user. Hence, when the public key is available, it is provided with the response being received. In one embodiment, the availability of the public key is controlled by the partner relationship. 
     When the decision  612  determines that the public key is not available, then the request is denied  610  because the client machine does not have access to the public key associated with the internal user. On the other hand, when the decision  612  determines that the public key is available, then at least a portion of the security information for the secured document is encrypted  614  using the public key. In one embodiment, a file key within the security information for the secured document is encrypted using the public key. Thereafter, the secured document is released  616  to the internal user. In one embodiment, the secured document is released  616  by being transmitted. Following the operations  610  or  616 , the client-side document delivery processing  600  is complete and ends. 
       FIG. 7  is a flow diagram of server-side document delivery processing  700  according to one embodiment of the invention. The server-side document delivery processing  700  is, for example, performed by the document security system, such as the document security system  100  illustrated in  FIG. 1 . The server-side document delivery processing  700  is responsive to a public key request from the client-side document delivery processing  600 . 
     The server-side document delivery processing  700  begins with a decision  702  that determines whether a request for a public key from an external user has been received. In one embodiment, the request is provided by the operation  604  of the client-side document delivery processing  600  illustrated in  FIG. 6 . When the decision  702  determines that a request for a public key has not yet been received, then the server-side document delivery processing  700  awaits such a request. When the decision  702  determines that a request for a public key has been received, then a decision  704  determines whether the external user (requestor) is authorized to obtain the public key. Here, the authorization can be determined based on whether a partner relationship has been previously established between the external user and an organization. When the decision  704  determines that the external user is not authorized to receive the public key, then a response is prepared  710  indicating that access has been denied. 
     On the other hand, when the decision  704  determines that the external user is authorized to obtain the public key, then the public key associated with the internal user is retrieved  706  from a key store. The key store can, for example, be implemented as a database provided within the document security system. After the public key associated with the internal user has been retrieved  706 , a response including the public key can be prepared  708 . After the response has been prepared in operations  708  or  710 , the response is signed  712  with a certificate for the organization. In one embodiment, the certificate would have been previously embedded a priori in the machine (e.g., client machine) of the external user. The signed response is then transmitted  714  to the external user. Typically, the transmission of the signed response is sent to the external user over a secured channel through a network (data network, e.g., the Internet). Following the operation  714 , the server-side document delivery processing  700  is complete and ends. 
       FIG. 8  shows a basic security system  800  in which the invention may be practiced in accordance with one embodiment thereof. The security system  800  may be employed in an enterprise or inter-enterprise environment. It includes a first server  808  (also referred to as a central server) providing centralized access management for the enterprise. The first server  808  can control restrictive access to files secured by the security system  800 . To provide dependability, reliability and scalability of the system, one or more second servers  804  (also referred to as local servers, of which one is shown) may be employed to provide backup or distributed access management for users or client machines serviced locally. For illustration purposes, there are two client machines  801  and  802  being serviced by a local server  804 . Alternatively, one of the client machines  801  and  802  may be considered as a networked storage device. 
     Secured files may be stored in either one of the devices  801 ,  802 ,  804 ,  806  and  812 . When a user of the client machine  801  attempts to exchange a secured file with a remote destination  812  being used by an external user, one or more of the processing  200 ,  300 ,  400 ,  500 ,  600  and  700  discussed above are activated to ensure that the requested secured file is delivered without compromising the security imposed on the secured file. 
       FIG. 9  shows an exemplary data structure  920  of a secured file that may be used in one embodiment of the invention. The data structure  920  includes two portions: a header (or header portion)  922  and encrypted data (or an encrypted data portion)  924 . The header  922  can be generated in accordance with a security template associated with the store and thus provides restrictive access to the data portion  924  which is an encrypted version of a plain file. Optionally, the data structure  920  may also include an error-checking portion  925  that stores one or more error-checking codes, for example, a separate error-checking code for each block of encrypted data  924 . These error-checking codes may also be associated with a Cyclical Redundancy Check (CRC) for the header  922  and/or the encrypted data  924 . The header  922  includes a flag bit or signature  927  and security information  926  that is in accordance with the security template for the store. According to one embodiment, the security information  926  is encrypted and can be decrypted with a user key associated with an authenticated user (or requestor). 
     The security information  926  can vary depending upon implementation. However, as shown in  FIG. 9 , the security information  926  includes a user identifier (ID)  928 , access policy (access rules)  929 , a file key  930  and other information  931 . Although multiple user identifiers may be used, a user identifier  928  is used to identify a user or a group that is permitted to access the secured file. The access rules  929  provide restrictive access to the encrypted data portion  924 . The file key  930  is a cipher key that, once obtained, can be used to decrypt the encrypted data portion  924  and thus, in general, is protected. In one implementation of the data structure  920 , the file key  930  is encrypted in conjunction with the access rules  929 . In another implementation of the data structure  920 , the file key  930  is double encrypted with a protection key and further protected by the access rules  929 . The other information  931  is an additional space for other information to be stored within the security information  926 . For example, the other information  931  may be used to include other information facilitating secure access to the secured file, such as version number or author identifier. 
     The invention is preferably implemented by software or a combination of hardware and software, but can also be implemented in hardware. The invention can also be embodied as computer readable code on a computer readable medium. The computer readable medium is any data storage device that can store data which can thereafter be read by a computer system. Examples of the computer readable medium include read-only memory, random-access memory, CD-ROMs, DVDs, magnetic tape, optical data storage devices, and carrier waves. The computer readable medium can also be distributed over network-coupled computer systems so that the computer readable code is stored and executed in a distributed fashion. 
     The various embodiments, implementations and features of the invention noted above can be combined in various ways or used separately. Those skilled in the art will understand from the description that the invention can be equally applied to or used in other various different settings with respect to various combinations, embodiments, implementations or features provided in the description herein. 
     The advantages of the invention are numerous. Different embodiments or implementations may yield one or more of the following advantages. One advantage of the invention is that file security systems are able to protect secured files (e.g., documents) even when external users are provided limited access to secured files. Another advantage of the invention is that a file security system can permit external users to access certain secured files (e.g., secured documents) without compromising integrity of the file security system. For example, external users having working relationships with internal users are able to be given limited user privileges within the file security system such that restricted file (document) exchange is permitted between such internal and external users. Still another advantage of the invention is that that amount of specialized software required at machines utilized by external users is minimal. 
     The foregoing description of embodiments is illustrative of various aspects/embodiments of the present invention. Various modifications to the present invention can be made to the preferred embodiments by those skilled in the art without departing from the true spirit and scope of the invention as defined by the appended claims. Accordingly, the scope of the present invention is defined by the appended claims rather than the foregoing description of embodiments.