Protection method and system for file storage and use of software system

By introducing the file storage gateway system and target client, the cumbersome file processing, chaotic version management, security risks of terminal storage, inconsistent data collaboration among multiple people and insufficient real-time performance in the software system are solved, and efficient, secure and real-time file processing and collaboration are achieved.

CN120011324APending Publication Date: 2025-05-16BEIJING UNIORANGE TECH CO LTD +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510087687.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-01-20
Publication Date
2025-05-16

AI Technical Summary

Technical Problem

The existing software systems have problems such as cumbersome operation, chaotic version management, security risks in terminal storage, inconsistent data collaboration among multiple people, and insufficient real-time performance when processing files.

Method used

The file storage gateway system is introduced as the intermediary of user terminal equipment and software systems. By installing the target client on the terminal equipment, it realizes functions such as file list acquisition, file copying, update detection and automatic return, ensuring real-time synchronization of files between local and servers.

Benefits of technology

It simplifies the file operation process, avoids confusion in version management and terminal storage security risks, ensures the consistency and real-timeness of multi-person collaboration data, and improves user experience and work efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120011324A_ABST
    Figure CN120011324A_ABST
Patent Text Reader

Abstract

According to the invention, a file storage gateway system is introduced as a bridge between user terminal equipment and a software system, and a target client of the file storage gateway system is installed on the terminal equipment. When a user needs to access a file stored in the software system, the terminal device automatically starts the target client to send a file list obtaining request to the file storage gateway system, and the file storage gateway system obtains a file list from the software system and returns the file list. After the target client receives the file list, a part of space is divided on a local disk of the terminal equipment to serve as a new disk partition, files in the file list are copied into files in the new disk partition, and then the files are accessed in the new disk partition. And after the user completes file access, the target client automatically detects and returns the file to the file storage gateway system, and the file storage gateway system synchronizes the file to the software system.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of computer technology, and in particular to a method and system for protecting file storage and use in a software system. Background Art

[0002] In modern software systems, file storage, management, access and operation functions have become crucial, especially in the SaaS (Software as a Service) environment. With the continuous development of information technology, the demand for these functions is increasing, and higher requirements are placed on the performance, security and usability of software systems. However, in the process of implementing these functions, software systems face the following key challenges:

[0003] (1) File downloading, editing, modifying, uploading and other operations are complex and cumbersome, and the lack of version management can easily cause confusion: Software systems need to efficiently store and manage files uploaded by users, and allow users to modify and update them when needed. However, many current software systems do not support users to directly open and edit files, such as being unable to directly use software such as Word to edit in the system. If users need to modify files, they need to go through a series of cumbersome operations such as downloading, editing, deleting / replacing / uploading. Specifically, users need to first download the file to be edited from the software system to the terminal device, store it in a certain location, and then edit it. After editing is completed, the user uploads the file to the software system through the terminal device for remote storage. If it involves scenarios such as repeated reviews, users need to repeatedly download and store files, which is not only cumbersome, but also easy to confuse the storage location. After multiple edits, users often find it difficult to determine the final modified version, which may lead to upload errors and cause version management confusion;

[0004] (2) Potential risks of file terminal storage: Files are stored on user terminals for a long time. Faced with a variety of file types, if users do not manage them properly, files may be forgotten or misused, thus threatening data security and personal work efficiency.

[0005] (3) Data consistency issues in multi-person collaboration: In team collaboration, if a file needs to be edited by multiple people, the local storage method may cause version conflicts, making it difficult for team members to obtain the latest version. They may even use outdated or incorrect file versions, affecting project progress.

[0006] (4) Insufficient data real-time and operational convenience in collaboration: In collaborative editing scenarios, if file modifications are not uploaded in time, data synchronization will be affected, resulting in team members being unable to obtain the latest file modifications in real time. At the same time, complex operation processes also reduce collaboration efficiency and user experience.

[0007] In summary, the file processing solutions in current software systems have problems such as cumbersome operations, chaotic version management, terminal storage security risks, inconsistent data for multi-person collaboration, and lack of real-time performance. However, no effective solutions have been proposed for these problems. Summary of the invention

[0008] The embodiments of the present disclosure provide a method and system for protecting the storage and use of files in a software system, so as to at least solve the technical problems in the prior art that the file processing scheme in the current software system has complicated operation, chaotic version management, terminal storage security risks, inconsistent data of multi-person collaboration, and insufficient real-time performance.

[0009] According to one aspect of an embodiment of the present disclosure, a protection method for file storage and use of a software system is provided, comprising: after a terminal device receives a user's request to access a corresponding file stored in the software system, starting or calling a target client pre-installed on the terminal device, and sending a file list acquisition request to a file storage gateway system; wherein the target client is a client of the file storage gateway system; the file storage gateway system acquires a corresponding file list from a server of the software system according to the file list acquisition request, and returns the file list to the target client; after the target client receives the file list sent by the server of the software system, a portion of space is allocated on a local disk of the terminal device as a new disk partition, and the files in the file list are copied to the new disk partition; the terminal device accesses the file in the new disk partition, and when the user completes accessing the file, the target client performs the following operations: detecting whether the file in the new disk partition has changed, and when it is detected that the file has changed, transmitting the updated file back to the file storage gateway system, and deleting the corresponding file in the new disk partition after the transmission is completed; and the file storage gateway system synchronizes the updated file to the server of the software system.

[0010] According to another aspect of the embodiments of the present disclosure, a storage medium is further provided. The storage medium includes a stored program, wherein the above method is executed by a processor when the program is running.

[0011] According to another aspect of the embodiment of the present disclosure, there is also provided a protection system for file storage and use of a software system, comprising a user's terminal device, a file storage gateway system and a target client installed on the terminal device, wherein the target client is a client of the file storage gateway system; wherein the terminal device is used to start or call the target client pre-installed on the terminal device after receiving a user's request to access the corresponding file stored in the software system, and send a file list acquisition request to the file storage gateway system; wherein the target client is a client of the file storage gateway system; the file storage gateway system is used to obtain a corresponding file list from a server of the software system according to the file list acquisition request, and return the file list to the server. to the target client; the target client is used to allocate a part of space on the local disk of the terminal device as a new disk partition after receiving the file list sent by the server of the software system, and copy the files in the file list to the new disk partition; the terminal device is used to access the files in the new disk partition, and when the user completes accessing the files, the target client performs the following operations: detecting whether the files in the new disk partition have changed, and when it is detected that the files have changed, transmitting the updated files back to the file storage gateway system, and deleting the corresponding files in the new disk partition after the transmission is completed; and the file storage gateway system is used to synchronize the updated files to the server of the software system.

[0012] This application introduces a file storage gateway system as an intermediary and bridge between a user terminal device and a software system, and installs a client (i.e., a target client) of the file storage gateway system on the user's terminal device, which is responsible for communicating with the file storage gateway system. When the terminal device receives an instruction from a user to access the corresponding files stored in the software system, the user does not need to perform a download operation, but the terminal device automatically starts or calls the target client, sends a request to obtain a file list to the file storage gateway system, and the file storage gateway system obtains the corresponding file list from the server of the software system, and returns it to the target client, providing a basis for subsequent file access. After the target client receives the file list, it will divide a part of the space on the local disk of the terminal device as a new disk partition, and copy the files in the file list into files in the new disk partition through a mapping operation. After that, the terminal device can directly access files and operate in the new disk partition, such as viewing and editing. When the user completes file access, the target client will detect whether the file in the new disk partition has changed. Once the file change is detected, the target client will automatically send the updated file back to the file storage gateway system, which will synchronize it to the server of the software system without the need for manual operation by the user, to ensure the consistency of the file on the server of the software system with the local file version. At the same time, it also provides the latest file version to other collaborative users, ensuring the consistency and real-time performance of multi-person collaborative data. Finally, after the file is sent back, the target client will delete the corresponding file in the new disk partition to avoid the potential security risks caused by the long-term retention of the file in the user terminal, and release local storage space for subsequent use. This solves the technical problems of cumbersome operation, chaotic version management, terminal storage security risks, inconsistent multi-person collaborative data, and insufficient real-time performance of the file processing solution in the current software system in the prior art. BRIEF DESCRIPTION OF THE DRAWINGS

[0013] The drawings described herein are used to provide a further understanding of the present disclosure and constitute a part of the present application. The illustrative embodiments of the present disclosure and their descriptions are used to explain the present disclosure and do not constitute an improper limitation on the present disclosure. In the drawings:

[0014] Figure 1 is a hardware structure block diagram of a computing device for implementing the method according to Embodiment 1 of the present application;

[0015] Figure 2 It is a flowchart of a method for protecting file storage and use in a software system according to Embodiment 1 of the present application;

[0016] Figure 3 It is a schematic diagram of a protection system for file storage and use of a software system according to Example 2 of the present application. DETAILED DESCRIPTION

[0017] In order to enable those skilled in the art to better understand the technical solutions of the present disclosure, the technical solutions in the embodiments of the present disclosure will be clearly and completely described below in conjunction with the drawings in the embodiments of the present disclosure. Obviously, the described embodiments are only embodiments of a part of the present disclosure, not all of the embodiments. Based on the embodiments in the present disclosure, all other embodiments obtained by ordinary technicians in this field without making creative work should fall within the scope of protection of the present disclosure.

[0018] It should be noted that the terms "first", "second", etc. in the specification and claims of the present disclosure and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchangeable where appropriate, so that the embodiments of the present disclosure described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions, for example, a process, method, system, product, or device that includes a series of steps or units is not necessarily limited to those steps or units that are clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products, or devices.

[0019] Example 1

[0020] According to this embodiment, a method embodiment of a method for protecting file storage and use of a software system is provided. It should be noted that the steps shown in the flowchart of the accompanying drawings can be executed in a computer system such as a set of computer executable instructions, and although a logical order is shown in the flowchart, in some cases, the steps shown or described can be executed in an order different from that shown here.

[0021] The method embodiment provided in this embodiment can be executed in a mobile terminal, a computer terminal or a similar computing device. Figure 1 The hardware structure block diagram of a computing device for implementing a method for protecting the storage and use of files in a software system is shown. Figure 1 As shown, the computing device may include one or more processors (the processor may include but is not limited to a processing device such as a microprocessor MCU or a programmable logic device FPGA), a memory for storing data, a transmission device for communication functions, and an input / output interface. The memory, the transmission device, and the input / output interface are connected to the processor via a bus. In addition, it may also include: a display, a keyboard, and a cursor control device connected to the input / output interface. A person skilled in the art can understand that Figure 1The structure shown is only for illustration and does not limit the structure of the above electronic device. Figure 1 More or fewer components as shown, or with Figure 1 Different configurations shown.

[0022] It should be noted that the one or more processors and / or other data processing circuits described above may generally be referred to herein as "data processing circuitry". The data processing circuitry may be embodied in whole or in part as software, hardware, firmware, or any other combination thereof. In addition, the data processing circuitry may be a single independent processing module, or may be incorporated in whole or in part into any of the other components of the computing device. As involved in the embodiments of the present disclosure, the data processing circuitry acts as a processor control (e.g., selection of a variable resistor terminal path connected to an interface).

[0023] The memory can be used to store software programs and modules of application software, such as the program instructions / data storage device corresponding to the protection method for file storage and use of the software system in the embodiment of the present disclosure. The processor executes various functional applications and data processing by running the software programs and modules stored in the memory, that is, the protection method for file storage and use of the software system of the above-mentioned application program is realized. The memory may include a high-speed random access memory, and may also include a non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some instances, the memory may further include a memory remotely arranged relative to the processor, and these remote memories may be connected to the computing device via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.

[0024] The transmission device is used to receive or send data via a network. The specific example of the above network may include a wireless network provided by a communication provider of the computing device. In one example, the transmission device includes a network adapter (Network Interface Controller, NIC), which can be connected to other network devices through a base station so as to communicate with the Internet. In one example, the transmission device can be a radio frequency (Radio Frequency, RF) module, which is used to communicate with the Internet wirelessly.

[0025] The display may be, for example, a touch screen liquid crystal display (LCD) that may enable a user to interact with a user interface of the computing device.

[0026] It should be noted that, in some optional embodiments, the above Figure 1The computing device shown may include hardware elements (including circuits), software elements (including computer code stored on a computer-readable medium), or a combination of both hardware elements and software elements. Figure 1 This is merely one example of a particular embodiment and is intended to illustrate the types of components that may be present in the computing devices described above.

[0027] In the above operating environment, according to the first aspect of this embodiment, a protection method for file storage and use of a software system is provided. Figure 2 A schematic diagram showing the process of the method is shown in FIG. Figure 2 As shown, the method includes:

[0028] S101: After receiving a user's request to access a corresponding file stored in the software system, the terminal device starts or calls a target client pre-installed on the terminal device to send a file list acquisition request to the file storage gateway system; wherein the target client is a client of the file storage gateway system;

[0029] S102: the file storage gateway system obtains the corresponding file list from the server of the software system according to the file list acquisition request, and returns the file list to the target client;

[0030] S103: After receiving the file list sent by the server of the software system, the target client allocates a portion of space on the local disk of the terminal device as a new disk partition, and copies the files in the file list to the new disk partition;

[0031] S104: the terminal device accesses the file in the new disk partition. When the user completes accessing the file, the target client performs the following operations: detecting whether the file in the new disk partition has changed, and when it is detected that the file has changed, transmitting the updated file back to the file storage gateway system, and deleting the corresponding file in the new disk partition after the transmission is completed; and

[0032] S105: The file storage gateway system synchronizes the updated file to the server of the software system.

[0033] Specifically, in the embodiments of the present invention, the software system (for example, but not limited to, a SaaS system) needs to undertake file storage and management, assuming object storage of a distributed file system (for example, Alibaba Cloud OSS) or self-implemented file storage and management. The software system can connect to different data sources as original files, for example, but not limited to, including 3D model files, 2D engineering drawing files, Word files, table files (such as Excel), PPT files, etc., and such files are stored in the file system through software.

[0034] This application introduces a file storage gateway system (FSG) as an intermediary and bridge between the user terminal device (the user's computer) and the software system, and installs the client of the file storage gateway system (i.e., the target client) on the user's terminal device. The target client is responsible for communicating with the file storage gateway system, and the file storage gateway system is responsible for communicating with the server of the software system.

[0035] The user initiates a request to access one or some files in the software system on the terminal device. After the terminal device detects the request, it automatically starts or calls the pre-installed target client (i.e. the client of the file storage gateway system). The target client communicates with the file storage gateway system through a network connection and sends it a file list acquisition request. This simplifies the user's operation process and avoids the tedious manual downloading, editing and uploading process.

[0036] After receiving the file list acquisition request from the target client, the file storage gateway system communicates with the server of the software system to obtain the corresponding file list information from the server. After the acquisition is completed, the file storage gateway system packages the file list data and transmits it back to the target client. Thus, the real-time update and synchronization of the file list is realized, ensuring that users can always obtain the latest file information, avoiding the problem of chaotic version management, and improving data consistency during collaboration.

[0037] After the target client receives the file list data from the software system server, it creates a new disk partition (such as Z disk) on the local disk of the terminal device (such as C disk and D disk), and maps (also called copying) all the files in the file list to the newly created disk partition one by one. Thus, an independent and isolated working environment is created, which is convenient for subsequent management and cleanup of files, while also reducing the risk of files being forgotten or misoperated due to long-term retention, thereby improving security. Among them, when the target client maps the remote files stored in the software system to the new disk partition, it varies depending on the files that the user needs to operate, and the files mapped to the new disk partition each time may be different.

[0038] After that, users can directly view, edit, and perform other operations on files in the new disk partition through terminal devices without directly interacting with files stored in the software system. When the user completes all operations on the file, the target client will automatically detect whether there are any changes to the files in the new disk partition. If changes are found, these updated files will be re-uploaded to the file storage gateway system. In addition, after the return is completed, the target client will clear all corresponding file contents in the new disk partition. As a result, the automated processing mechanism reduces the need for manual intervention, improves work efficiency, and can monitor file changes in a timely manner and synchronize the latest version, ensuring data consistency and real-time performance when multiple people collaborate.

[0039] The file storage gateway system receives the updated files uploaded by the target client, and further communicates with the server of the software system to synchronize these updated files to the server. Thus, the consistency of the files on the server of the software system and the local file versions is ensured, efficient collaborative work is supported, and the latest file versions are synchronized in time, which improves the collaboration efficiency and project progress between team members.

[0040] As described in the background technology, when software systems undertake functions such as file storage, management, access and operation, they face the following challenges: (1) File downloading, editing, modifying, uploading and other operations are complex and cumbersome, and without version management, it is easy to cause confusion; (2) Files are retained on user terminals for a long time. Faced with a variety of file types, if users do not manage them properly, it is easy for files to be forgotten or misoperated; (3) In team collaboration, if a file needs to be edited by multiple people, the local storage method may cause version conflicts, making it difficult for team members to obtain the latest version, and they may even use outdated or wrong file versions, affecting project progress; (4) In collaborative editing scenarios, if file modifications are not uploaded in time, it will affect data synchronization, resulting in team members being unable to obtain the latest file modifications in real time. At the same time, the complex operation process also reduces the efficiency of collaboration and user experience.

[0041] In view of this, the technical solution of the present application introduces a file storage gateway system as an intermediary and bridge between the user terminal device and the software system, and installs a client of the file storage gateway system (i.e., a target client) on the user's terminal device, and the target client is responsible for communicating with the file storage gateway system. When the terminal device receives an instruction from the user to access the corresponding files stored in the software system, the user does not need to perform a download operation, but the terminal device automatically starts or calls the target client, sends a request to obtain a file list to the file storage gateway system, and the file storage gateway system obtains the corresponding file list from the server of the software system, and returns it to the target client, providing a basis for subsequent file access. After the target client receives the file list, it will divide a part of the space on the local disk of the terminal device as a new disk partition, and copy the files in the file list into files in the new disk partition through a mapping operation. After that, the terminal device can directly access and operate files in the new disk partition, such as viewing and editing. When the user completes file access, the target client will detect whether the file in the new disk partition has changed. Once the file is detected to have changed, the target client will automatically send the updated file back to the file storage gateway system, which will synchronize it to the server of the software system without manual operation by the user, so as to ensure the consistency of the file on the server of the software system with the local file version, and also provide the latest file version to other collaborative users, ensuring the consistency and real-time of multi-person collaborative data. Finally, after the file is returned, the target client will delete the corresponding file in the new disk partition to avoid the potential security risks caused by the long-term retention of the file in the user terminal, and release the local storage space for subsequent use. Thus, the technical problems of cumbersome operation, chaotic version management, terminal storage security risks, inconsistent multi-person collaborative data and insufficient real-time viewing and editing in the current software system in the prior art are solved. When the user completes file access, the target client will detect whether the file in the new disk partition has changed. Once the file is detected to have changed, the target client will automatically send the updated file back to the server of the software system, without manual operation by the user, so as to ensure the consistency of the file on the server with the local file version, and also provide the latest file version to other collaborative users, ensuring the consistency and real-time of multi-person collaborative data. Finally, after the file is uploaded, the target client will delete the corresponding file in the new disk partition to avoid the potential security risks caused by the long-term retention of the file in the user terminal, and release the local storage space for subsequent use. This solves the technical problems of the file processing solution in the current software system in the prior art, such as cumbersome operation, chaotic version management, terminal storage security risks, inconsistent multi-person collaborative data, and insufficient real-time performance.

[0042] Optionally, the file storage gateway system establishes a communication connection with the server of the software system through the NFS protocol or the SMB protocol.

[0043] Specifically, the file storage gateway system establishes a communication connection with the server of the software system through the standard NFS (Net File System) protocol or SMB protocol (Server Message Block), and does not require driver-level development on the kernel. Among them, the NFS protocol is mainly used for accessing the file system of the Unix operating system, such as AIX, HP-UX and various Linux systems, and the SMB protocol is mainly used for accessing the file system of the Windows operating system.

[0044] Optionally, before uploading the updated file back to the file storage gateway system, the target client further performs the following steps: determining whether there is a difference between the corresponding file currently stored in the software system and the initial file previously copied to the new disk partition; if there is a difference, displaying a prompt message to the user to inform the user that the current file status has changed, and the user chooses to overwrite the uploading or abandon the uploading; and if there is no difference, uploading the updated file back to the server of the software system through the file storage gateway system.

[0045] Specifically, before the target client uploads the updated file back to the file storage gateway system, it first compares the content differences between the modified file in the local new disk partition and the original file in the software system. This step can be achieved by calculating the file hash value, comparing the file size, or comparing byte by byte. If a difference is found (that is, the file has been modified by other users, for example, in a collaborative scenario, someone else has modified the file content), a prompt window will pop up to the user, clearly informing him that the status of the current file has changed, and providing two options for the user to choose: "Overwrite upload" or "Abandon upload". Among them, "Overwrite upload" means that the user's latest changes will be uploaded and replace the old version on the remote server; "Abandon upload" means that the user's local changes will not be saved, but the existing version on the remote server will remain unchanged.

[0046] If no differences are detected (i.e., the file has not been modified by anyone else), the updated file is synchronized back to the software system's server directly through the file storage gateway system without the need for additional manual confirmation steps.

[0047] Therefore, by real-time monitoring and comparison of file differences, data consistency and accuracy are ensured when different users collaborate, avoiding content conflicts caused by multiple people editing the same document at the same time. When file changes are detected, timely reminders are given and users are allowed to decide how to handle them independently, which not only respects the user's decision-making power but also reduces the risk of accidentally overwriting other people's work. In addition, the automated synchronization mechanism simplifies the tedious manual upload process under normal circumstances, improving the overall user experience.

[0048] Optionally, the protection method also includes: in response to the user's first operation, the terminal device calls the target client to create a new file in the new disk partition; the terminal device accesses or edits the new file in the new disk partition; when the user completes editing or accessing the new file, the terminal device further calls the target client to perform the following operations: displaying a data synchronization interface to the user; wherein the data synchronization interface is used for the user to determine the synchronization strategy of the new file; the synchronization strategy includes direct synchronization, selected location synchronization and abandoned synchronization; if the synchronization strategy determined by the user is selected location synchronization, the data synchronization interface further allows the user to set the target storage address of the new file on the server of the software system; and according to the second operation performed by the user on the data synchronization interface, determining the synchronization strategy selected by the user, and performing corresponding synchronization operations on the new file according to the synchronization strategy selected by the user.

[0049] Specifically, when the user performs a specific first operation on the terminal device (such as clicking the "New" button), the terminal device will automatically call the target client to generate a new blank document or other type of file in the new disk partition that was previously divided. The user can then freely view and modify the content of the newly created file in the local environment until he is satisfied. After the user completes all editing activities on the new file, the terminal device calls the target client again to start a special data synchronization interface, which provides three different synchronization options for the user to choose from: "Direct synchronization", "Select location synchronization" and "Abandon synchronization". The user can express his needs by clicking a button or other interactive methods to perform a second operation on the data synchronization interface. The target client determines the synchronization strategy selected by the user based on the second operation, and performs corresponding synchronization operations on the new file based on the synchronization strategy selected by the user.

[0050] Among them, if the user selects "Direct Synchronization", it means that the user chooses to synchronize the new files directly to the default target storage location on the server of the software system without any additional configuration steps. If the user selects "Select Location Synchronization", it means that the user needs to further specify a custom target path as the final save point, and the software system provides an interface for the user to select where these newly added files are stored. At this time, the target client must not only record this information and make relevant preparations before the actual transmission (such as verifying the validity of the target path, etc.), but also be responsible for sending this data to the file storage gateway system for subsequent processing. If the user selects "Abandon Synchronization", it means that the user's changes will not be saved and will not affect the existing version on the remote server. In this case, the target client only needs to simply clean up the temporary cache to end the entire task without performing any substantive synchronization operations.

[0051] Therefore, the file operation process is simplified through the automated processing mechanism, the user experience and work efficiency are improved, and the consistency and security of the data are ensured.

[0052] It should be noted that the file storage gateway system will manage which files are stored in the software system and which files are newly added locally based on the file records during downloading. The strategies for returning files downloaded from the software system and newly added files are inconsistent, that is, the user can set the strategy for newly added files to be directly returned, or to select a location or give up returning.

[0053] Optionally, the operation of performing corresponding synchronization operations on the new file according to the synchronization strategy selected by the user specifically includes the following steps: if the synchronization strategy selected by the user is direct synchronization, the new file is directly transmitted back to the file storage gateway system, and the new file is synchronized to the server of the software system through the file storage gateway system; if the synchronization strategy selected by the user is selected location synchronization, the new file and the target storage address set by the user are transmitted back to the file storage gateway system, and the new file is synchronized to the target storage address in the server of the software system through the file storage gateway system; and if the synchronization strategy selected by the user is to abandon synchronization, no synchronization operation is performed on the new file.

[0054] Specifically, if the user chooses direct synchronization, the target client will directly send the new file back to the file storage gateway system, and the file storage gateway system will synchronize the new file to the default storage address in the server of the software system. This step ensures that the file can be saved quickly and accurately to the preset target address, avoiding the tediousness and error risks brought by manual configuration. If the user chooses to synchronize by selected location, the user is allowed to set a custom target storage address. Subsequently, the target client sends the new file and the address information to the file storage gateway system, and the file storage gateway system will synchronize the new file to the target storage address in the server of the software system to achieve accurate synchronization. This mechanism provides higher flexibility and controllability, allowing users to freely decide the final destination of the file according to actual needs without restriction. If the user chooses to give up synchronization, no synchronization operation will be performed, and local modifications will not affect the remote version.

[0055] In this way, a flexible and efficient file synchronization function is achieved, supporting multiple synchronization strategies to meet the needs of different scenarios.

[0056] Optionally, before the terminal device accesses the files in the new disk partition, the terminal device also calls the target client to perform the following operations: sending a request to the file storage gateway system for obtaining read and write permissions for each file in the file list; receiving the read and write permissions returned by the file storage gateway system; wherein the read and write permissions are the read and write permissions of the user for each file in the file list obtained by the file storage gateway system from the server of the software system; according to the read and write permissions, setting corresponding access permissions for the corresponding files in the new disk partition; and when it is determined that the user only has read permission for a file in the file list, setting the status of the file in the new disk partition to read-only, and automatically removing the file from the returned file list; wherein the target client only performs the operation of returning to the file storage gateway system for the files recorded in the returned file list.

[0057] Specifically, before the terminal device accesses the files in the new disk partition, the terminal device also calls the target client to perform a series of interactions with the file storage gateway system to obtain the read and write permissions of the files and set the access permissions accordingly. This series of interactive operations includes: the target client first sends a request to the file storage gateway system to obtain the read and write permissions for each file in the file list. The file storage gateway system then obtains these permissions from the server of the software system and returns them to the target client to ensure that users can only access the files they are authorized to. Then, the target client sets the corresponding access permissions for the corresponding files in the new disk partition based on the received read and write permissions, so that the target client can flexibly adapt to different user needs and permission policies.

[0058] In particular, when it is determined that the user has only read permission for a file in the file list, the target client sets the file's status in the new disk partition to read-only and automatically removes the file from the list of files to be uploaded. Even if the user forcibly changes the file's read-only status and modifies the file, the target client will not upload the file back. This process not only prevents unauthorized modification or deletion operations, but also reduces unnecessary upload operations, saving network bandwidth and computing resources.

[0059] Optionally, the operation of transmitting the updated file back to the file storage gateway system specifically includes the following steps: the target client determines whether the file size of the updated file to be transmitted back exceeds a preset threshold, and performs the following corresponding operations based on the result of the judgment: if the file size of the updated file does not exceed the preset threshold, the target client directly transmits the updated complete file back to the file storage gateway system, and synchronizes the updated complete file to the server of the software system through the file storage gateway system; if the file size of the updated file exceeds the preset threshold, the target client performs the following further operations: compares the updated file with the corresponding file stored in the software system to determine the incremental part of the file since the last synchronization; and transmits only the incremental part back to the file storage gateway system, and synchronizes the incremental part to the server of the software system through the file storage gateway system.

[0060] Specifically, the target client first determines whether the file size of the updated file to be transmitted back exceeds a preset threshold to determine the subsequent transmission strategy, that is, whether to transmit the complete file or only the incremental part. If the file size does not exceed the preset threshold, it usually means that the file is small. Transmitting the complete file can avoid the additional overhead caused by incremental calculation and may improve overall efficiency. Therefore, the target client directly transmits the updated complete file back to the file storage gateway system. After receiving the complete file, the file storage gateway system will synchronize it to the server of the software system to ensure that the file on the server is the latest.

[0061] When the file size exceeds the preset threshold, if each modification needs to be fully transmitted back in real time, the network transmission volume will increase, which also means that the transmission time is long, which is prone to jamming. In order to solve this problem, the target client will first compare the file with the corresponding file stored in the software system, such as using Rsync or RDC (Remote Differential Compression) algorithm for comparison. The purpose of comparing files is to determine the incremental part of the file since the last synchronization, that is, which parts have been modified or added. After determining the incremental part of the file, the target client only transmits this part of the incremental back to the file storage gateway system, which reduces the transmission volume and improves the transmission response time. After receiving the incremental part, the file storage gateway system will synchronize it to the server of the software system to ensure that the files on the server are consistent with the local files.

[0062] Therefore, the optimal return method can be automatically selected according to the file size to save network bandwidth and return efficiency and ensure data accuracy. It is suitable for files of different sizes and can flexibly cope with various scenarios.

[0063] Optionally, the operation of the terminal device accessing the file in the new disk partition specifically includes at least one of the following steps: the terminal device reads the content of the file in the new disk partition; the terminal device writes new data to the file in the new disk partition; the terminal device modifies the data in the file in the new disk partition.

[0064] Specifically, the user can access the file in the new disk partition through the terminal device according to actual needs. For example, but not limited to, the content of the file can be read in the new disk partition through the terminal device to view it. New data can be written to the file in the new disk partition through the terminal device to add new content. The data in the file can be modified in the new disk partition through the terminal device to adjust the content of the file.

[0065] It should be noted that after the user completes the modification of the file, there are two ways to inform the target terminal device that all operations on the file have been completed. One way is for the user to close the target client of the file storage gateway system, and the other way is for the user to close the software system. At this time, the file storage gateway system needs to confirm and send back all modified files to the server of the software system. After the file storage gateway system is closed, the mapping relationship between the corresponding files stored in the software system and the corresponding files in the new disk partition is deleted, and all material files on the new disk partition are deleted.

[0066] It should also be noted that since the client of the file storage gateway system chooses to allocate a part of the space on the local disk of the terminal device as a new disk partition, the size of the new disk partition space depends on the space size of the user's local disk. The size of the files that can be downloaded and cached is only related to the remaining disk space and has nothing to do with other factors such as memory. Generally speaking, a larger number and volume of files can be stored and managed.

[0067] In addition, according to this embodiment, a storage medium is also provided, wherein the storage medium includes a stored program, wherein when the program is run, a processor executes any one of the above methods.

[0068] In summary, the present application provides a method of protecting the storage and use of files that are mapped when in use and the mapping relationship is broken when not in use, by introducing a file storage gateway system as an intermediary and bridge between the user's terminal device and the software system, and installing the client (i.e., target client) of the file storage gateway system on the user's terminal device, and the target client is responsible for communicating with the file storage gateway system. When the terminal device receives an instruction from the user to access the corresponding files stored in the software system, the user does not need to perform a download operation, but the terminal device automatically starts or calls the target client, sends a request to obtain a file list to the file storage gateway system, and the file storage gateway system obtains the corresponding file list from the server of the software system, and returns it to the target client, providing a basis for subsequent file access. After the target client receives the file list, it will divide a part of the space on the local disk of the terminal device as a new disk partition, and copy the files in the file list into files in the new disk partition through a mapping operation. After that, the terminal device can directly access and operate files in the new disk partition, such as viewing and editing. When the user completes file access, the target client will detect whether the file in the new disk partition has changed. Once the file is detected to have changed, the target client will automatically send the updated file back to the file storage gateway system, which will synchronize it to the server of the software system without manual operation by the user, so as to ensure the consistency of the file on the server of the software system with the local file version, and also provide the latest file version to other collaborative users, ensuring the consistency and real-time of multi-person collaborative data. Finally, after the file is returned, the target client will delete the corresponding file in the new disk partition to avoid the potential security risks caused by the long-term retention of the file in the user terminal, and release the local storage space for subsequent use. Thus, the technical problems of cumbersome operation, chaotic version management, terminal storage security risks, inconsistent multi-person collaborative data and insufficient real-time viewing and editing in the current software system in the prior art are solved. When the user completes file access, the target client will detect whether the file in the new disk partition has changed. Once the file is detected to have changed, the target client will automatically send the updated file back to the server of the software system, without manual operation by the user, so as to ensure the consistency of the file on the server with the local file version, and also provide the latest file version to other collaborative users, ensuring the consistency and real-time of multi-person collaborative data. Finally, after the file is uploaded, the target client will delete the corresponding file in the new disk partition to avoid the potential security risks caused by the long-term retention of the file in the user terminal, and release the local storage space for subsequent use. This solves the technical problems of the file processing solution in the current software system in the prior art, such as cumbersome operation, chaotic version management, terminal storage security risks, inconsistent multi-person collaborative data, and insufficient real-time performance.

[0069] It should be noted that, for the above-mentioned method embodiments, for the sake of simplicity, they are all described as a series of action combinations, but those skilled in the art should know that the present invention is not limited by the described action sequence, because according to the present invention, certain steps can be performed in other sequences or simultaneously. Secondly, those skilled in the art should also know that the embodiments described in the specification are all preferred embodiments, and the actions and modules involved are not necessarily required by the present invention.

[0070] Example 2

[0071] Figure 3 The structural schematic diagram of the protection system for file storage and use of the software system according to the present embodiment is shown. The protection system includes: a user's terminal device and a target client installed on the terminal device, the target client being a client of the file storage gateway system; wherein the terminal device is used to respond to the operation generated by the user accessing the corresponding file stored in the software system, call the target client pre-installed on the terminal device, and send a file list acquisition request to the server of the software system; the target client is used to divide a part of the space on the local disk of the terminal device as a new disk partition after receiving the file list sent by the server of the software system, and copy the files in the file list to the new disk partition; and the terminal device is also used to access the files in the new disk partition, and when the user completes the access to the files, the target client performs the following operations: detecting whether the files in the new disk partition have changed, and when the files are detected to have changed, transmitting the updated files back to the server of the software system, and deleting the corresponding files in the new disk partition after the transmission is completed.

[0072] Optionally, the file storage gateway system establishes a communication connection with the server of the software system through the NFS protocol or the SMB protocol.

[0073] Optionally, before uploading the updated file back to the file storage gateway system, the target client further performs the following steps: determining whether there is a difference between the corresponding file currently stored in the software system and the initial file previously copied to the new disk partition; if there is a difference, displaying a prompt message to the user to inform the user that the current file status has changed, and the user chooses to overwrite the uploading or abandon the uploading; and if there is no difference, uploading the updated file back to the server of the software system through the file storage gateway system.

[0074] Optionally, the protection system also includes: in response to the user's first operation, the terminal device calls the target client to create a new file in the new disk partition; the terminal device accesses or edits the new file in the new disk partition; when the user completes editing or accessing the new file, the terminal device further calls the target client to perform the following operations: displaying a data synchronization interface to the user; wherein the data synchronization interface is used for the user to determine the synchronization strategy of the new file; the synchronization strategy includes direct synchronization, selected location synchronization and abandoned synchronization; if the synchronization strategy determined by the user is selected location synchronization, the data synchronization interface further allows the user to set the target storage address of the new file on the server of the software system; and according to the second operation performed by the user on the data synchronization interface, determining the synchronization strategy selected by the user, and performing corresponding synchronization operations on the new file according to the synchronization strategy selected by the user.

[0075] Optionally, the operation of performing corresponding synchronization operations on the new file according to the synchronization strategy selected by the user specifically includes the following steps: if the synchronization strategy selected by the user is direct synchronization, the new file is directly transmitted back to the file storage gateway system, and the new file is synchronized to the server of the software system through the file storage gateway system; if the synchronization strategy selected by the user is selected location synchronization, the new file and the target storage address set by the user are transmitted back to the file storage gateway system, and the new file is synchronized to the target storage address in the server of the software system through the file storage gateway system; and if the synchronization strategy selected by the user is to abandon synchronization, no synchronization operation is performed on the new file.

[0076] Optionally, before the terminal device accesses the files in the new disk partition, the terminal device also calls the target client to perform the following operations: sending a request to the file storage gateway system for obtaining read and write permissions for each file in the file list; receiving the read and write permissions returned by the file storage gateway system; wherein the read and write permissions are the read and write permissions of the user for each file in the file list obtained by the file storage gateway system from the server of the software system; according to the read and write permissions, setting corresponding access permissions for the corresponding files in the new disk partition; and when it is determined that the user only has read permission for a file in the file list, setting the status of the file in the new disk partition to read-only, and automatically removing the file from the returned file list; wherein the target client only performs the operation of returning to the file storage gateway system for the files recorded in the returned file list.

[0077] Optionally, the operation of transmitting the updated file back to the file storage gateway system specifically includes the following steps: the target client determines whether the file size of the updated file to be transmitted back exceeds a preset threshold, and performs the following corresponding operations based on the result of the judgment: if the file size of the updated file does not exceed the preset threshold, the target client directly transmits the updated complete file back to the file storage gateway system, and synchronizes the updated complete file to the server of the software system through the file storage gateway system; if the file size of the updated file exceeds the preset threshold, the target client performs the following further operations: compares the updated file with the corresponding file stored in the software system to determine the incremental part of the file since the last synchronization; and transmits only the incremental part back to the file storage gateway system, and synchronizes the incremental part to the server of the software system through the file storage gateway system.

[0078] Optionally, the operation of the terminal device accessing the file in the new disk partition specifically includes at least one of the following steps: the terminal device reads the content of the file in the new disk partition; the terminal device writes new data to the file in the new disk partition; the terminal device modifies the data in the file in the new disk partition.

[0079] Thus, according to this embodiment, a file storage gateway system is introduced as an intermediary and bridge between a user terminal device and a software system, and a client (i.e., a target client) of the file storage gateway system is installed on the user's terminal device, and the target client is responsible for communicating with the file storage gateway system. When the terminal device receives an instruction from a user to access the corresponding files stored in the software system, the user does not need to perform a download operation, but the terminal device automatically starts or calls the target client, sends a request to obtain a file list to the file storage gateway system, and the file storage gateway system obtains the corresponding file list from the server of the software system, and returns it to the target client, providing a basis for subsequent file access. After the target client receives the file list, a portion of space will be divided on the local disk of the terminal device as a new disk partition, and the files in the file list will be copied to the files in the new disk partition through a mapping operation. Afterwards, the terminal device can directly access the files and operate them in the new disk partition, such as viewing and editing. When the user completes file access, the target client will detect whether the file in the new disk partition has changed. Once the file is detected to have changed, the target client will automatically send the updated file back to the file storage gateway system, which will synchronize it to the server of the software system without manual operation by the user, so as to ensure the consistency of the file on the server of the software system with the local file version, and also provide the latest file version to other collaborative users, ensuring the consistency and real-time of multi-person collaborative data. Finally, after the file is returned, the target client will delete the corresponding file in the new disk partition to avoid the potential security risks caused by the long-term retention of the file in the user terminal, and release the local storage space for subsequent use. Thus, the technical problems of cumbersome operation, chaotic version management, terminal storage security risks, inconsistent multi-person collaborative data and insufficient real-time viewing and editing in the current software system in the prior art are solved. When the user completes file access, the target client will detect whether the file in the new disk partition has changed. Once the file is detected to have changed, the target client will automatically send the updated file back to the server of the software system, without manual operation by the user, so as to ensure the consistency of the file on the server with the local file version, and also provide the latest file version to other collaborative users, ensuring the consistency and real-time of multi-person collaborative data. Finally, after the file is uploaded, the target client will delete the corresponding file in the new disk partition to avoid the potential security risks caused by the long-term retention of the file in the user terminal, and release the local storage space for subsequent use. This solves the technical problems of the file processing solution in the current software system in the prior art, such as cumbersome operation, chaotic version management, terminal storage security risks, inconsistent multi-person collaborative data, and insufficient real-time performance.

[0080] The serial numbers of the above embodiments of the present invention are only for description and do not represent the advantages or disadvantages of the embodiments.

[0081] In the above embodiments of the present invention, the description of each embodiment has its own emphasis. For parts that are not described in detail in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.

[0082] In the several embodiments provided in this application, it should be understood that the disclosed technical content can be implemented in other ways. Among them, the device embodiments described above are only schematic. For example, the division of the units is only a logical function division. There may be other division methods in actual implementation. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of units or modules, which can be electrical or other forms.

[0083] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.

[0084] In addition, each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.

[0085] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art, or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions for a computer device (which can be a personal computer, a server or a network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present invention. The aforementioned storage medium includes: U disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, RandomAccess Memory), mobile hard disk, magnetic disk or optical disk and other media that can store program codes.

[0086] The above is only a preferred embodiment of the present invention. It should be pointed out that for ordinary technicians in this technical field, several improvements and modifications can be made without departing from the principle of the present invention. These improvements and modifications should also be regarded as the scope of protection of the present invention.

Claims

1. A method for protecting the storage and use of files in a software system, characterized in that: include: After receiving a request from a user to access a corresponding file stored in the software system, the terminal device starts or calls a target client pre-installed on the terminal device and sends a file list acquisition request to the file storage gateway system; The target client is a client of the file storage gateway system; The file storage gateway system obtains the corresponding file list from the server of the software system according to the file list acquisition request, and returns the file list to the target client; After receiving the file list sent by the server of the software system, the target client allocates a portion of space on the local disk of the terminal device as a new disk partition, and copies the files in the file list to the new disk partition; The terminal device accesses the file in the new disk partition, and when the user completes accessing the file, the target client performs the following operations: detecting whether the file in the new disk partition has changed, and when it is detected that the file has changed, transmitting the updated file back to the file storage gateway system, and deleting the corresponding file in the new disk partition after the transmission is completed; as well as The file storage gateway system synchronizes the updated file to the server of the software system.

2. The method according to claim 1, characterized in that The file storage gateway system establishes a communication connection with the server of the software system through the NFS protocol or the SMB protocol.

3. The method according to claim 1, characterized in that Before transmitting the updated file back to the file storage gateway system, the target client further performs the following steps: Determine whether there is a difference between the corresponding file currently stored in the software system and the initial file previously copied to the new disk partition; If there is a difference, a prompt message is displayed to the user to inform the user that the current file status has changed, and the user can choose to overwrite and upload or give up the upload; as well as If there is no difference, the updated file is transmitted back to the server of the software system through the file storage gateway system.

4. The method according to claim 1, characterized in that: Also includes: In response to the first operation of the user, the terminal device calls the target client to create a new file in the new disk partition; The terminal device accesses or edits the new file in the new disk partition; When the user completes editing or accessing the new file, the terminal device further calls the target client to perform the following operations: A data synchronization interface is presented to the user; wherein the data synchronization interface is used for the user to determine the synchronization strategy of the new file; the synchronization strategy includes direct synchronization, selected location synchronization and abandoned synchronization; if the synchronization strategy determined by the user is selected location synchronization, the data synchronization interface further allows the user to set the target storage address of the new file on the server of the software system; as well as According to the second operation performed by the user on the data synchronization interface, the synchronization strategy selected by the user is determined, and a corresponding synchronization operation is performed on the new file according to the synchronization strategy selected by the user.

5. The method according to claim 4, characterized in that The operation of performing a corresponding synchronization operation on the new file according to the synchronization strategy selected by the user specifically comprises the following steps: If the synchronization strategy selected by the user is direct synchronization, the new file is directly transmitted back to the file storage gateway system, and the new file is synchronized to the server of the software system through the file storage gateway system; If the synchronization strategy selected by the user is location synchronization, the new file and the target storage address set by the user are transmitted back to the file storage gateway system, and the new file is synchronized to the target storage address in the server of the software system through the file storage gateway system; and If the synchronization policy selected by the user is to abandon synchronization, no synchronization operation is performed on the new file.

6. The method according to claim 1, characterized in that Before the terminal device accesses the file in the new disk partition, the terminal device further calls the target client to perform the following operations: Sending a read / write permission acquisition request for each file in the file list to the file storage gateway system; Receive the read and write permissions returned by the file storage gateway system; wherein the read and write permissions are the read and write permissions of the user for each file in the file list obtained by the file storage gateway system from the server of the software system; According to the read and write permissions, corresponding access permissions are set for corresponding files in the new disk partition; as well as When it is determined that the user has only read permission for a file in the file list, the status of the file in the new disk partition is set to read-only, and the file is automatically removed from the returned file list; wherein the target client only performs the operation of returning the files recorded in the returned file list to the file storage gateway system.

7. The method according to claim 1, characterized in that The operation of transmitting the updated file back to the file storage gateway system specifically includes the following steps: The target client determines whether the file size of the updated file to be transmitted back exceeds a preset threshold, and performs the following corresponding operations according to the result of the determination: If the file size of the updated file does not exceed the preset threshold, the target client directly transmits the updated complete file back to the file storage gateway system, and synchronizes the updated complete file to the server of the software system through the file storage gateway system; If the file size of the updated file exceeds the preset threshold, the target client performs the following further operations: Comparing the updated file with a corresponding file stored in the software system to determine the incremental portion of the file generated since the last synchronization; and Only the incremental part is transmitted back to the file storage gateway system, and the incremental part is synchronized to the server of the software system through the file storage gateway system.

8. The method according to claim 1, characterized in that The operation of the terminal device accessing the file in the new disk partition specifically includes at least one of the following steps: The terminal device reads the content of the file in the new disk partition; The terminal device writes new data to the file in the new disk partition; The terminal device modifies the data in the file in the new disk partition.

9. A storage medium, characterized in that: The storage medium includes a stored program, wherein when the program is run, the processor executes the method according to any one of claims 1 to 8.

10. A file storage and use protection system for a software system, characterized in that: It includes a user's terminal device, a file storage gateway system and a target client installed on the terminal device, wherein the target client is a client of the file storage gateway system; The terminal device is used to start or call a target client pre-installed on the terminal device after receiving a user's request to access a corresponding file stored in the software system, and send a file list acquisition request to the file storage gateway system; wherein the target client is a client of the file storage gateway system; The file storage gateway system is used to obtain the corresponding file list from the server of the software system according to the file list acquisition request, and return the file list to the target client; The target client is used to, after receiving the file list sent by the server of the software system, divide a part of space on the local disk of the terminal device as a new disk partition, and copy the files in the file list to the new disk partition; The terminal device is used to access the file in the new disk partition. When the user completes accessing the file, the target client performs the following operations: detecting whether the file in the new disk partition has changed, and when it is detected that the file has changed, transmitting the updated file back to the file storage gateway system, and deleting the corresponding file in the new disk partition after the transmission is completed; and The file storage gateway system is used to synchronize the updated file to the server of the software system.