Disclosure of Invention
The present disclosure is directed to a remote genuine machine access control method, a remote genuine machine access control device, a computer readable storage medium and an electronic device, so as to overcome at least some technical problems of the existing remote genuine machine access control method that additional resources are required to be occupied and flexibility is poor due to limitations and disadvantages of the related art.
According to one aspect of the disclosure, a remote real machine access control method is provided, which is characterized by comprising:
receiving a control instruction aiming at the remote real machine, which is sent by the remote real machine server;
acquiring program information of a target application program running on the remote real machine;
judging whether the target application program is a remote access limiting program or not according to the program information;
and determining whether to execute the control instruction according to the judgment result.
In an exemplary embodiment of the present disclosure, the determining whether to execute the control instruction according to a result of the determination includes:
executing the control instruction when the target application program is judged not to be the remote access limiting program;
and when the target application program is judged to be the remote access limiting program, prohibiting the control instruction from being executed.
In an exemplary embodiment of the present disclosure, the method further comprises:
and closing the target application program when the target application program is judged to be the remote access limiting program.
In an exemplary embodiment of the present disclosure, the method further comprises:
and when the target application program is judged to be the program for limiting remote access, sending control invalidation information to the remote real machine server.
In an exemplary embodiment of the present disclosure, the method further comprises:
and when the target application program is judged not to be the remote access limiting program, sending a result of executing the control instruction to the remote real machine server.
In an exemplary embodiment of the present disclosure, the program information includes a name and/or an icon of the target application.
In an exemplary embodiment of the present disclosure, the acquiring program information of the target application running on the remote live machine includes:
judging a target object to be controlled according to the control instruction;
and acquiring program information of a target application program corresponding to the target object.
In an exemplary embodiment of the present disclosure, the target object includes a window, a control, and/or a location of a target application.
In an exemplary embodiment of the present disclosure, before determining whether the target application is a restricted remote access program according to the program information, the method further includes:
receiving user information sent by the remote live machine server;
information restricting a remote access procedure associated with the user information is acquired.
In an exemplary embodiment of the present disclosure, the user information includes a registered account, a user name and/or a network address of the user accessing the remote live machine server.
According to one aspect of the present disclosure, there is provided a remote live machine access control device, characterized by comprising:
the information receiving module is configured to receive a control instruction aiming at the remote live machine, which is sent by the remote live machine server;
a program acquisition module configured to acquire program information of a target application program running on the remote live machine;
the permission judging module is configured to judge whether the target application program is a program for limiting remote access or not according to the program information;
and the instruction execution module is configured to determine whether to execute the control instruction according to the judged result.
According to an aspect of the present disclosure, there is provided a computer readable storage medium having a computer program stored thereon, characterized in that the computer program, when executed by a processor, implements the remote live machine access control method as described in any one of the above.
According to one aspect of the present disclosure, there is provided an electronic device characterized by comprising a processor and a memory; wherein the memory is configured to store executable instructions of the processor, and the processor is configured to execute any one of the above remote live machine access control methods via execution of the executable instructions.
In the remote real machine access control method provided by the embodiment of the disclosure, the control of the remote real machine access authority can be completed only by using the remote driving agent to perform program judgment without independently setting a monitoring process at the remote real machine end, and the instruction sent by the remote real machine server is dynamically controlled according to the result of the program judgment, so that the system efficiency is greatly improved, the system overhead is reduced, and meanwhile, the remote control and the operation of the real machine side control are separated, and the control stability and flexibility are improved.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the disclosure.
Detailed Description
Example embodiments will now be described more fully with reference to the accompanying drawings. Example embodiments may, however, be embodied in many different forms and should not be construed as limited to the examples set forth herein; rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the concept of example embodiments to those skilled in the art. The described features, structures, or characteristics may be combined in any suitable manner in one or more embodiments.
Furthermore, the drawings are merely schematic illustrations of the present disclosure and are not necessarily drawn to scale. The same reference numerals in the drawings denote the same or similar parts, and thus their repetitive description will be omitted. Some of the block diagrams shown in the figures are functional entities and do not necessarily correspond to physically or logically separate entities. These functional entities may be implemented in the form of software, or in one or more hardware modules or integrated circuits, or in different networks and/or processor devices and/or microcontroller devices.
The exemplary embodiment of the present disclosure first provides a remote real machine access control method, where the remote real machine may be various terminal devices, such as a mobile terminal smart device, such as a mobile phone, a tablet computer, and the like, that establish a communication connection with a remote real machine server through a network device or other communication manners. The terminal devices can respond to the control operation of a remote user through the remote real-machine server and feed back the operation result on the real device to the user in real time in the modes of simulating images, audio, video and the like, so that the testing and debugging requirements of the user on the real-machine device and the application program on the real-machine device are met.
Referring to fig. 2, the remote live machine access control method may mainly include the following steps:
and S10, receiving a control instruction aiming at the remote real machine, which is sent by the remote real machine server.
The real-time control of the remote real machine server to the remote real machine with which the communication connection is established can be generally carried out by configuring a remote drive agent on the remote real machine. In the present embodiment, the remote driving agent first receives a control instruction for the remote live machine, which is sent by the remote live machine server. For example, when a user remotely accesses a touch device by using a browser or client software installed on a local device, various touch operations such as clicking, pressing, and sliding performed on the touch device and various information input operations such as characters and voice may be simulated by using an input device such as a mouse, a keyboard, or a microphone, and then the remote driving agent will receive a control instruction corresponding to the operations sent by the remote live-machine server.
And S20, acquiring program information of a target application program running on the remote real machine.
After receiving the control command in step S10, the method may determine the target application program running on the remote real machine to which the control command actually points, and obtain program information of the target application program, where the program information may include a name, an icon, or other various kinds of identifying information of the target application program, and may also include any information related to the target application program, such as a type, a version, a developer, and a development tool. In addition, the target application program may be a system program or a pre-installed program carried by the remote real machine, or may be another program that is initiated by the access user and installed and runs on the remote real machine, which is not particularly limited in this embodiment.
And S30, judging whether the target application program is a remote access limiting program or not according to the program information.
Whether the target application is the remote access restricted program may be determined based on the program information of the target application acquired in step S20, wherein one method for determining may be to compare the program information of the target application with the program information of the remote access restricted program. For example, the determination may be made by comparing the names and/or icons of the programs, and once the related information matches, the target application may be determined to be a program that restricts remote access. In addition, the program information of a plurality of remote access limiting programs on the remote real machine can be collected to form a data set, then the program information of the target application program is included in the data set, repeated items are searched, if the repeated items are detected, the target application program can be judged to be the remote access limiting program, and if the repeated items are not detected, the target application program can be judged not to be the remote access limiting program.
And S40, determining whether to execute the control instruction according to the judgment result.
This step may determine whether to execute the control instruction to the target application program on the remote live machine according to the result of the judgment in step S30. As shown in fig. 3, as a preferred embodiment, this step may further include the following steps:
and S41, when the target application program is judged not to be the remote access limiting program, executing the control instruction.
If the target application is not the remote access restricted program as a result of the determination in step S30, this step will execute the control instruction to the target application on the remote real machine. In addition, after the control instruction is executed, the result of executing the control instruction can be sent to the remote real-machine server, so that a user can obtain control feedback in real time.
And S42, prohibiting the control instruction from being executed when the target application program is judged to be the remote access limiting program.
If the target application is the remote access restricted program as a result of the determination in step S30, this step will prohibit the execution of the control instruction to the target application on the remote live machine. In addition, if the target application program is judged to be the remote access limiting program, the target application program can be closed, and meanwhile control invalidation information can be sent to the remote real machine server, so that the user is prevented from continuously carrying out invalid control operation on the target application program.
In the remote real machine access control method provided in the exemplary embodiment, the remote real machine access permission can be controlled only by using the program judgment of the remote driving agent without separately setting a monitoring process at the remote real machine end, and the instruction sent by the remote real machine server is dynamically controlled according to the result of the program judgment, so that the system efficiency is greatly improved, the system overhead is reduced, and meanwhile, the remote control and the operation of the real machine side control are separated, and the control stability and flexibility are improved.
Referring to fig. 4, based on the above embodiment, in another exemplary embodiment of the present disclosure, step S20 may include the following steps:
and S21, judging the target object to be controlled according to the control instruction.
A plurality of programs can be run in the foreground and the background at the same time, and this step can determine the target object that the user actually wants to control according to the control instruction received in step S10, where the target object may include a window, a control and/or a location of the target application program. For example, if the user performs a single-click operation on the local device with a mouse, this step can determine which control on the remote live machine the user wishes to trigger through the single-click operation, in which window the control is located, and to which program the window belongs. For another example, if the user performs a sliding operation with a mouse on the local device, the step may determine what sliding trajectory the user wishes to obtain on the remote real machine through the sliding operation, and may also determine the program to be controlled by the sliding operation based on the position information (which may be coordinate information) of the sliding trajectory and the position information of the objects such as the programs and their windows, controls, and the like.
And S22, acquiring program information of a target application program corresponding to the target object.
After the target object to be controlled by the control command is determined in step S21, the program information of the target application corresponding to the target object may be acquired in this step. Especially, under the condition that a plurality of foreground programs or a plurality of program windows are mutually overlapped when the remote real machine is simultaneously operated, the remote real machine access control can be more accurately realized by obtaining the target object to judge the target application program, and the misoperation is avoided.
Further, in another exemplary embodiment of the present disclosure, step S30 may be preceded by the following two steps:
receiving user information sent by the remote live machine server;
information restricting a remote access procedure associated with the user information is acquired.
Based on these two steps, in the remote live machine access control method provided in this embodiment, in addition to receiving the control instruction, user information sent by the remote live machine server is also received. The user information may include a registered account, a user name and/or a network address of the user accessing the remote live machine server. The embodiment can associate the user information of the access user with the remote access limiting program of the remote real machine, for example, the user group can be classified according to one or more information of the registration account, the user name, the network address and the like of the access user to form a plurality of categories of paid users, free users, blacklist users and the like, different access permissions can be given to users of different categories, that is, the types and the number of the remote access limiting program are set differently according to different users, so that the remote real machine access control is performed more flexibly.
It should be noted that although the above exemplary embodiments describe the various steps of the methods of the present disclosure in a particular order, this does not require or imply that these steps must be performed in that particular order, or that all of the steps must be performed, to achieve the desired results. Additionally or alternatively, certain steps may be omitted, multiple steps combined into one step execution, and/or one step broken down into multiple step executions, etc.
In an exemplary embodiment of the present disclosure, a remote live machine access control device is also provided, and referring to fig. 5, the remote live machine access control device 50 may mainly include an information receiving module 51, a program obtaining module 52, an authority judging module 53, and an instruction executing module 54. Wherein, the information receiving module 51 is configured to receive a control instruction for the remote live machine sent by the remote live machine server; the program acquisition module 52 is configured to acquire program information of a target application program running on the remote live machine; the permission judging module 53 is configured to judge whether the target application is a remote access limiting program according to the program information; the instruction execution module 54 is configured to determine whether to execute the control instruction according to a result of the determination.
The specific details of the remote real machine access control device are already described in detail in the corresponding remote real machine access control method, and therefore are not described herein again.
It should be noted that although in the above detailed description several modules or units of the device for action execution are mentioned, such a division is not mandatory. Indeed, the features and functionality of two or more modules or units described above may be embodied in one module or unit, according to embodiments of the present disclosure. Conversely, the features and functions of one module or unit described above may be further divided into embodiments by a plurality of modules or units.
In an exemplary embodiment of the present disclosure, there is also provided a computer-readable storage medium having stored thereon a computer program which, when executed by a processor, can implement the above-described remote genuine machine access control method of the present disclosure. In some possible embodiments, various aspects of the disclosure may also be implemented in the form of a program product comprising program code; the program product may be stored in a non-volatile storage medium (which may be a CD-ROM, a usb disk, or a removable hard disk, etc.) or on a network; when the program product is run on a computing device (which may be a personal computer, a server, a terminal apparatus, or a network device, etc.), the program code is configured to cause the computing device to perform the method steps in the above exemplary embodiments of the disclosure.
Referring to fig. 6, a program product 60 for implementing the above method according to an embodiment of the present disclosure may employ a portable compact disc read only memory (CD-ROM) and include program code, and may run on a computing device (e.g., a personal computer, a server, a terminal device, or a network device, etc.). However, the program product of the present disclosure is not limited thereto. In the exemplary embodiment, the computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.
The program product may employ any combination of one or more readable media. The readable medium may be a readable signal medium or a readable storage medium.
The readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or a combination of any of the foregoing. More specific examples (a non-exhaustive list) of the readable storage medium include: an electrical connection having one or more wires, a portable disk, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
A readable signal medium may include a propagated data signal with readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A readable signal medium may also be any readable medium that is not a readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.
Program code embodied on a readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
Program code for carrying out operations of the present disclosure may be written in any combination of one or more programming languages, including AN object oriented programming language such as Java, C + +, or the like, as well as conventional procedural programming languages, such as the C language or similar programming languages.
In an exemplary embodiment of the present disclosure, there is also provided an electronic device comprising at least one processor and at least one memory for storing executable instructions of the processor; wherein the processor is configured to perform the method steps in the above-described exemplary embodiments of the disclosure via execution of the executable instructions.
The electronic apparatus 700 in the present exemplary embodiment is described below with reference to fig. 7. The electronic device 700 is only one example and should not bring any limitations to the functionality or scope of use of the embodiments of the present disclosure.
Referring to FIG. 7, an electronic device 700 is shown in the form of a general purpose computing device. The components of the electronic device 700 may include, but are not limited to: at least one processing unit 710, at least one memory unit 720, a bus 730 that couples various system components including the processing unit 710 and the memory unit 720, and a display unit 740.
Wherein the memory unit 720 stores program code which can be executed by the processing unit 710 such that the processing unit 710 performs the method steps in the above exemplary embodiments of the present disclosure.
The storage unit 720 may include readable media in the form of volatile memory units, such as a random access memory unit 721(RAM) and/or a cache memory unit 722, and may further include a read-only memory unit 723 (ROM).
The storage unit 720 may also include a program/utility 724 having a set (at least one) of program modules 725, including but not limited to: an operating system, one or more application programs, other program modules, and program data, each of which, or some combination thereof, may comprise an implementation of a network environment.
Bus 730 may be any representation of one or more of several types of bus structures, including a memory unit bus or memory unit controller, a peripheral bus, an accelerated graphics port, a processing unit, or a local bus using any of a variety of bus architectures.
Electronic device 700 may also communicate with one or more external devices 800 (e.g., keyboard, pointing device, Bluetooth device, etc.), with one or more devices that enable a user to interact with electronic device 700, and/or with any device (e.g., router, modem, etc.) that enables electronic device 700 to communicate with one or more other computing devices.
As will be appreciated by one skilled in the art, aspects of the present disclosure may be embodied as a system, method or program product. Accordingly, various aspects of the present disclosure may be embodied in the form of: an entirely hardware embodiment, an entirely software embodiment (including firmware, microcode, etc.) or an embodiment combining hardware and software may be referred to herein generally as a "circuit," module "or" system.
To further understand the specific application of the embodiments of the present disclosure, the following description is made in conjunction with the structural framework of an exemplary remote live machine access system.
As shown in fig. 8, the remote live machine access system mainly includes three parts, namely, a user side, a remote live machine server side and a remote live machine side.
The user side mainly comprises a control module and an image display module, wherein the control module has the main function of receiving a remote real machine operation command initiated by a user and then sending the remote real machine operation command to the remote real machine server side. The image display module has the main function of displaying the UI interface of the remote real machine in real time.
The remote real machine server mainly comprises a control processing module and an image real-time processing module, wherein the control processing module has the main function of processing a remote real machine operation command sent by the front end and then transmitting the remote real machine operation command to a remote drive agent at the remote real machine end. The image real-time processing module has the main function of capturing and transmitting the UI (user interface) image of the remote real machine in real time.
The remote real machine end mainly comprises a remote driving agent module, and the main function of the remote driving agent module is to execute real control operation corresponding to user operation on the remote real machine.
The specific flow of the remote real machine access operation can comprise the following parts:
1. the user initiates a remote real-machine access request by using a browser or client software of the user side, the user side is connected with the remote real-machine server side, a command channel is established, and the user can send a remote real-machine control command to the remote real-machine server through the command channel.
2. And the remote real machine server starts the image processing module to wait for receiving the image transmitted by the remote real machine end.
3. And the remote live machine server configures the remote driving agent to the corresponding remote live machine and starts the remote driving agent at the same time of starting the image processing module.
4. And the remote driving agent receives an operation instruction sent by the remote real machine server and executes the remote real machine access control method in the embodiment of the disclosure on the remote real machine.
5. And after the remote driving agent executes the specific operation, returning the operation result to the remote real machine server.
6. And the image real-time processing module captures a UI (user interface) of the remote real machine in real time.
7. And the image real-time processing module receives the UI image of the remote real machine in real time.
8. And the image real-time processing module returns the UI image data to the image display module of the user side in real time for display.
Through the operation process, complete remote real machine access can be completed once, wherein the method provided by the embodiment of the disclosure can be used for performing different processing on the application program to be limited from remote access and other application programs, so that the effect of controlling the access authority of the remote real machine is achieved.
Other embodiments of the disclosure will be apparent to those skilled in the art from consideration of the specification and practice of the disclosure disclosed herein. This application is intended to cover any variations, uses, or adaptations of the disclosure following, in general, the principles of the disclosure and including such departures from the present disclosure as come within known or customary practice within the art to which the disclosure pertains. It is intended that the specification and examples be considered as exemplary only, with a true scope and spirit of the disclosure being indicated by the following claims.
The described features, structures, or characteristics may be combined in any suitable manner in one or more embodiments, and the features discussed in connection with the embodiments are interchangeable, if possible. In the above description, numerous specific details are provided to give a thorough understanding of embodiments of the disclosure. One skilled in the relevant art will recognize, however, that the embodiments of the disclosure may be practiced without one or more of the specific details, or with other methods, components, materials, and so forth. In other instances, well-known structures, materials, or operations are not shown or described in detail to avoid obscuring aspects of the disclosure.