An operating system automatic unlocking screen method and device applied to an RPA platform

CN115686694BActive Publication Date: 2026-10-30CHINA MOBILE GROUP ZHEJIANG +2
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202110859875.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-07-28
Publication Date
2026-10-30
Estimated Expiration
2041-07-28

AI Technical Summary

Technical Problem

[0002]随着无人值守机器人数量越来越多,对机器需求数量越来越大,同时相应数据安全的要求越来越严,现有的技术方案面临以下问题:1)维护性差:外置设备方案仅限制于实体机,并且依赖于现场的硬件设备;一旦部署高密度机器人,需要依次登录多个账户,耗时长;2)稳定性差:远程桌面方案需提供机器作为跳板机,一旦跳板机出现故障,均会影响到相关机器;WinIO方案,依赖于外设驱动,通过在用户登录过程时间较长,容易受外界干扰;3)安全性差:外置设备方案会放置实体机在现场,会存在无关人员接触到设备的安全风险,远程桌面方案跳板机存在一旦沦陷全局影响的安全风险;4)兼容性差:各个方案均在特定环境下才能实现,外置设备方案需要实体机,WinIO受限于高版本系统安全策略限制,远程桌面方案需要跳板机

Benefits of technology

[0015]本发明提供的方案,针对RPA流程自动化机器人执行时操作系统解锁屏的问题,使用系统底层安全认证技术模拟用户登录进行解锁与锁屏,该方案无实体机和虚拟机环境限制、适配Windows操作系统XP及其以上版本,兼容性高,解锁过程更加快速、稳定、安全。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115686694B_ABST
    Figure CN115686694B_ABST
Patent Text Reader

Abstract

The application discloses an operating system automatic unlocking screen method and device applied to an RPA platform. The method comprises the following steps: receiving user data input by a robot through a calling interface; process communication is carried out with a user login process by using a pipeline technology, a user session and a desktop are pulled up according to the user data, a login interface process is activated, a login credential is called to carry out security authentication; if the security authentication is passed, the operating system is simulated to log in according to the user data, and operating system unlocking is completed. The scheme provided by the application is used for solving the problem of operating system unlocking screen when an RPA process automation robot is executed, system bottom layer security authentication technology is used to simulate user login to carry out unlocking and screen locking, the scheme has no entity machine and virtual machine environment limitation, is suitable for Windows operating system XP and above versions, has high compatibility, and the unlocking process is more rapid, stable and safe.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of communication technology, and specifically to an operating system automatic screen unlocking method and apparatus applied to an RPA platform. Background Technology

[0002] With the increasing number of unmanned robots and the growing demand for their quantity, coupled with increasingly stringent data security requirements, existing technical solutions face the following problems: 1) Poor maintainability: External device solutions are limited to physical machines and rely on on-site hardware; deploying high-density robots requires logging into multiple accounts sequentially, which is time-consuming; 2) Poor stability: Remote desktop solutions require providing a machine as a jump server; if the jump server fails, it will affect related machines; WinIO solutions rely on peripheral drivers, and the long user login process makes them susceptible to external interference; 3) Poor security: External device solutions place physical machines on-site, posing a security risk of unauthorized personnel accessing the devices; remote desktop solutions, with their jump servers compromised, pose a security risk of global impact; 4) Poor compatibility: Each solution can only be implemented in specific environments. External device solutions require physical machines, WinIO is limited by the security policies of high-version systems, and remote desktop solutions require jump servers. Therefore, a solution is urgently needed to address the problems of poor maintainability, security, stability, and compatibility of existing solutions. Summary of the Invention

[0003] In view of the above problems, embodiments of the present invention are proposed to provide an operating system automatic screen unlocking method and apparatus applied to an RPA platform that overcomes or at least partially solves the above problems.

[0004] According to one aspect of the present invention, an automatic screen unlocking method for an operating system applied to an RPA platform is provided, wherein login credentials are pre-registered within the operating system, and the method includes:

[0005] Receive user data input by the robot through the API call;

[0006] The process uses pipe technology to communicate with the user login process, launches the user session and desktop based on user data, activates the login interface process, and calls the login credentials for security authentication.

[0007] If the security authentication is successful, the system will simulate logging into the operating system based on the user data to unlock the operating system.

[0008] According to another aspect of the present invention, an operating system automatic screen unlocking device for use in an RPA platform is provided, wherein login credentials are pre-registered within the operating system, and the device includes:

[0009] The receiving module is suitable for receiving user data input by the robot through an interface call;

[0010] The security authentication module is suitable for using pipe technology to communicate with the user login process, launch the user session and desktop based on user data, activate the login interface process, and call the login credentials for security authentication.

[0011] The unlocking module is suitable for simulating login to the operating system based on user data and unlocking the operating system if the security authentication is successful.

[0012] According to another aspect of the present invention, a computing device is provided, comprising: a processor, a memory, a communication interface, and a communication bus, wherein the processor, the memory, and the communication interface communicate with each other via the communication bus;

[0013] The memory is used to store at least one executable instruction, which causes the processor to perform the operation corresponding to the operating system automatic screen unlocking method applied to the RPA platform.

[0014] According to another aspect of the present invention, a computer storage medium is provided, wherein at least one executable instruction is stored in the storage medium, the executable instruction causing a processor to perform an operation corresponding to the above-described operating system automatic screen unlocking method applied to an RPA platform.

[0015] The solution provided by this invention addresses the issue of operating system screen unlocking during RPA process automation robot execution. It uses underlying system security authentication technology to simulate user login for unlocking and screen locking. This solution is not limited by physical machine or virtual machine environments, is compatible with Windows operating system XP and above, has high compatibility, and the unlocking process is faster, more stable, and more secure.

[0016] The above description is merely an overview of the technical solutions of the embodiments of the present invention. In order to better understand the technical means of the embodiments of the present invention and to implement them in accordance with the contents of the specification, and to make the above and other objects, features and advantages of the embodiments of the present invention more apparent and understandable, specific implementation methods of the embodiments of the present invention are described below. Attached Figure Description

[0017] Various other advantages and benefits will become apparent to those skilled in the art upon reading the following detailed description of preferred embodiments. The accompanying drawings are for illustrative purposes only and are not intended to limit the scope of the invention. Furthermore, the same reference numerals denote the same parts throughout the drawings. In the drawings:

[0018] Figure 1A The flowchart of the automatic screen unlocking method for an operating system applied to an RPA platform provided by an embodiment of the present invention is shown.

[0019] Figure 1B This is a schematic diagram of the functional architecture of an operating system for automatically unlocking the screen on an RPA platform, provided in an embodiment of the present invention.

[0020] Figure 1C A diagram illustrating the operational principle of the user login agent during the operating system unlocking process;

[0021] Figure 2 This invention provides a schematic diagram of the structure of an operating system automatic screen unlocking device for an RPA platform, as shown in an embodiment of the present invention.

[0022] Figure 3 A schematic diagram of the structure of a computing device provided in an embodiment of the present invention is shown. Detailed Implementation

[0023] Exemplary embodiments of the invention will now be described in more detail with reference to the accompanying drawings. While exemplary embodiments of the invention are shown in the drawings, it should be understood that the invention may be implemented in various forms and should not be limited to the embodiments set forth herein. Rather, these embodiments are provided so that this invention will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art.

[0024] Figure 1A The flowchart illustrates an operating system automatic screen unlocking method for an RPA platform provided by an embodiment of the present invention. The operating system has pre-registered login credentials, such as... Figure 1A As shown, the method includes the following steps:

[0025] Step S101: Receive user data input by the robot through the interface call.

[0026] The automatic screen unlocking method for RPA platforms provided in this embodiment is deployed as a persistent Windows Service process. It is applicable to Windows XP and later operating systems and provides a standard interface for robots to call. Robots can input user data, such as user account and password, through the provided standard interface. The Windows Service has a user login agent. Therefore, the robot sends the input user data to the user login agent. The user login agent receives the user data input by the robot through the interface call. The purpose of receiving user data here is to simulate user login based on the user data to unlock the operating system.

[0027] Step S102: Use pipe technology to communicate with the user login process, launch the user session and desktop based on user data, activate the login interface process, and call the login credentials for security authentication.

[0028] Figure 1B This is a schematic diagram of the functional architecture of an operating system for automatically unlocking the screen on an RPA platform, as provided in an embodiment of the present invention. Figure 1B As shown, the Windows service includes a user login agent. After receiving user data input by the robot through the API call, the user login agent communicates with the user login process (Winlogn.exe) through Windows Pipeline, based on the current system version. It then launches the corresponding user session and desktop based on the user account and password, activates the login interface process (Logonui.exe), and uses the login credentials from the registry (Regedit) to perform security authentication.

[0029] The login credential acts as a key to the automatic unlocking device, and the operating system's secure login mechanism relies on this credential. The login credential is a library file (DLL file) generated by the fusion of Graphical Image Recognition and Verification Technology (GINA) and Credential Provider technology. GINA is compatible with XP and Win2003, while Credential Provider is compatible with Win Vista / Win2008 and above.

[0030] Registration can be completed automatically by running the registration software provided by the device using a system administrator account. The program will automatically select the appropriate registration method based on the different operating system versions.

[0031] Step S103: If the security authentication is successful, simulate logging into the operating system based on the user data to unlock the operating system.

[0032] If the security authentication is successful, the system simulates logging into the operating system based on user data, unlocks the operating system, and creates a multi-user session. Based on the session, a desktop layer is created and maintained (Desktop Layout), which allows the robot to capture the UI interface and mouse and keyboard events using computer vision.

[0033] Figure 1C A diagram illustrating the operational principle of the user login agent during the operating system unlocking process, such as... Figure 1B As shown, the operating system unlocking process mainly consists of the following steps:

[0034] 1) Credential Registration: If login credentials have been registered, Windows will register the login credentials themselves based on registry information when it starts up;

[0035] 2) Authentication: The robot sends an unlock request and transmits user data (including user account and password) to the user login agent via inter-process communication (IPC) or remote communication socket. The user login agent authenticates the received user data to ensure that the requesting user account is consistent with the user to whom the robot belongs, thus preventing unauthorized unlocking.

[0036] 3) System callback: Write the user account and password into memory, and trigger the system user login security process callback Agent credential authentication function;

[0037] 4) Credential authentication: After the system callback is successful, security authentication is performed based on the currently registered login credentials. Combined with the obtained user account and password, the user logs into the system and completes the unlocking.

[0038] 5) Unlock notification: After successful unlocking, the unlocking result will be sent to the robot.

[0039] In one optional embodiment of the present invention, the method further includes:

[0040] Hooking techniques can be used to capture the system state of the operating system; for example, calling system event functions to obtain the system state marked by system events.

[0041] Determine if the system is logged in;

[0042] If not, then use pipe technology to communicate with the user login process, launch the user session and desktop based on the user data, activate the login interface process, and call the login credentials for security authentication.

[0043] If so, then authenticate the user data used to log in to the operating system;

[0044] If the verification fails, the process communicates with the user login process using pipe technology, launches the user session and desktop based on the user data, activates the login interface process, and calls the login credentials for security authentication.

[0045] If the verification is successful, the robot will be notified of the unlocking result.

[0046] Specifically, the Windows service includes a system state capture agent. The system state capture agent calls functions provided by Wtsapi32.dll and User32.dll in the application programming interface (Win32 API) to bind to operating system login, screen lock and other events, mark event changes and determine the system state through the marked events.

[0047] After capturing the system status of the operating system, it is necessary to determine whether the system status is a login state. If not, the process communication with the user login process is carried out using pipe technology, the user session and desktop are launched according to the user data, the login interface process is activated, and the login credentials are called for security authentication.

[0048] If so, the user data used to log in to the operating system will be authenticated, mainly to prevent unauthorized unlocking and ensure that the requesting user account is consistent with the user to whom the robot belongs;

[0049] If the verification fails, the process communicates with the user login process using pipe technology, launches the user session and desktop based on the user data, activates the login interface process, and calls the login credentials for security authentication.

[0050] If the verification is successful, the robot will be notified of the unlocking result.

[0051] In one optional embodiment of the present invention, after receiving the unlocking result, the robot performs its work according to the preset robot process. After the robot finishes its work, a screen lock operation is required to ensure the security of the operating system. If an external display is present, the user's related systems will be exposed, reducing security. Since the user's session and desktop will occupy a certain amount of CPU and memory, the screen lock operation can save system resources.

[0052] The method also includes: receiving a screen lock request sent by the robot, responding to the screen lock request by calling the screen lock function, and completing the locking of the operating system.

[0053] Windows services include a user lock screen agent, which uses the application programming interface (Win32API) to call the lock screen function LockWorkStation to lock the operating system.

[0054] Before locking the screen, you can capture the operating system's system state. If the system state indicates that the current operating system event needs to be responded to, you can call the LockWorkStation function through the application programming interface (Win32 API) to lock the operating system.

[0055] The automatic operating system unlocking solution provided in this embodiment for RPA platform mainly uses GINA, Credential Providers, and Winlogon technologies to adapt to various system versions, provides Windows Services for robots to call, and uses Windows Pipeline, Win32 API, and Regedit technologies to complete the underlying data interaction, ultimately enabling the robot to automatically unlock the operating system.

[0056] Compared with the prior art, the solution provided in this embodiment has the following advantages:

[0057] 1) The administrator only needs to run the installation program to register login credentials, and the bots of all users on the machine can directly call to initiate login and unlock the system without the need for external devices, thus improving maintainability.

[0058] 2) The automatic unlocking process uses login credentials based on Windows' underlying security authentication technology, which are installed and registered by the administrator. The user account and password required for login are provided by the robot, making it more secure and reliable.

[0059] 3) It runs stably as a Windows service, with fast pipeline communication response speed and instant unlocking of user accounts, making it more stable and reliable.

[0060] 4) Supports Windows XP and above, and supports high-density robots. There are no restrictions on physical machines or virtual machines, no security policy restrictions, and improved compatibility.

[0061] The solution provided by this invention addresses the issue of operating system screen unlocking during RPA process automation robot execution. It uses underlying system security authentication technology to simulate user login for unlocking and screen locking. This solution is not limited by physical machine or virtual machine environments, is compatible with Windows operating system XP and above, has high compatibility, and the unlocking process is faster, more stable, and more secure.

[0062] Figure 2 This diagram illustrates the structure of an automatic screen unlocking device for an RPA platform provided in an embodiment of the present invention. The operating system has pre-registered login credentials, such as... Figure 2 As shown, the device includes: a receiving module 201, a security authentication module 202, and an unlocking module 203.

[0063] The receiving module 201 is adapted to receive user data input by the robot through the interface call;

[0064] Security authentication module 202 is suitable for using pipe technology to communicate with the user login process, launching the user session and desktop based on user data, activating the login interface process, and calling login credentials for security authentication.

[0065] The unlocking module 203 is adapted to simulate logging into the operating system based on user data and complete the operating system unlocking if the security authentication is passed.

[0066] Optionally, the device further includes: a capture module adapted to capture the system state of the operating system using hook technology;

[0067] The judgment module is suitable for determining whether the system status is logged in.

[0068] The security authentication module is also suitable for: if the system is not in a logged-in state, using pipe technology to communicate with the user login process, launching the user session and desktop based on user data, activating the login interface process, and calling the login credentials for security authentication;

[0069] An authentication module is suitable for authenticating user data used to log in to the operating system if the system is in a logged-in state.

[0070] The security authentication module is also suitable for: if the verification fails, using pipe technology to communicate with the user login process, launching the user session and desktop based on the user data, activating the login interface process, and calling the login credentials for security authentication.

[0071] Optionally, the capture module is further adapted to: call system event functions to obtain the system state of system event markers.

[0072] Optionally, the device further includes: a screen lock module, adapted to receive a screen lock request sent by the robot, respond to the screen lock request by calling a screen lock function, and complete the locking of the operating system.

[0073] Optionally, the login credentials are library files generated based on the fusion of graphical recognition and verification technologies and credential provisioning technologies.

[0074] The solution provided by this invention addresses the issue of operating system screen unlocking during RPA process automation robot execution. It uses underlying system security authentication technology to simulate user login for unlocking and screen locking. This solution is not limited by physical machine or virtual machine environments, is compatible with Windows operating system XP and above, has high compatibility, and the unlocking process is faster, more stable, and more secure.

[0075] This invention provides a non-volatile computer storage medium storing at least one executable instruction that can execute the operating system automatic screen unlocking method applied to the RPA platform in any of the above method embodiments.

[0076] Figure 3 The diagram shows a schematic of the structure of a computing device provided in an embodiment of the present invention. The specific embodiments of the present invention do not limit the specific implementation of the computing device.

[0077] like Figure 3 As shown, the computing device may include a processor, a communications interface, memory, and a communications bus.

[0078] The processor, communication interface, and memory communicate with each other via a communication bus. The communication interface is used to communicate with other network elements, such as clients or other servers. The processor executes programs, specifically the steps described in the embodiment of the automatic screen unlocking method for an RPA platform operating system used in computing devices.

[0079] Specifically, the program may include program code, which includes computer operation instructions.

[0080] The processor may be a central processing unit (CPU), an application-specific integrated circuit (ASIC), or one or more integrated circuits configured to implement embodiments of the present invention. The computing device includes one or more processors, which may be processors of the same type, such as one or more CPUs; or processors of different types, such as one or more CPUs and one or more ASICs.

[0081] Memory is used to store programs. Memory may include high-speed RAM, and may also include non-volatile memory, such as at least one disk drive.

[0082] Specifically, the program can be used to cause the processor to execute the operating system automatic screen unlocking method applied to the RPA platform in any of the above method embodiments. The specific implementation of each step in the program can be found in the corresponding steps and units described in the above embodiments of the operating system automatic screen unlocking applied to the RPA platform, and will not be repeated here. Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working process of the devices and modules described above can be referred to the corresponding process descriptions in the foregoing method embodiments, and will not be repeated here.

[0083] The algorithms or displays provided herein are not inherently related to any particular computer, virtual system, or other device. Various general-purpose systems can also be used in conjunction with the teachings herein. The required structure for constructing such systems is apparent from the above description. Furthermore, the embodiments of the present invention are not directed to any particular programming language. It should be understood that the embodiments of the present invention described herein can be implemented using various programming languages, and the above description of specific languages ​​is for the purpose of disclosing the best mode of implementation of the embodiments of the present invention.

[0084] Numerous specific details are set forth in the specification provided herein. However, it will be understood that embodiments of the invention may be practiced without these specific details. In some instances, well-known methods, structures, and techniques have not been shown in detail so as not to obscure the understanding of this specification.

[0085] Similarly, it should be understood that, in order to streamline the embodiments of the invention and aid in understanding one or more of the various inventive aspects, features of the embodiments of the invention are sometimes grouped together in a single embodiment, figure, or description thereof in the above description of exemplary embodiments of the invention. However, this disclosure should not be construed as reflecting an intention that the claimed embodiments of the invention require more features than are expressly recited in each claim. Rather, as reflected in the following claims, inventive aspects lie in fewer than all features of a single foregoing disclosed embodiment. Therefore, the claims following the detailed description are hereby expressly incorporated into that detailed description, wherein each claim itself is a separate embodiment of the invention.

[0086] Those skilled in the art will understand that modules in the device of the embodiments can be adaptively changed and placed in one or more devices different from that embodiment. Modules, units, or components in the embodiments can be combined into a single module, unit, or component, and further, they can be divided into multiple sub-modules, sub-units, or sub-components. Except where at least some of such features and / or processes or units are mutually exclusive, any combination can be used to combine all features disclosed in this specification (including the accompanying claims, abstract, and drawings) and all processes or units of any method or device so disclosed. Unless expressly stated otherwise, each feature disclosed in this specification (including the accompanying claims, abstract, and drawings) may be replaced by an alternative feature that serves the same, equivalent, or similar purpose.

[0087] Furthermore, those skilled in the art will understand that although some embodiments herein include certain features included in other embodiments but not others, combinations of features from different embodiments are intended to be within the scope of the invention and form different embodiments. For example, in the following claims, any of the claimed embodiments can be used in any combination.

[0088] The various component embodiments of the present invention can be implemented in hardware, or as software modules running on one or more processors, or a combination thereof. Those skilled in the art will understand that microprocessors or digital signal processors (DSPs) can be used in practice to implement some or all of the functions of some or all of the components according to the embodiments of the present invention. The embodiments of the present invention can also be implemented as device or apparatus programs (e.g., computer programs and computer program products) for performing part or all of the methods described herein. Such programs implementing the embodiments of the present invention can be stored on a computer-readable medium, or can be in the form of one or more signals. Such signals can be downloaded from an Internet website, provided on a carrier signal, or provided in any other form.

[0089] It should be noted that the above embodiments are illustrative of the present invention and not restrictive of the invention, and that those skilled in the art can devise alternative embodiments without departing from the scope of the appended claims. In the claims, any reference signs placed between parentheses should not be construed as limiting the claims. The word "comprising" does not exclude the presence of elements or steps not listed in the claims. The word "a" or "an" preceding an element does not exclude the presence of a plurality of such elements. Embodiments of the present invention can be implemented by means of hardware comprising several different elements and by means of a suitably programmed computer. In the unit claims enumerating several means, several of these means may be embodied by the same item of hardware. The use of the words first, second, and third, etc., does not indicate any order. These words can be interpreted as names. The steps in the above embodiments, unless otherwise specified, should not be construed as limiting the order of execution.

Claims

1. A method for automatically unlocking the operating system screen in an RPA platform, wherein the operating system has pre-registered login credentials, and the login credentials are library files generated based on the fusion of graphical recognition and verification technology and credential provisioning technology, the method comprising: Receive user data input by the robot through the API call; Use hook technology to capture the system state of the operating system; Determine whether the system status is logged in; If not, then use pipe technology to communicate with the user login process, launch the user session and desktop based on user data, activate the login interface process, and call the login credentials through the information in the registry for security authentication. If so, then authenticate the user data used to log in to the operating system; If the verification fails, the process communicates with the user login process using pipe technology, launches the user session and desktop based on the user data, activates the login interface process, and uses the login credentials in the registry to perform security authentication. If the security authentication is successful, the system will simulate logging into the operating system based on the user data, unlock the operating system, create a multi-user session, create a desktop layer based on the session, and maintain it.

2. The method according to claim 1, wherein, The method of capturing the system state of the operating system using hook technology further includes: Call the system event function to obtain the system status marked by the system event.

3. The method according to claim 1 or 2, wherein, The method further includes: receiving a screen lock request sent by the robot, responding to the screen lock request by calling a screen lock function, and completing the locking of the operating system.

4. An automatic screen unlocking device for an operating system applied to an RPA platform, wherein the operating system has pre-registered login credentials, and the login credentials are a library file generated based on the fusion of graphical recognition and verification technology and credential provisioning technology; the device comprises: The receiving module is suitable for receiving user data input by the robot through an interface call; The capture module is suitable for capturing the system state of the operating system using hook technology; The judgment module is adapted to determine whether the system status is logged in. The security authentication module is suitable for: if the system is not in a logged-in state, using pipe technology to communicate with the user login process, launching the user session and desktop based on user data, activating the login interface process, and calling the login credentials through information in the registry for security authentication; An authentication module is suitable for authenticating user data used to log in to the operating system if the system is in a logged-in state. The security authentication module is also suitable for: if the verification fails, using pipe technology to communicate with the user login process, launching the user session and desktop based on user data, activating the login interface process, and calling the login credentials through information in the registry for security authentication; The unlocking module is adapted to simulate logging into the operating system based on the user data if the security authentication is successful, thereby unlocking the operating system, creating a multi-user session, creating a desktop layer based on the session, and maintaining it.

5. The apparatus according to claim 4, wherein, The capture module is further adapted to: call system event functions to obtain the system state marked by system events.

6. A computing device, comprising: The processor, memory, communication interface, and communication bus are provided, wherein the processor, memory, and communication interface communicate with each other via the communication bus. The memory is used to store at least one executable instruction, which causes the processor to perform the operation corresponding to the operating system automatic screen unlocking method applied to the RPA platform as described in any one of claims 1-3.

7. A computer storage medium storing at least one executable instruction that causes a processor to perform an operation corresponding to the operating system automatic screen unlocking method applied to an RPA platform as described in any one of claims 1-3.

Citation Information

Patent Citations

  • Method for automatically unlocking Windows through software

    CN113177198A