Method and system for executing a secure file-level restore from a block-based backup
A method for managing a block-based backup (BBB) includes: sending a file system parsing request to a file system, in which the file system is backed up in a backup storage as the BBB; obtaining file system metadata, in which the file system metadata is generated and stored in the backup storage in response to the file system parsing request; analyzing the file system metadata to generate an index for each asset of the file system; reordering the index of each asset to generate a reordered index; determining a user access level of a user; identifying assets in the reordered index to obtain a set of permitted assets for the user; providing a graphical user interface (GUI) specifying the set of permitted assets; receiving selected assets among the set of permitted assets via the GUI; and restoring the selected assets from the BBB.
1 . A method for managing a block-based backup (BBB), the method comprising:
receiving a BBB request from a user to back up a file system (FS) to a backup storage;
initiating, based on the BBB request, backing up of the FS to the backup storage as the BBB;
sending an FS parsing request to the FS, wherein the FS parsing request is sent after the FS is backed up to the backup storage, wherein the FS is backed up in accordance with a backup schedule that is configured based on a user's recovery point objective;
obtaining FS metadata, wherein the FS metadata is generated for each asset of the FS using a snapshot of the FS and stored to the backup storage in response to the FS parsing request, wherein the FS metadata comprises an identifier of a parent folder comprising an asset, a size of the asset, an offset for data of the asset stored in a file of the FS, and an attribute of the asset, wherein the attribute specifies how the FS should manage the asset;
marking, after the FS metadata is stored to the backup storage, the BBB as completed on a graphical user interface (GUI) to notify to the user;
obtaining, after the marking, the FS metadata from the backup storage;
analyzing the FS metadata to generate an index for each asset of the FS;
reordering the index of each asset to generate a reordered index, wherein the reordered index reflects an FS hierarchy of the FS and an access level of each asset, wherein the access level of each asset specifics a user access level the user must have to view each asset on the GUI; and
after the reordered index is displayed:
receiving a BBB selection request from the user;
determining, in response to the BBB selection request, a user access level of the user;
identifying assets in the reordered index to define a set of permitted assets for the user, wherein the access level of each asset of the set of permitted assets is less than or equal to the user access level of the user;
displaying the set of permitted assets on the GUI, wherein assets with access levels greater than the user access level are not displayed on the GUI;
receiving selected assets among the set of permitted assets via the GUI, wherein the selected assets are selected by the user via the GUI;
sending a restore request to a recovery agent (RA) to restore the selected assets from the BBB, wherein the restore request comprises details associated with the FS metadata; and
receiving a notification from the RA regarding a restoring status of the selected assets.
2 . The method of claim 1 , wherein the selected assets are restored in a recovery host.
3 . The method of claim 1 , wherein the reordered index is stored in an index database.
4 . The method of claim 1 , wherein the FS metadata further comprises identifiers of the selected assets and at least one access control list (ACL) associated with the selected assets.
5 . The method of claim 1 , wherein the FS is backed up using a virtual hard disk (VHDX) file format.
6 . The method of claim 1 , wherein the FS is a new technology file system (NTFS).
7 . The method of claim 1 , wherein the selected assets are files and folders of the FS.
8 . A non-transitory computer readable medium comprising computer readable program code, which when executed by a computer processor enables the computer processor to perform a method for managing a block-based backup (BBB), the method comprising:
receiving a BBB request from a user to back up a file system (FS) to a backup storage;
initiating, based on the BBB request, backing up of the FS to the backup storage as the BBB;
sending an FS parsing request to the FS, wherein the FS parsing request is sent after the FS is backed up to the backup storage, wherein the FS is backed up in accordance with a backup schedule that is configured based on a user's recovery point objective;
obtaining FS metadata, wherein the FS metadata is generated for each asset of the FS using a snapshot of the FS and stored to the backup storage in response to the FS parsing request, wherein the FS metadata comprises an identifier of a parent folder comprising an asset, a size of the asset, an offset for data of the asset stored in a file of the FS, and an attribute of the asset, wherein the attribute specifies how the FS should manage the asset;
marking, after the FS metadata is stored to the backup storage, the BBB as completed on a graphical user interface (GUI) to notify to the user;
obtaining, after the marking, the FS metadata from the backup storage;
analyzing the FS metadata to generate an index for each asset of the FS;
reordering the index of each asset to generate a reordered index, wherein the reordered index reflects an FS hierarchy of the FS and an access level of each asset, wherein the access level of each asset specifics a user access level the user must have to view each asset on the GUI; and
after the reordered index is displayed:
receiving a BBB selection request from the user;
determining, in response to the BBB selection request, a user access level of the user;
identifying assets in the reordered index to define a set of permitted assets for the user, wherein the access level of each asset of the set of permitted assets is less than or equal to the user access level of the user;
displaying the set of permitted assets on the GUI, wherein assets with access levels greater than the user access level are not displayed on the GUI;
receiving selected assets among the set of permitted assets via the GUI, wherein the selected assets are selected by the user via the GUI;
sending a restore request to a recovery agent (RA) to restore the selected assets from the BBB, wherein the restore request comprises details associated with the FS metadata; and
receiving a notification from the RA regarding a restoring status of the selected assets.
9 . The non-transitory computer readable medium of claim 8 , wherein the selected assets are restored in a recovery host.
10 . The non-transitory computer readable medium of claim 8 , wherein the reordered index is stored in an index database.
11 . The non-transitory computer readable medium of claim 8 , wherein the FS metadata further comprises identifiers of the selected assets and at least one access control list (ACL) associated with the selected assets.
12 . The non-transitory computer readable medium of claim 8 , wherein the FS is backed up using a virtual hard disk (VHDX) file format.
13 . The non-transitory computer readable medium of claim 8 , wherein the FS is a new technology file system (NTFS).
14 . The non-transitory computer readable medium of claim 8 , wherein the selected assets are files and folders of the FS.
15 . A system for managing a block-based backup (BBB), the system comprising:
a processor comprising circuitry,
memory comprising instructions, which when executed perform a method, the method comprising:
receiving a BBB request from a user to back up a file system (FS) to a backup storage;
initiating, based on the BBB request, backing up of the FS to the backup storage as the BBB;
sending an FS parsing request to the FS, wherein the FS parsing request is sent after the FS is backed up to the backup storage, wherein the FS is backed up in accordance with a backup schedule that is configured based on a user's recovery point objective;
obtaining FS metadata, wherein the FS metadata is generated for each asset of the FS using a snapshot of the FS and stored to the backup storage in response to the FS parsing request, wherein the FS metadata comprises an identifier of a parent folder comprising an asset, a size of the asset, an offset for data of the asset stored in a file of the FS, and an attribute of the asset, wherein the attribute specifies how the FS should manage the asset;
marking, after the FS metadata is stored to the backup storage, the BBB as completed on a graphical user interface (GUI) to notify to the user;
obtaining, after the marking, the FS metadata from the backup storage;
analyzing the FS metadata to generate an index for each asset of the FS;
reordering the index of each asset to generate a reordered index, wherein the reordered index reflects an FS hierarchy of the FS and an access level of each asset, wherein the access level of each asset specifics a user access level the user must have to view each asset on the GUI; and
after the reordered index is displayed:
receiving a BBB selection request from the user;
determining, in response to the BBB selection request, a user access level of the user;
identifying assets in the reordered index to define a set of permitted assets for the user, wherein the access level of each asset of the set of permitted assets is less than or equal to the user access level of the user;
displaying the set of permitted assets on the GUI, wherein assets with access levels greater than the user access level are not displayed on the GUI;
receiving selected assets among the set of permitted assets via the GUI, wherein the selected assets are selected by the user via the GUI;
sending a restore request to a recovery agent (RA) to restore the selected assets from the BBB, wherein the restore request comprises details associated with the FS metadata; and
receiving a notification from the RA regarding a restoring status of the selected assets.
16 . The system of claim 15 , wherein the selected assets are restored in a recovery host.
17 . The system of claim 15 , wherein the reordered index is stored in an index database.
18 . The system of claim 15 , wherein the FS metadata further comprises identifiers of the selected assets and at least one access control list (ACL) associated with the selected assets.
19 . The system of claim 15 , wherein the FS is backed up using a virtual hard disk (VHDX) file format.
20 . The system of claim 15 , wherein the FS is a new technology file system (NTFS).