Bundling file permissions for sharing files
First Claim
1. A computer-implemented process performed by a processor in a computer, comprising:
- receiving, into memory, an indication of file objects, stored in computer storage and accessible by a first entity through a file system according to first permissions associated with the file objects, to be shared with one or more second entities;
in response to an instruction to share the indicated file objects with the one or more second entities, generating a bundle object;
storing data, for each of the indicated file objects to be shared, such that each of the indicated file objects includes an indication of whether the file object is part of a bundle object;
storing data associated with the bundle object indicating second permissions for the one or more second entities for accessing the file objects associated with the bundle object;
in response to a request associated with an entity to access one of the indicated file objects, determining whether access by the entity is permitted by the first permissions associated with the one of the indicated file objects;
in response to determining that access by the entity is permitted by the first permissions, providing the requested access for the entity; and
in response to determining that access by the entity is not permitted by the first permissions, determining whether the one of the indicated file objects is part of a bundle object based on the stored data for the one of the indicated filed objects and whether access to the one of the indicated file objects is permitted based on the bundle object.
2 Assignments
0 Petitions
Accused Products
Abstract
When files or other objects are to be shared, a storage system creates a bundle object that identifies the objects to be shared, and the permissions associated with objects in that bundle object. Each object is marked as being associated with a bundle object. When the object is accessed, the storage system determines if the object is associated with a bundle object. The bundle object in turn is accessed to determine the permissions to be associated with that object for the entity accessing the object. Files and other objects can be shared without copying or moving them. Any collection of files or other objects, however selected or identified, can be shared through this mechanism. Using this mechanism, a user can select several files, and then share those files in one operation without copying or moving those files or creating a new folder for those files.
-
Citations
20 Claims
-
1. A computer-implemented process performed by a processor in a computer, comprising:
-
receiving, into memory, an indication of file objects, stored in computer storage and accessible by a first entity through a file system according to first permissions associated with the file objects, to be shared with one or more second entities; in response to an instruction to share the indicated file objects with the one or more second entities, generating a bundle object; storing data, for each of the indicated file objects to be shared, such that each of the indicated file objects includes an indication of whether the file object is part of a bundle object; storing data associated with the bundle object indicating second permissions for the one or more second entities for accessing the file objects associated with the bundle object; in response to a request associated with an entity to access one of the indicated file objects, determining whether access by the entity is permitted by the first permissions associated with the one of the indicated file objects; in response to determining that access by the entity is permitted by the first permissions, providing the requested access for the entity; and in response to determining that access by the entity is not permitted by the first permissions, determining whether the one of the indicated file objects is part of a bundle object based on the stored data for the one of the indicated filed objects and whether access to the one of the indicated file objects is permitted based on the bundle object. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. An article of manufacture comprising:
-
computer storage, comprising at least one of a memory device or a storage device, with computer program instructions stored in the computer storage, such that the computer program instructions, when processed by a processing device, instruct the processing device to perform a process comprising; receiving, into memory, an indication of file objects, stored in computer storage and accessible by a first entity through a file system according to first permissions associated with the file objects, to be shared with one or more second entities; in response to an instruction to share the indicated file objects with the one or more second entities, generating a bundle object; storing data, for each of the indicated file objects to be shared, such that each of the indicated file objects includes an indication of whether the file object is part of a bundle object; storing data associated with the bundle object indicating second permissions for the one or more second entities for accessing the file objects associated with the bundle object; in response to a request associated with an entity to access one of the indicated file objects, determining whether access by the entity is permitted by the first permissions associated with the one of the indicated file objects; in response to determining that access by the entity is permitted by the first permissions, providing the requested access for the entity; and in response to determining that access by the entity is not permitted by the first permissions, determining whether the one of the indicated file objects is part of a bundle object based on the stored data for the one of the indicated filed objects and whether access to the one of the indicated file objects is permitted based on the bundle object. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A computer system comprising:
-
one or more server computers connected to one or more storage devices and accessible over a computer network by a plurality of client computers, through which users access the one or more server computers to store file objects in a file system maintained by the server computer for file objects stored on the one or more storage devices, the server computers being configured to; receive, into memory, an indication of file objects, stored in computer storage and accessible by a first entity through a file system according to first permissions associated with the file objects, to be shared with one or more second entities; in response to an instruction to share the file objects with the one or more second entities, generate a bundle object; store data, for each of the indicated file objects to be shared, such that each of the indicated file objects includes an indication of whether the file object is part of a bundle object; store data associated with the bundle object indicating second permissions for the one or more second entities for accessing the file objects associated with the bundle object; in response to a request associated with an entity to access one of the indicated file objects, determining whether access by the entity is permitted by the first permissions associated with the one of the indicated file objects; in response to determining that access by the entity is permitted by the first permissions, providing the requested access for the entity; and in response to determining that access by the entity is not permitted by the first permissions, determining whether the one of the indicated file objects is part of a bundle object based on the stored data for the one of the indicated filed objects and whether access to the one of the indicated file objects is permitted based on the bundle object. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification