A data sharing management and control method and system
By adding a preset data sharing control strategy to the data request end, the data transmission service system determines the source and type of requests based on the policy, and realizes one-way control of data sharing, solving the shortcomings of two-way control in the existing technology, meeting users' needs for flexible control, and improving the security of data sharing.
Patent Information
- Application Number
- CN202411635442.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2021-08-31
- Publication Date
- 2025-04-04
AI Technical Summary
The existing data transmission protocol for remotely connected desktop cloud virtual device side can only realize two-way clipboard control, which cannot meet users' needs for flexible control of some virtual device side, and lacks one-way control capabilities.
By adding a preset data sharing control strategy to the data request end, the data transmission service system determines the source and type of request based on the policy, and realizes one-way control of data sharing. The method includes connecting the data copy end and the data paste end with the data transmission service system respectively, configuring the initial permissions of the data sharing unit, and performing permission settings and data transmission according to the data sharing control policy.
It realizes one-way control of data sharing between desktop cloud client and virtual device, meets users' high flexibility in the use of clipboards, and executes control policies through the data transmission server to ensure the security of data sharing.
Smart Images

Figure CN119759604A_ABST
Abstract
Description
[0001] This divisional application is a divisional application based on the Chinese invention patent application with application number 202111014655.0, application date August 31, 2021, and invention name “A data sharing management method and system”. Technical Field
[0002] The present invention relates to virtualization technology, in particular to virtualization data access technology, and in particular to a data sharing management and control technology. Background Art
[0003] With the development of Internet technology, many advanced computer technologies and information technologies have also emerged. Desktop cloud uses virtualization technology to virtualize various physical devices, thereby effectively improving resource utilization, saving costs and improving application quality. With the support of virtualization technology, the connection between network software and hardware devices will be more flexible and scalability will be greatly improved.
[0004] The virtualization technology of desktop cloud is essentially to store and manage all user information in a unified manner. Through simple network access devices, users can achieve centralized management through cloud desktops and realize efficient resource sharing. In addition, users can also personalize cloud desktops according to their own needs to meet diverse needs. Desktop cloud uses virtualization technology to unify desktops and share resources, allowing users to break away from fixed hosts and use thin clients or any other network-connected devices to achieve cross-platform access to desktop systems at any time and any place. It can also solve many of the drawbacks of traditional desktop management models and has become the mainstream trend of providing the best solutions at low cost for the current key industry informatization and e-government development.
[0005] For example, in a university teaching application scenario, the student terminal uses the virtualization technology of the desktop cloud to virtualize a virtual device terminal connected to the teacher terminal, so that the student terminal establishes data access and sharing with the teacher terminal through the virtual device terminal. Commonly, the student terminal accesses the teacher terminal's data through the virtual device terminal, and cuts and / or copies the teacher terminal's data through the system clipboard and stores it in the local device.
[0006] However, in a cloud desktop model with highly aggregated resources, remote data, and elastic large-scale, data security issues are still unavoidable. The existing data transmission protocols for remote connection to desktop cloud virtual devices (such as the Spice protocol) can only implement two-way control of the clipboard. That is, by setting whether to allow the use of the clipboard, the data sharing of the clipboard between the thin client and the virtual device is controlled.
[0007] Still taking the university teaching mentioned above as an example, in the process of data sharing between the student side and the teacher side, the teacher side can only give all student side virtual device sides the permission to allow or not allow the data to be cut and / or copied through the clipboard. At the same time, this control is a two-way control, that is, when all student side virtual device sides are not allowed to cut and / or copy the teacher side's data through the clipboard, the teacher side is also unable to cut and / or copy data from all student side virtual device sides through the clipboard. In summary, in this application scenario, the teacher side can neither achieve the access and cutting of student side data while retaining its access and cutting rights to student side data, nor can it achieve the access and cutting rights of some student sides while canceling the data access and sharing rights of other student sides. The existing control method can only achieve two-way control of the clipboard for all virtual device sides, which cannot meet the user's demand for the control of some virtual device sides, lacks flexibility, and cannot achieve one-way control. Summary of the invention
[0008] In view of the deficiencies in the prior art, the present invention provides a flexible data sharing and management solution for desktop cloud virtual devices based on a virtualized data transmission protocol.
[0009] In order to solve the above technical problems, the present invention adopts a data sharing management and control method, which is used to manage data sharing between a network composed of at least one data copy end and at least one data paste end, wherein the data copy end and the data paste end are respectively connected to a data transmission service system and communicate with each other, at least one of the data copy end and the data paste end is a virtual device end, and the other end can be other communication ends including a client or a virtual device end, and the method comprises: step S1, the data paste end configures the initial authority of the data sharing unit, and the initial authority is granted to the data paste end; step S2, the data copy end sends a first data request to the data transmission service system; step S3, the data transmission service system obtains a first data sharing management and control strategy according to the first data request; step S4, the data transmission service system performs judgment according to the first data request and the first data sharing management and control strategy, If the judgment is correct, step S5 is executed; if the judgment is wrong, the first data request is ignored; in step S5, the data transmission service system forwards the first data request to the data pasting end. After receiving the first data request, the data pasting end sets the authority of the data sharing unit to the data copying end, and returns the second data request to the data transmission service system; in step S6, the data transmission service system performs judgment according to the second data request. If the judgment is correct, step S7 is executed; if the judgment is wrong, the second data request is ignored; in step S7, the data transmission service system forwards the second data request to the data copying end. After receiving the second data request, the data copying end shares the data to be copied with the data sharing unit and releases the authority of the data sharing unit; in step S8, the data pasting end obtains the authority of the data sharing unit and reads the data to be copied.
[0010] Preferably, the data copy end and the data paste end are respectively connected to the data transmission service system and realize communication, including: the data copy end and the data paste end respectively establish communication channels with the data transmission service system; the data transmission service system determines the source of sending the data request according to the communication channel for receiving the data request, the source includes the address and / or identification of the communication end, and the data request includes the first data request and the second data request.
[0011] Preferably, the first data request includes the address and / or identifier of the virtual device end that uniquely corresponds to the first data sharing management and control policy; in the step S3, the data transmission service system obtains the first data sharing management and control policy according to the first data request, including: the data transmission service system obtains the first data sharing management and control policy according to the address and / or identifier of the virtual device end.
[0012] Preferably, the first data sharing management and control strategy includes: a first strategy, prohibiting all data sharing between the virtual device end and the other communication ends; a second strategy, allowing all data sharing between the virtual device end and the other communication ends; a third strategy, only allowing other communication ends to share data with the virtual device end; a fourth strategy, only allowing the virtual device end to share data with other communication ends.
[0013] Preferably, in step S4, the data transmission service system performs a judgment based on the first data request and the first data sharing control policy, including: step S41, if the first data sharing control policy is the first policy, the judgment is wrong; step S42, if the first data sharing control policy is the second policy or the third policy, the judgment is correct; step S43, if the first data sharing control policy is the fourth policy, and the source of the first data request is the same as the address and / or identifier of the virtual device end of the first data request, the judgment is correct, otherwise the judgment is wrong.
[0014] Preferably, in step S6, the data transmission service system performs a judgment based on the second data request, including: step S62, if the first data sharing management and control policy is the third policy, and the source of the second data request is different from the address and / or identifier of the virtual device end of the first data request, then the judgment is wrong; otherwise, the judgment is correct.
[0015] Preferably, the second data request includes the address and / or identifier of the virtual device end that uniquely corresponds to the second data sharing management and control policy; the step S6 includes: step S61, the data transmission service system obtains the second data sharing management and control policy according to the second data request; the step S61 includes: the data transmission service system obtains the second data sharing management and control policy according to the address or identifier of the virtual device end.
[0016] Preferably, the step S42 includes: if the first data sharing management and control policy is the third policy, and the source of the first data request is the same as the address and / or identifier of the virtual device end of the first data request, then it is judged to be wrong, otherwise it is judged to be correct.
[0017] Preferably, the second data sharing control policy includes a data sharing control policy that is the same as the first data sharing control policy; in the step S6, the data transmission service system performs a judgment based on the second data request, including: step S62, if the second data sharing control policy is the first policy or the fourth policy, the judgment is wrong; step S63, if the second data sharing control policy is the second policy or the third policy, the judgment is correct.
[0018] In order to solve the above technical problems, the present invention also adopts a data sharing management and control system for implementing any of the methods described above, the system includes at least one data copy end, at least one data paste end, and at least one data transmission service system, at least one of the data copy end and the data paste end is a virtual device end, and the other end can be a client or other virtual device end; wherein, the data transmission system is used to establish data communication between the client and the virtual device end and between multiple virtual device ends, and the data transmission system includes at least one data transmission server, at least one data transmission agent and at least one data transmission client; wherein, the data transmission agent is deployed in the virtual device end, and is used to establish communication between the virtual device end and the data transmission server; the data transmission client is deployed in the client, and is used to establish communication between the client and the data transmission server; the data transmission server is used to receive and forward data requests and shared data sent by the client and / or the virtual device end.
[0019] Due to the adoption of the above technical solution, the present invention has the following beneficial technical effects compared with the prior art:
[0020] 1) It realizes one-way control of data sharing between the desktop cloud client and the virtual device end, that is, data sharing from the virtual device end to the local end and / or the local end to the virtual device end and between virtual device ends can be realized according to the control strategy; (2) Different control schemes can be formulated for multiple different virtual device ends, meeting the user's high flexibility requirements for the use of the clipboard; (3) Since the control strategy is executed by the data transmission server, it can prevent users from damaging it through illegal means, thereby ensuring the security of data sharing. BRIEF DESCRIPTION OF THE DRAWINGS
[0021] Figure 1 is a schematic diagram showing the connection structure of the data sharing management and control system shown in the first embodiment of the present invention;
[0022] Figure 2 is a flow chart showing the control process of the data sharing control method in a preferred embodiment of the present invention;
[0023] Figure 3 It is a flow chart showing the connection structure of the data sharing management and control system shown in the second embodiment of the present invention. DETAILED DESCRIPTION
[0024] An embodiment of a data sharing management method and system according to the present invention will be described below with reference to the accompanying drawings. A person of ordinary skill in the art will recognize that the described embodiments can be modified in various ways without departing from the spirit and scope of the present invention. Therefore, the drawings and descriptions are illustrative in nature and are not intended to limit the scope of protection of the claims. In addition, in this specification, the drawings are not drawn to scale, and the same reference numerals represent the same parts.
[0025] It should be noted that the expressions “first” and “second” used in the embodiments of the present invention are intended to distinguish two non-identical entities with the same name or non-identical parameters. It can be seen that “first” and “second” are only for the convenience of expression and should not be understood as limitations on the embodiments of the invention. The subsequent embodiments will not explain this one by one.
[0026] The present invention provides a data sharing management and control method and system, which is proposed to address the technical problem of inflexible data sharing management and control between devices in the prior art, especially in desktop cloud virtualization technology. In the data sharing process between two devices, usually the data requesting party sends a request to the requested party, and after the requested party allows the request, the data is sent to the requesting party. However, in a desktop cloud virtual environment such as a client and a virtual device end connected by a data transmission service system, data sharing management and control can only allow or not allow data sharing between two communication terminals (such as a client and a virtual device end), and the management and control flexibility is poor. In specific applications, such as teaching scenarios, the teacher's computer, which is often the client, does not want the student computer, which is the virtual end, to copy data, but hopes that its operation of copying data from the student computer will not be affected. Obviously, the existing management and control methods have been difficult to meet the specific management and control needs as mentioned above.
[0027] The idea of solving the above technical problems in the preferred embodiment of the present invention is to add a preset data control policy to the data request sent by the data request end. The data sharing policy stipulates whether the current requesting party has the authority to request data from the requested party. The server side judges the source and type of the request according to the content of the data control policy, and ignores the request that does not meet the data control policy. In specific application, the content of the data control policy can be replaced or modified to achieve one-way control of data sharing.
[0028] A preferred embodiment of the present invention is based on a data transmission system consisting of at least one client and at least one virtual device end, or based on two different virtual device ends, and realizing data interaction between two communication ends through a data transmission service system. Among them, the client described in the embodiment of the present invention can be a terminal of a virtual desktop. Based on the client, the user can access the virtual data center, that is, the virtual device end described in the present invention. Normally, the specific hardware device corresponding to the client may not have high-performance computing power and data storage capabilities, but all data is stored in the corresponding virtual device end. The client can also be understood as a thin client running a virtual desktop, which can use the data in the virtual device end through the virtual desktop, and can also use the local data of the client. The virtual device end can be understood as a complete data storage system composed of the internal parts of each virtual desktop computer and each virtualized data server after desktop virtualization.
[0029] Embodiment 1
[0030] Figure 1 FIG. 1 is a schematic diagram showing the connection structure of the data sharing control system shown in the first embodiment of the present invention. Figure 1 As shown, this embodiment includes a client, a virtual device, and a data sharing management and control system formed by a data transmission service system. The system is used to realize data sharing and transmission between the client and the virtual device.
[0031] Figure 2 The control process of the data sharing control method in a preferred embodiment of the present invention is shown. In the first embodiment of the present invention, the data sharing control method includes the following steps.
[0032] Step S1: The data pasting end configures the initial authority of the data sharing unit, and the initial authority is granted to the data pasting end.
[0033] Specifically, in step S1, the data sharing unit configured by the client and the virtual device can be a virtual function unit with a clipboard function. Generally, the data sharing unit can be a part of the storage space divided from the storage space by the client or the virtual device. In the initial state, the client and the virtual device each have control authority over their data sharing units. That is, during the initial configuration, the client can only write and read data to and from its data sharing unit, and the virtual device can also only write and read data from and to the corresponding data sharing unit. That is, the client can write and read data locally on the client, and the virtual device can write and read data locally on the client, without going through the data transmission service system.
[0034] Step S2: The data replication end sends a first data request to the data transmission service system.
[0035] Specifically, the purpose of the first data request is to notify the data transmission service system that the data copying end is performing a data copying operation and requesting to obtain the authority of the data sharing unit of the data pasting end. In this embodiment, taking the data sharing between the client and the virtual device end as an example, if the user performs a copying operation on the client, the client sends a first data request to the data transmission service system to request to obtain the authority of the data sharing unit of the virtual device end; if the user performs a copying operation on the virtual device end, the virtual device end sends a first data request to the data transmission service system to request to obtain the authority of the data sharing unit of the client.
[0036] In an optional embodiment, the first data request includes the address and / or identifier of the virtual device end that uniquely corresponds to the first data sharing control policy, and the data transmission service system obtains the corresponding data sharing control policy based on the address and / or identifier. More specifically, the first data request includes information such as the address and / or identifier of the virtual device end and the request type of the first data request, and such information may be data contained in a complete structure in parallel, or may be a complete structure formed in a nested manner.
[0037] In an optional embodiment, the first data request includes a device identifier, which is used to represent the address / identifier of the data sharing strategy adopted by this data request. The device identifier can be optionally a unique identifier of the virtual device end, and accordingly, the data sharing management and control strategy is stored on the virtual device end. In this case, even if a client communicates with multiple virtual device ends at the same time, the data transmission service system can determine the unique address through the identifier of the virtual device end. For example, if the client requests to paste the copied local data to the virtual device end, the device identifier in the first data request it sends will identify the virtual device end it requested.
[0038] Step S3: The data transmission service system obtains a first data sharing management and control strategy according to the first data request.
[0039] Specifically, the data transmission service system obtains the first data sharing control policy corresponding to the address and / or identifier of the virtual device end according to the address and / or identifier of the virtual device end. For example, in this embodiment, the bidirectional first data sharing control policy includes:
[0040] (1) The first strategy prohibits all sharing behaviors, that is, other communication terminals (which can be clients or other virtual device terminals) and the virtual device terminal cannot share data with each other;
[0041] (2) The second strategy allows all sharing behaviors, that is, other communication terminals (which can be clients or other virtual device terminals) and the virtual device terminal can share data with each other;
[0042] At the same time, this embodiment also includes a unidirectional first data sharing control strategy:
[0043] (1) A third strategy that only allows other communication terminals (which may be clients or other virtual device terminals) to share data with the virtual device terminal, that is, only allows other communication terminals to copy local data and paste it to the virtual device terminal;
[0044] (2) The fourth strategy only allows the virtual device to share data with other communication terminals (which may be clients or other virtual device terminals), that is, only allows the virtual device to copy local data and paste it to other communication terminals.
[0045] Step S4, the data transmission service system performs a judgment based on the first data request and the first data sharing management and control policy. If the judgment is correct, step S5 is executed; if the judgment is wrong, the first data request is ignored.
[0046] Specifically, the data transmission service system performs a judgment based on the first data request and the first data sharing control policy, including: step S41, if the first data sharing control policy is the first policy, the judgment is wrong; step S42, if the first data sharing control policy is the second policy or the third policy, the judgment is correct; step S43, if the first data sharing control policy is the fourth policy, and the source of the first data request is the same as the address and / or identifier of the virtual device end of the first data request, the judgment is correct, otherwise the judgment is wrong.
[0047] In an optional embodiment, the determination of the first data request also includes the determination of the source of the data request. In a preferred embodiment of the present invention, the determination of the source of the data request is performed by configuring at least two data channels facing different communication terminals in the data transmission service system. For example, the data transmission service system is configured with a first data channel for communicating with the data copy terminal and a second data channel for communicating with the data paste terminal. In this way, when the data transmission service system receives a data request, it will determine the source of the data request according to the data channel of the data request. That is, when the data transmission service system receives the first data request through the first data channel, the data transmission service system determines that the source of the first data request is the data copy terminal; when the data transmission service system receives the first data request through the second data channel, the data transmission service system determines that the source of the first data request is the data paste terminal. In an optional embodiment, when the client is connected to multiple virtual device terminals, the data transmission service system will establish data channels with the multiple virtual device terminals respectively. Similarly, the data transmission service system distinguishes the source of the data request by receiving the data channel of the data request. In an optional embodiment, the source can optionally include the address and / or identification of the communication terminal.
[0048] Step S5, the data transmission service system forwards the first data request to the data pasting end. After receiving the first data request, the data pasting end sets the authority of the data sharing unit to the data copy end and returns the second data request to the data transmission service system.
[0049] Specifically, the purpose of the second data request is to notify the data transmission service system that the data pasting end allows this data sharing operation and has set the authority of the data sharing unit to the data copying end.
[0050] Step S6, the data transmission service system performs a judgment based on the second data request. If the judgment is correct, step S7 is executed. If the judgment is wrong, the second data request is ignored.
[0051] Specifically, the data transmission service system performs a judgment based on the second data request, including: if the first data sharing management and control policy is the third policy, and the address and / or identifier of the virtual device end of the second data request source is different from that of the first data request, then the judgment is wrong, otherwise the judgment is correct.
[0052] Step S7: the data transmission service system forwards the second data request to the data replication end. After receiving the second data request, the data replication end shares the data to be replicated with the data sharing unit and releases the authority of the data sharing unit.
[0053] Step S8, the data pasting end obtains the authority of the data sharing unit and reads the data to be copied.
[0054] This embodiment achieves the technical purpose of both bidirectional control and unidirectional control of shared data. This process is a clipboard function implemented by the data sharing units of the client and the virtual device.
[0055] Take the example of a client requesting to share data with a virtual device. In this example, the client is also the data copying end and the virtual device is also the data pasting end. When the client requests to share data with the virtual device, the client needs to send a first data request to the data transmission service system to obtain the data sharing unit authority of the virtual device.
[0056] In an optional embodiment, the types of data requests may be defined to include a data acquisition type "GRAB" and a data request type "REQUEST". When the data request type is "GRAB", the data transmission service system understands the data request as a data request from the data copy end, i.e., the first data request in this embodiment; when the data request type is "REQUEST", the data transmission service system understands the data request as a data request from the data paste end, i.e., the second data request in this embodiment.
[0057] In an optional embodiment, when the current data sharing control policy is the third policy, the policy that only allows the client to share data with the virtual device will ignore the second data request sent by the client. In an optional embodiment, when the current data policy is the fourth policy, the first data request sent by the client will be ignored.
[0058] According to the above aspects, when the data pasting end receives the first data request with the data request type of GRAB, the data pasting end (here, the virtual device end) grants the authority of the data sharing unit to the data copying end (here, the client), and returns the second data request. After the data transmission service system determines that the source and type of the second data request comply with the data sharing management and control policy (for example, the above step S6), it forwards the second data request to the data copying end (client), and the client writes the data to be copied into the data sharing unit of the virtual device end. After the data is written, the client immediately releases its control authority over the data sharing unit of the virtual device end. After the client completes writing the data, the virtual device end reacquires the authority of its data sharing unit, obtains the data in its data sharing unit, and completes the data sharing process.
[0059] Still taking the third strategy as an example, if the source of the first data request is the virtual device end, in an optional embodiment, the data transmission service system will forward the first data request without determining the source of the first data request. However, the data transmission service system will determine the source of the second data request, ignore the second data request from the client, and only forward the second data request from the virtual device end. At this point, the data transmission service system only allows the client to share data with the virtual device end, but does not allow the virtual device end to share data with the client.
[0060] In an optional embodiment, if the data sharing control policy obtained by the data transmission service system from the first data request sent by the client is the fourth policy, that is, only the virtual device end is allowed to share data with the client, then the data transmission service system determines that the first data request is wrong based on the first data channel for receiving the data request and the content of the fourth policy, and then ignores the first data request. Similarly, if the first data request is sent by the virtual device end in this case, the request is judged to be correct based on its data source and type.
[0061] It should be understood that by setting the third and fourth policies, it is possible to achieve control that allows a client or virtual device to request data from another party in a unidirectional manner. The first and second policies included in the data sharing control policy achieve control needs that allow clients or virtual devices to share data with each other in a bidirectional manner.
[0062] It should also be understood that the first data request and the second data request are necessary processes required to perform data sharing, and the data transmission service system may optionally perform operations on the first data request and / or the second data request or ignore the request according to the source. This embodiment is illustrated by ignoring the second data request from the client to implement the third strategy and ignoring the first data request from the client to implement the fourth strategy, which should not be used as a limitation of the present invention. Alternatively, the data transmission service system may also ignore the first request from the virtual device end to implement the third strategy and ignore the second data request from the virtual device end to implement the fourth strategy.
[0063] Embodiment 2
[0064] The application scenario of the first embodiment can handle the communication connection between a single client and a single virtual device, and can better implement the one-way data sharing control in its application scenario. However, in more scenarios, it is often a communication network formed by a client and multiple virtual devices through a data transmission service system.
[0065] Figure 3 The connection structure of the data sharing control system shown in the second embodiment of the present invention is shown. In the second embodiment of the present invention, a client and three virtual device terminals constitute a data sharing control system. In this embodiment, in addition to satisfying the data sharing between the client and the virtual device terminal, the data sharing needs between the virtual device terminals should also be considered. Accordingly, in addition to the strategy for sharing data between the client and the virtual device terminal described in the first embodiment, the present invention also includes a strategy for allowing data sharing between virtual device terminals.
[0066] The idea of solving the above technical problems in the second embodiment of the present invention is to make further improvements on the basis of the first embodiment, requiring that when the data sharing units at the data copy end and the data paste end exchange data, the second data request sent by the data paste end needs to include the second data sharing control policy executed by the data paste end, so that the data transmission service system can confirm whether the data sharing complies with the first data sharing control policy of the data copy end. The composition of the second data request can be the same as or different from that of the first data request, but the structure of the second data request should at least include the address / identifier that can be used to obtain the second data sharing control policy and the type of the second data request.
[0067] like Figure 3As shown, two of the three virtual device ends are defined as the first virtual device 100 and the second virtual device 200. When the first virtual device 100 copies data and pastes it to the second virtual device 200, the first virtual device 100 sends a first data request as a data copy end. The data transmission service system obtains a data sharing control strategy according to the first data request, which may include the first to fourth strategies described in Example 1. At this time, the data sharing control method includes the following steps.
[0068] Step S1: The data pasting end configures the initial authority of the data sharing unit, and the initial authority is granted to the data pasting end.
[0069] Specifically, in step S1, the data sharing unit configured on the virtual device side as the data pasting side can be a virtual function unit with a clipboard function. Generally, the data sharing unit can be a part of the storage space divided from its storage space by the client or the virtual device side. In the initial state, the data copying side and the data pasting side each have control authority over their data sharing units. That is, during the initial configuration, the data copying side can only write data to and read data from its data sharing unit, and the data pasting side can also only write data to and read data from the corresponding data sharing unit. That is, the client can write data and read data locally on the client, and / or the virtual device side can write data and read data locally on the client, without going through the data transmission service system.
[0070] Step S2: The data replication end sends a first data request to the data transmission service system.
[0071] More specifically, the purpose of the first data request is to notify the data transmission service system that the data copying end is performing a data copying operation and request to obtain the permission of the data sharing unit of the data pasting end. In this embodiment, the virtual device end sends the first data request to the data transmission service system to request to obtain the permission of the data sharing unit of another virtual device end.
[0072] In an optional embodiment, the first data request includes the address and / or identifier of the virtual device end that uniquely corresponds to the first data sharing control policy, and the data transmission service system obtains the corresponding data sharing control policy based on the address and / or identifier. More specifically, the first data request includes information such as the address and / or identifier of the virtual device end and the request type of the first data request, and such information may be data contained in a complete structure in parallel, or may be a complete structure formed in a nested manner.
[0073] In an optional embodiment, the first data request includes a device identifier, which is used to indicate the address / identifier of the data sharing strategy adopted by this data request. The device identifier can be optionally the identifier of the virtual device end, and accordingly, the data sharing management and control strategy is stored on the virtual device end. For example, in this embodiment, if the virtual device end requests to paste the copied local data to another virtual device end, the device identifier in the first data request sent by it will identify the address / identifier of the virtual device end.
[0074] Step S3: The data transmission service system obtains a first data sharing management and control strategy according to the first data request.
[0075] Specifically, the data transmission service system obtains the first data sharing control policy corresponding to the address and / or identifier of the virtual device end according to the address and / or identifier of the virtual device end. For example, in this embodiment, the bidirectional first data sharing control policy includes:
[0076] (1) The first strategy prohibits all sharing behaviors, that is, other communication terminals (which can be clients or other virtual device terminals) and the virtual device terminal cannot share data with each other;
[0077] (2) The second strategy allows all sharing behaviors, that is, other communication terminals (which can be clients or other virtual device terminals) and the virtual device terminal can share data with each other;
[0078] At the same time, this embodiment also includes a unidirectional first data sharing control strategy:
[0079] (1) A third strategy that only allows other communication terminals (which may be clients or other virtual device terminals) to share data with the virtual device terminal, that is, only allows other communication terminals to copy local data and paste it to the virtual device terminal;
[0080] (2) The fourth strategy only allows the virtual device to share data with other communication terminals (which may be clients or other virtual device terminals), that is, only allows the virtual device to copy local data and paste it to other communication terminals.
[0081] Step S4, the data transmission service system performs a judgment based on the first data request and the first data sharing management and control policy. If the judgment is correct, step S5 is executed; if the judgment is wrong, the first data request is ignored.
[0082] Specifically, the data transmission service system performs a judgment based on the first data request and the first data sharing control policy, including: step S41, if the first data sharing control policy is the first policy, the judgment is wrong; step S42, if the first data sharing control policy is the second policy, the judgment is correct; if the first data sharing control policy is the third policy, and the source of the first data request is the same as the address and / or identifier of the virtual device end of the first data request, the judgment is wrong, otherwise the judgment is correct; step S43, if the first data sharing control policy is the fourth policy, and the source of the first data request is the same as the address and / or identifier of the virtual device end of the first data request, the judgment is correct, otherwise the judgment is wrong.
[0083] In an optional embodiment, the determination of the first data request also includes the determination of the source of the data request. In a preferred embodiment of the present invention, the determination of the source of the data request is by configuring at least two data channels facing different communication terminals in the data transmission service system. For example, in this embodiment, when the data transmission service system receives the first data request through the first data channel, the data transmission service system determines that the source of the first data request is the data copy terminal (the first virtual device 100); when the data transmission service system receives the first data request through the second data channel, the data transmission service system determines that the source of the first data request is the data paste terminal (the second virtual device 200). In an optional embodiment, when the client is connected to multiple virtual device terminals, the data transmission service system will establish data channels with the multiple virtual device terminals respectively. Similarly, the data transmission service system distinguishes the source of the data request by receiving the data channel of the data request. In an optional embodiment, the source may optionally include the address and / or identification of the communication terminal.
[0084] Step S5, the data transmission service system forwards the first data request to the data pasting end. After receiving the first data request, the data pasting end sets the authority of the data sharing unit to the data copy end and returns the second data request to the data transmission service system.
[0085] Specifically, the purpose of the second data request is to notify the data transmission service system that the data pasting end allows this data sharing operation and has set the authority of the data sharing unit to the data copying end.
[0086] Step S6, the data transmission service system performs a judgment according to the second data request, and if the judgment is correct, executes step S7; if the judgment is wrong, ignores the second data request;
[0087] Specifically, step S6 includes: step S61, the data transmission service system obtains the second data sharing control policy according to the second data request. Step S61 includes: the data transmission service system obtains the second data sharing control policy according to the address and / or identifier of the virtual device end.
[0088] More specifically, the data transmission service system performs a judgment based on the second data request, including: step S62, if the second data sharing management policy is the first policy or the fourth policy, the judgment is wrong; step S63, if the second data sharing management policy is the second policy or the third policy, the judgment is correct.
[0089] Step S7: the data transmission service system forwards the second data request to the data replication end. After receiving the second data request, the data replication end shares the data to be replicated with the data sharing unit and releases the authority of the data sharing unit.
[0090] Step S8, the data pasting end obtains the authority of the data sharing unit and reads the data to be copied.
[0091] In this embodiment, the type of the first data request is Get Data (GRAB). At this time, the data transmission service system determines the source and type of the first data request according to the first data sharing management and control strategy to determine whether to forward the first data request. In the case of data sharing between virtual device ends, according to step S4 of this embodiment, the data transmission service system will forward the first data request only when the first virtual device 100 that sends the first data request executes the second strategy or the fourth strategy.
[0092] Next, the second virtual device 200, which is the data pasting end, sends a second data request. In an optional embodiment, the second data sharing control policy may be a data sharing control policy that only includes the data sharing control policy corresponding to the sharing process, that is, the data sharing control policy of the virtual device end as the data pasting end. The second data sharing control policy may also be the same policy as the first data sharing control policy.
[0093] Finally, the type of the second data request is a request type (REQUEST). In this way, the data transmission service system determines whether to forward the second data request according to the second data sharing management and control strategy, thereby controlling the first virtual device to write its data into the data sharing unit of the second virtual device.
[0094] The data sharing management and control method adopted in this embodiment is also applicable to data sharing between the client and the virtual device end. Since one of the data copy end and the data paste end must be a virtual device end, this embodiment adopts the device identification of the virtual device end as the acquisition address of the data sharing policy. In an optional embodiment, the data sharing policy can be optionally added directly to the data request. In the aforementioned situation, the data request sent by the virtual device end must include the device identification of the virtual device end or the data sharing policy it adopts. In other examples, the data request sent by the client must include the device identification of the virtual device end for which it requests data sharing or the data sharing policy it adopts. It can be seen that the device identification of the data request sent by the virtual device end is the same as the source of the data request, while the device identification of the data request sent by the client is different from the source of the data request. Based on this, the data transmission service system can determine whether the data request comes from the virtual device end.
[0095] In addition, since the data request sent by the virtual device end can only carry its own device identification or the data sharing policy it executes, the data transmission service system needs to determine whether there is a conflict in the data sharing policies of the virtual device ends on both sides after receiving the second data request, that is, step S7 described in this embodiment.
[0096] This embodiment introduces a data sharing control strategy in the second data request sent by the data pasting end, making the data sharing control between a client and multiple virtual device ends more flexible. In addition to the data sharing control between the client and the virtual device end, the data transmission service system can also realize the data sharing control between the virtual device ends.
[0097] Embodiment 3
[0098] This embodiment is a specific implementation of the control strategy of the above-mentioned embodiment.
[0099] The specific embodiment of the present invention is specifically described by taking the SPICE network protocol as an example. In the following embodiment, the client and the virtual device have established a communication connection on both sides of the data transmission service system, and all communications between the client and the virtual device will be transferred through the data transmission service system.
[0100] The data request of this embodiment can be selected as an unsigned string constant message, and the content in message can be selected as a structure VDAgentMessage, which contains a type field to indicate the type of the request message. In an optional embodiment, the parameters in the data request also include RedsState*reds, which includes relevant data in the channel information, wherein the config structure in the reds parameter includes the variable spice_name, and the variable spice_name can optionally store the device identifier of the virtual device end. The reds parameter also includes data of the RedCharDeviceVDIPort structure type, and the RedCharDeviceVDIPort structure stores relevant information of the communication connection, wherein the structure reds->agent_dev->priv->recv_from_client_buf->buf
[0101] In an optional embodiment, since the communication connection is always established before the virtual device end connection is closed, the client information does not need to be recorded in the request.
[0102] In an optional embodiment, after the client connects to the virtual device, the data transmission service system will establish a channel between the client and the virtual device. When copying in the client or in the virtual device, the data transmission service system will receive a message from the end performing the copy operation (i.e., the first data request). The data transmission service system is responsible for obtaining the data sharing management policy and forwarding or ignoring the messages between the client and the virtual device. In an optional embodiment, when the user copies data in the client, the client will send GRAB data to the virtual device, i.e., type is
[0103] VD_AGENT_CLIPBOARD_GRAB request message.
[0104] In an optional embodiment, if two communication terminals perform a copy operation at the same time, the two communication terminals will send first data requests respectively, and the data transmission service system will process the first data requests respectively. For example, the first data request sent by the client and the first data request sent by the virtual device can be two independent processes, which can be performed separately or simultaneously. The method and steps of the data transmission service system for processing the two requests are consistent.
[0105] In an optional embodiment, when the data transmission service system receives the first data request, it will obtain the data sharing control policy of the virtual device end according to the device identifier recorded in the channel of the current first data request. In an optional embodiment, the device identifier can be selected as the virtual device end name, and the virtual device end name is specified by the server to ensure uniqueness.
[0106] In an optional embodiment, when the communication terminal requests to share data, the data requests sent to the data transmission service system have the same type, which is defined as a type identifier in Embodiment 4. The data transmission service system determines the source of the data request according to the communication channel of the data request.
[0107] The data transmission service system performs operations on the data request according to the data sharing control policy. The data sharing control policy can be selected as at least one of the first to fourth policies in the aforementioned embodiments. It can be seen that the data sharing control policy of the present invention can be a two-way policy or a one-way policy. That is, the user can prohibit or allow two-way communication between the client and the virtual device end, and prohibit or allow one-way communication from the client to the virtual device end and from the virtual device end to the client end according to actual needs.
[0108] After receiving the first data request, the data transmission service system performs a data sharing operation. Furthermore, when the user performs a data pasting operation on the virtual device end and / or the client end, the virtual device end and / or the client end sends a second data request to the client end and / or the virtual device end (the sending end of the first data request).
[0109] Specifically, take the client requesting data sharing from the virtual device as an example (the client is the data copying end, and the virtual device is the data pasting end). After receiving the first data request from the client, the virtual device will call a function to clear the clipboard in the virtual device, and set the clipboard permission to the client through the set_clipboard_owner(owner_client) function.
[0110] When the user clicks to paste in the virtual device, the virtual device will call the on_clipboard_request (UINT format) function to send a REQUEST data request (second data request) to the thin client. When the client receives the REQUEST data request (second data request), it will send CLIPBOARD data to the virtual device, that is, encapsulate the clipboard data into VDAgentClipboard. After receiving the data, the virtual device parses the data, and calls the handle_clipboard function to parse the data and write it to the clipboard of the virtual device, thereby completing the data sharing process. For details on the execution of the data sharing management and control strategy, please refer to Example 1 and Example 2.
[0111] Embodiment 4
[0112] This embodiment provides a data sharing control system for implementing any one of the data sharing control methods in the first to third embodiments above.
[0113] Specifically, the data sharing management and control system includes at least one data copy terminal, at least one data paste terminal, and at least one data transmission service system, wherein at least one of the data copy terminal and the data paste terminal is a virtual device terminal, and the other terminal can be a client or other virtual device terminal.
[0114] In an optional embodiment, the data transmission system is used to establish data communication between a client and a virtual device end and between multiple virtual device ends. The data transmission system includes at least one data transmission server, at least one data transmission agent and at least one data transmission client. Specifically, the data transmission agent is deployed in the virtual device end and is used to establish communication between the virtual device end and the data transmission server; the data transmission client is deployed in the client and is used to establish communication between the client and the data transmission server; the data transmission server is used to receive and forward data requests and data to be copied sent by the client and / or the virtual device end.
[0115] The above embodiments only express several implementation methods of the present invention, and the descriptions thereof are relatively specific and detailed, but they cannot be understood as limiting the scope of the present invention. It should be pointed out that, for a person of ordinary skill in the art, several modifications and improvements can be made without departing from the concept of the present invention, and these all belong to the protection scope of the present invention. Therefore, the protection scope of the present invention patent shall be subject to the attached claims.
Claims
1. A data sharing management and control method, the method is used to manage data sharing between a network composed of at least one data copy terminal and at least one data paste terminal, the data copy terminal and the data paste terminal are respectively connected to a data transmission service system and communicate with each other, at least one of the data copy terminal and the data paste terminal is a virtual device terminal, and the other end is other communication terminals including a client terminal or a virtual device terminal, characterized in that: The method comprises: Step S1, the data pasting end configures the initial authority of the data sharing unit, and the initial authority is granted to the data pasting end; Step S2, the data replication end sends a first data request to the data transmission service system; Step S3, the data transmission service system obtains a first data sharing management and control strategy according to the first data request; Step S4, the data transmission service system judges the source and type of the first data request according to the first data sharing management and control strategy, and if the judgment is correct, executes step S5, and if the judgment is wrong, ignores the first data request; wherein the source includes the address and / or identifier of the communication end; the type includes the type of data acquisition or the type of data request, the type of data acquisition represents the data request of the data copy end, and the type of data request represents the data request of the data paste end; Step S5, the data transmission service system forwards the first data request to the data pasting end, and after receiving the first data request, the data pasting end sets the authority of the data sharing unit to the data copying end, and returns a second data request to the data transmission service system; Step S6, the data transmission service system performs a judgment according to the second data request, and if the judgment is correct, performs step S7; if the judgment is wrong, ignores the second data request; Step S7, the data transmission service system forwards the second data request to the data replication end, and after receiving the second data request, the data replication end shares the data to be replicated with the data sharing unit and releases the authority of the data sharing unit; Step S8, the data pasting end obtains the authority of the data sharing unit and reads the data to be copied.
2. The data sharing management and control method according to claim 1, characterized in that: The data copy end and the data paste end are respectively connected with the data transmission service system and realize communication including: The data copying end and the data pasting end respectively establish communication channels with the data transmission service system; The data transmission service system determines a source of sending the data request according to the communication channel through which the data request is received, and the data request includes the first data request or the second data request.
3. The data sharing management and control method according to claim 2, characterized in that: The first data request includes an address and / or an identifier of the virtual device end that uniquely corresponds to the first data sharing management and control policy; In the step S3, the data transmission service system acquires the first data sharing management and control strategy according to the first data request, including: The data transmission service system obtains the first data sharing management and control policy according to the address and / or identifier of the virtual device end.
4. The data sharing management and control method according to any one of claims 1 to 3, characterized in that: The first data sharing management and control strategy includes: A first policy prohibits all data sharing between the virtual device end and the other communication ends; A second strategy allows all data sharing between the virtual device end and the other communication ends; The third strategy only allows other communication terminals to share data with the virtual device terminal; The fourth strategy only allows the virtual device end to share data with other communication ends.
5. The data sharing management and control method according to claim 4, characterized in that: In step S4, the data transmission service system determines the source and type of the first data request according to the first data sharing management and control policy, including: If the type of the first data request is a data acquisition type, perform the following steps: Step S41: if the first data sharing management and control strategy is the first strategy, it is judged to be an error; Step S42: if the first data sharing management and control strategy is the second strategy or the third strategy, the judgment is correct; Step S43, if the first data sharing management and control policy is the fourth policy, and the source of the first data request is the same as the address and / or identifier of the virtual device end of the first data request, the judgment is correct, otherwise the judgment is wrong.
6. The data sharing management and control method according to claim 5, characterized in that: In the step S6, the data transmission service system performs a judgment according to the second data request, including: Step S62, if the first data sharing management and control policy is the third policy, and the source of the second data request is different from the address and / or identifier of the virtual device end of the first data request, then the judgment is wrong; otherwise, the judgment is correct.
7. The data sharing management and control method according to claim 5, characterized in that: The second data request includes the address and / or identifier of the virtual device end that is uniquely corresponding to the second data sharing management and control policy; the step S6 includes: step S61, the data transmission service system obtains the second data sharing management and control policy according to the second data request; the step S61 includes: The data transmission service system obtains the second data sharing management and control policy according to the address or identifier of the virtual device end.
8. The data sharing management and control method according to claim 7, characterized in that: The step S42 includes: if the first data sharing management and control policy is the third policy, and the source of the first data request is the same as the address and / or identifier of the virtual device end of the first data request, then the judgment is wrong, otherwise the judgment is correct.
9. The data sharing management and control method according to claim 8, characterized in that: The second data sharing control policy includes a data sharing control policy that is the same as the first data sharing control policy; In the step S6, the data transmission service system performs a judgment according to the second data request, including: Step S62: if the second data sharing management and control strategy is the first strategy or the fourth strategy, then the judgment is wrong; Step S63: If the second data sharing management and control strategy is the second strategy or the third strategy, the judgment is correct.
10. A data sharing management and control system for implementing the method according to any one of claims 1 to 9, characterized in that: The system includes at least one data copy terminal, at least one data paste terminal, and at least one data transmission service system, wherein at least one of the data copy terminal and the data paste terminal is a virtual device terminal, and the other terminal is a client terminal or other virtual device terminal; The data transmission service system is used to establish data communication between the client and the virtual device end and between multiple virtual device ends, and the data transmission service system includes at least one data transmission server, at least one data transmission agent and at least one data transmission client; Among them, the data transmission agent is deployed in the virtual device end, and is used to establish communication between the virtual device end and the data transmission server; the data transmission client is deployed in the client, and is used to establish communication between the client and the data transmission server; the data transmission server is used to receive and forward data requests and shared data sent by the client and / or the virtual device end.