A remote terminal service container access system

By generating and authenticating target temporary tokens through the browser's temporary token generation module and remote terminal service authentication mechanism, the problem of low container security is solved, and the security of container access is improved.

CN115695023BActive Publication Date: 2026-02-24E SURFING VISION TECHNOLOGY CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202211373745.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-11-03
Publication Date
2026-02-24
Estimated Expiration
2042-11-03

AI Technical Summary

Technical Problem

In existing technologies, containers have low security. Users can directly log in to the Kubernetes cluster server to access containers, making them vulnerable to malicious tampering.

Method used

The browser generates a temporary token acquisition module, which generates a target temporary token based on the authentication method of the remote terminal service. The remote terminal service performs authentication, establishes a WebSocket connection to access the container, and accesses the container through the WebUI.

Benefits of technology

It improves the security of container access, effectively filters out access from malicious users, and ensures the security of containers.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115695023B_ABST
    Figure CN115695023B_ABST
Patent Text Reader

Abstract

The application discloses a remote terminal service container access system, a browser sends a pre-request instruction to a token acquisition module, a temporary token acquisition module queries an authentication mode of a remote terminal service, and determines a target temporary token, generates a request address containing the target temporary token, the browser sends a container access request instruction to the remote terminal service, the remote terminal service authenticates the target temporary token according to the authentication mode to obtain an authentication result, acquires container parameters for accessing the container, establishes a connection with the browser, returns the container parameters to the browser, and enables the browser to access the container through the container parameters. It can be seen that the target temporary token is generated through the temporary token acquisition module, the target temporary token can reflect the information of a user who requests to access, the target temporary token is authenticated by the remote terminal service, so that it is known whether the user who requests to access has the condition for accessing the container, malicious users can be effectively filtered out for accessing the container, and the security of container access is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of containerized deployment technology, and more specifically, to an access system for a remote terminal service container. Background Technology

[0002] With the continuous development of information technology, cloud technology has been increasingly adopted by more and more applications, enabling them to be deployed in a cloud-native manner on the cloud via Kubernetes (k8s). Each instance of an application is a Pod, which is the smallest deployable computing unit created and managed by k8s. A Pod is a group of one or more containers and is the foundation for running various workloads in k8s. To protect container security, containers only trust remote terminal services within the k8s cluster, and these remote terminal services interface with the containers. Therefore, if a user needs to modify or view internal files within a container, they must first remotely log in to the container before performing any control operations.

[0003] Currently, users can log in to the server in the Kubernetes cluster and then directly execute specific operation commands to access and operate on the specified container. Therefore, after logging into the server, users can access any container in the entire Pod. Containers are vulnerable to malicious tampering in this access environment, resulting in low container security. Summary of the Invention

[0004] In view of the above problems, this application is made to provide an access system for remote terminal service containers to improve the security of accessing remote terminal service containers.

[0005] To achieve the above objectives, the following specific solutions are proposed:

[0006] An access system for a remote terminal service container includes a browser, a temporary token acquisition module, and a remote terminal service.

[0007] When the browser receives an instruction from the user to access the remote terminal service container, it sends a pre-request instruction to the temporary token acquisition module to acquire a temporary token.

[0008] The temporary token acquisition module responds to the pre-request instruction, queries the authentication method of the remote terminal service, determines the target temporary token of the pre-request instruction based on the authentication method of the remote terminal service, and generates a request address containing the target temporary token.

[0009] The browser generates a container access request instruction containing the target temporary token based on the target temporary token in the request address, and sends the container access request instruction to the remote terminal service according to the request address.

[0010] The remote terminal service authenticates the target temporary token in the container access request instruction according to the authentication method, and obtains the authentication result of the target temporary token. If the authentication result of the target temporary token passes the authentication, the container parameters for accessing the container of the remote terminal service are obtained.

[0011] The remote terminal service requests access to the remote terminal service container through the container parameters, and after successfully accessing the remote terminal service container, establishes a WebSocket connection with the browser to return the container parameters to the browser;

[0012] The browser accesses the remote terminal service container via the WebUI based on the container parameters.

[0013] Optionally, the temporary token acquisition module determines the target temporary token for the pre-request instruction based on the authentication method of the remote terminal service, including:

[0014] When the authentication method of the remote terminal service is external authentication, the temporary token acquisition module generates a unique identifier based on the parameters in the header of the pre-request instruction;

[0015] The temporary token acquisition module constructs the target temporary token for the pre-request instruction based on the unique identifier and the preset time-to-live value.

[0016] Optionally, the temporary token acquisition module determines the target temporary token for the pre-request instruction based on the authentication method of the remote terminal service, including:

[0017] When the authentication method of the remote terminal service is internal authentication, the parameters in the header of the pre-request instruction are encrypted using a preset encryption algorithm to obtain the target temporary token of the encrypted pre-request instruction.

[0018] Optionally, the management backend where the temporary token acquisition module is located also includes a temporary token authentication module, and the authentication method of the remote terminal service is external authentication;

[0019] The remote terminal service authenticates the target temporary token in the container access request instruction according to the authentication method, and obtains the authentication result of the target temporary token, including:

[0020] The remote terminal service sends an authentication request instruction to the temporary token authentication module to authenticate the target temporary token in the container access request instruction.

[0021] The remote terminal service obtains the authentication result and uses the authentication result as the authentication result of the target temporary token. The authentication result is obtained by the authentication interface of the temporary token authentication module authenticating the target temporary token in the container access request instruction.

[0022] Optionally, the authentication method for the remote terminal service is internal authentication;

[0023] The remote terminal service authenticates the target temporary token in the container access request instruction according to the authentication method, and obtains the authentication result of the target temporary token, including:

[0024] The remote terminal service decrypts the target temporary token in the container access request instruction according to the decryption algorithm corresponding to the encryption algorithm, obtains the decryption result, and uses the decryption result as the authentication result of the target temporary token.

[0025] Optionally, the system may also include an operational behavior auditing module;

[0026] The operation behavior auditing module stores the authentication results in a log file.

[0027] Optionally, the system may also include an operation log reporting module;

[0028] The operation record reporting module parses the log file to obtain operation record data;

[0029] The operation record reporting module sends the user operation record data to the display module in the management backend so that the display module can display the operation record data.

[0030] Optionally, the system may also include a high-risk command blocking module;

[0031] If the user role information in the authentication result of the target temporary token is a non-administrator role, after the remote terminal service establishes a websocket connection with the browser and before the operation command is transmitted to the remote terminal service container, the high-risk command blocking module detects the operation command according to a preset command whitelist and obtains the detection result of the operation command. The operation command is generated by the server in response to the user's control operation.

[0032] If the detection result of the operation command is that the detection is successful, the high-risk command blocking module will transmit the operation command to the remote terminal service container.

[0033] Optionally, the high-risk command blocking module is further used for:

[0034] If the detection result of the operation command is that the detection fails, a prompt message indicating that the operation command has been blocked is sent to the browser.

[0035] Optionally, the system may also include an operational behavior auditing module;

[0036] Before the operation command is transmitted to the remote terminal service container, the operation behavior audit module obtains the operation command;

[0037] The operation behavior auditing module filters out invisible characters in the operation command to obtain the filtered operation command.

[0038] The operation behavior auditing module transmits the filtered operation commands to the remote terminal service container.

[0039] Using the above technical solution, this application enables a browser to send a pre-request instruction to a temporary token acquisition module when it receives a user's instruction to access a remote terminal service container. The temporary token acquisition module responds to the pre-request instruction, queries the authentication method of the remote terminal service, determines the target temporary token of the pre-request instruction based on the authentication method, and generates a request address containing the target temporary token. The browser, based on the target temporary token in the request address, generates a container access request instruction containing the target temporary token and sends the container access request instruction to the remote terminal service according to the request address. The remote terminal service authenticates the target temporary token in the container access request instruction according to the authentication method, obtaining the authentication result of the target temporary token. If the authentication result of the target temporary token passes, it obtains container parameters for accessing the remote terminal service container. The remote terminal service requests access to the remote terminal service container through the container parameters, and after successfully accessing the remote terminal service container, establishes a WebSocket connection with the browser to return the container parameters to the browser. The browser accesses the remote terminal service container through a WebUI based on the container parameters. Therefore, when a user requests access to a remote terminal service container, the temporary token acquisition module identifies the user and obtains the target temporary token. The target temporary token reflects the information of the user requesting access. Then, the remote terminal service authenticates the target temporary token to determine whether the user requesting access has the conditions to access the remote terminal service container. This can effectively filter out malicious users' access to the remote terminal service container and improve the security of container access. Attached Figure Description

[0040] 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 this application. Furthermore, the same reference numerals denote the same parts throughout the drawings. In the drawings:

[0041] Figure 1 This application provides a system architecture diagram for implementing access to a remote terminal service container.

[0042] Figure 2 This application provides an optional signaling process for implementing access to a remote terminal service container. Detailed Implementation

[0043] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0044] Figure 1 This application provides an optional system architecture for implementing access to a remote terminal service container, such as... Figure 1 As shown, the system architecture may include:

[0045] Browser 10, Temporary Token Acquisition Module 20, and Remote Terminal Service 30.

[0046] Among them, the browser 10, the temporary token acquisition module 20 and the remote terminal service 30 all have information communication functions. The browser 10 can receive instructions generated by the user's operation on the browser 10. The temporary token acquisition module 20 can generate a temporary token according to the request instructions provided by the browser 10 and send it back to the browser 10 through the resource location address. The remote terminal service 30 can access the remote terminal service container and can also establish a WebSocket connection with the browser 10 so that the browser 10 can access the remote terminal service container through the remote terminal service 30.

[0047] based on Figure 1 The system architecture shown is as follows: Figure 2 This application illustrates an optional signaling flow for implementing a method for accessing a remote terminal service container, as provided in an embodiment of this application. (Refer to...) Figure 2 The process may include:

[0048] In step S110, when the browser 10 receives an instruction from the user to access the remote terminal service container, it sends a pre-request instruction to the temporary token acquisition module 20 to acquire a temporary token.

[0049] Specifically, the header parameters of the pre-request instruction sent to the temporary token acquisition module 20 may include the name of the remote terminal service container to be accessed, the user's account information, and the role information to be accessed.

[0050] In step S120, the temporary token acquisition module 20 responds to the pre-request instruction, queries the authentication method of the remote terminal service 30, and determines the target temporary token of the pre-request instruction according to the authentication method of the remote terminal service 30, and generates a request address containing the target temporary token.

[0051] Specifically, the authentication method of the remote terminal service 30 is external authentication or internal authentication. When the temporary token acquisition module 20 receives the pre-request instruction, it can query the authentication method of the remote terminal service 30. Based on the different authentication methods of the remote terminal service 30, it can generate different target temporary tokens and generate a URL (uniform resource locator) address to be fed back to the browser 10 based on the above target temporary tokens.

[0052] Furthermore, after obtaining the request address containing the target temporary token, the request address can be sent to browser 10.

[0053] In step S130, the browser 10 generates a container access request instruction containing the target temporary token based on the target temporary token in the request address.

[0054] Understandably, the remote terminal service 30 can only accept container access request instructions containing a target temporary token that matches its authentication method. Therefore, after obtaining the request address fed back by the temporary token acquisition module 20, the browser 10 can generate a container access request instruction that the remote terminal service 30 can accept.

[0055] Step S140: Browser 10 sends the container access request instruction to the remote terminal service 30 according to the requested address.

[0056] Step S150: The remote terminal service 30 authenticates the target temporary token in the container access request instruction according to the authentication method, and obtains the authentication result of the target temporary token. If the authentication result passes the authentication, the container parameters for accessing the remote terminal service container are obtained.

[0057] Specifically, the remote terminal service 30 authenticates the target temporary token in the container access request instruction by parsing the target temporary token to obtain the requester's information. This parsed requester information can be used as the authentication result for the target temporary token. Passing the authentication indicates that the requester's information has been approved, signifying that the requester is a normal or legitimate user. The remote terminal service 30 can then obtain the container parameters for accessing the remote terminal service container. If the authentication fails, the remote terminal service 30 can reject the browser 10's request to access the remote terminal service container.

[0058] In step S160, the remote terminal service 30 requests access to the remote terminal service container through the container parameters, and after successfully accessing the remote terminal service container, establishes a websocket connection with the browser 10.

[0059] Understandably, before the browser 10 accesses the remote terminal service container, it needs to determine whether the remote terminal service container can be accessed normally. Therefore, the remote terminal service 30 can access the remote terminal service container in advance through the container parameters. Only after successful access can a websocket connection be established with the browser 10 so that the browser 10 can access the remote terminal service container.

[0060] Specifically, after establishing a WebSocket connection with the browser 10, the remote terminal service 30 can return the container parameters to the browser 10.

[0061] In step S170, browser 10 accesses the remote terminal service container via WebUI based on the container parameters.

[0062] Specifically, after browser 10 establishes a WebSocket connection with remote terminal service 30, browser 10 can access and control the remote terminal service container through remote terminal service 30 and via WebUI, under the user's corresponding permissions.

[0063] The remote terminal service container access system provided in this embodiment, when a browser receives a user's instruction to access the remote terminal service container, sends a pre-request instruction to a temporary token acquisition module to obtain a temporary token. The temporary token acquisition module responds to the pre-request instruction, queries the authentication method of the remote terminal service, determines the target temporary token of the pre-request instruction based on the authentication method, and generates a request address containing the target temporary token. The browser, based on the target temporary token in the request address, generates a container access request instruction containing the target temporary token and sends the container access request instruction to the remote terminal service according to the request address. The remote terminal service authenticates the target temporary token in the container access request instruction according to the authentication method, obtaining the authentication result of the target temporary token. If the authentication result of the target temporary token passes, it obtains container parameters for accessing the remote terminal service container. The remote terminal service requests access to the remote terminal service container through the container parameters, and after successfully accessing the remote terminal service container, establishes a WebSocket connection with the browser to return the container parameters to the browser. The browser accesses the remote terminal service container through a WebUI based on the container parameters. Therefore, when a user requests access to a remote terminal service container, the temporary token acquisition module identifies the user and obtains the target temporary token. The target temporary token reflects the information of the user requesting access. Then, the remote terminal service authenticates the target temporary token to determine whether the user requesting access has the conditions to access the remote terminal service container. This can effectively filter out malicious users' access to the remote terminal service container and improve the security of container access.

[0064] In some embodiments of this application, the process by which the temporary token acquisition module 20 determines the target temporary token of the pre-request instruction based on the authentication method of the remote terminal service 30, as mentioned in the above embodiments, is described. This process may include:

[0065] S1. When the authentication method of the remote terminal service 30 is external authentication, the temporary token acquisition module 20 generates a unique identifier according to the parameters in the header of the pre-request instruction.

[0066] The parameters in the header of the pre-request instruction may include the name of the remote terminal service container to be accessed, the user's account information, and the role information to be accessed.

[0067] Specifically, the parameters in the header of the pre-request instruction can be stored in Redis, and a key-value pair can be generated using a universally unique identifier as a unique identifier.

[0068] S2. The temporary token acquisition module 20 constructs the target temporary token of the pre-request instruction based on the unique identifier and the preset time-to-live value information.

[0069] Specifically, when the temporary token acquisition module 20 generates a request address containing the target temporary token, a time-to-live (TTL) value can be set. Therefore, when constructing the target temporary token, a preset time-to-live value is added so that when the TTL needs to be set when generating the request address, the time-to-live value information can be extracted from the target temporary token.

[0070] The TTL duration can be customized, for example, 10 seconds.

[0071] The remote terminal service container access system provided in this embodiment generates a unique identifier based on the parameters in the header of the pre-request instruction through the temporary token acquisition module 20. Based on the unique identifier and the preset time-to-live value information, a target temporary token for the pre-request instruction is constructed, making the target temporary token used to represent the requester unique. A generation time value is set, which makes the generated request address used to request access to the remote terminal service container time-limited, effectively limiting the operation space for malicious intrusion access and protecting the security of accessing the remote terminal service container.

[0072] In some embodiments of this application, the process by which the temporary token acquisition module 20 determines the target temporary token of the pre-request instruction based on the authentication method of the remote terminal service 30, as mentioned in the above embodiments, is described. This process may include:

[0073] When the authentication method of the remote terminal service 30 is internal authentication, the parameters in the header of the pre-request instruction are encrypted using a preset encryption algorithm to obtain the target temporary token of the encrypted pre-request instruction.

[0074] It is understandable that when the authentication method of the remote terminal service 30 is internal authentication, there is no need to verify the user's account information, the role information requested for access, and other user information. That is, before internal authentication, this user information has been verified. Therefore, the credibility of internal authentication is higher than that of external authentication. Thus, the parameters in the header of the pre-request instruction can be directly encrypted using a preset encryption algorithm to obtain the encrypted target temporary token of the pre-request instruction.

[0075] Specifically, the encryption algorithm used to encrypt the parameters in the header of the pre-request instruction can be a reversible encryption / decryption algorithm, such as the XXTea algorithm. The decryption algorithm corresponding to the encryption algorithm can be stored in the remote terminal service 30 that needs to authenticate the target temporary token.

[0076] In some embodiments of this application, the access system for the remote terminal service container may further include a temporary token authentication module. This module can be used to authenticate the access rights of the requester seeking access to the remote terminal service container. Both the temporary token authentication module and the temporary token acquisition module can be located in the management backend. When the authentication method of the remote terminal service 30 is external authentication, the process described in the above embodiments, whereby the remote terminal service 30 authenticates the target temporary token in the container access request instruction according to the authentication method to obtain the authentication result of the target temporary token, may include:

[0077] S1. The remote terminal service 30 sends an authentication request instruction to the temporary token authentication module to authenticate the target temporary token in the container access request instruction.

[0078] S2. The remote terminal service 30 obtains the authentication result and uses the authentication result as the authentication result of the target temporary token.

[0079] The authentication result is obtained by the authentication interface of the temporary token authentication module authenticating the target temporary token in the container access request instruction.

[0080] Specifically, the temporary token authentication module can parse the target temporary token to obtain user information such as the user's account information and the role information requested for access, and then authenticate this user information to obtain the authentication result.

[0081] Furthermore, when the requester operates the remote terminal service container through the WebUI, the remote terminal service 30 can restrict the requester's operation behavior based on the authentication result. For example, if the authentication result of a regular user role is low-level access, the user can only perform operations such as viewing the remote terminal service container. If the authentication result of an administrator role is high-level access, the user can perform operations such as viewing, modifying, and reading the remote terminal service container.

[0082] When the authentication method of the remote terminal service 30 is internal authentication, some embodiments of this application describe the process mentioned in the above embodiments whereby the remote terminal service authenticates the target temporary token in the container access request instruction according to the authentication method to obtain the authentication result of the target temporary token. This process may include:

[0083] The remote terminal service 30 decrypts the target temporary token in the container access request instruction according to the decryption algorithm corresponding to the encryption algorithm, obtains the decryption result, and uses the decryption result as the authentication result of the target temporary token.

[0084] It is understandable that by encrypting the target temporary token for internal authentication through the temporary token acquisition module 20 and decrypting it when the remote terminal service 30 verifies the target temporary token, the target temporary token can be ensured that it is not easily tampered with during instruction communication, thereby improving the security of accessing the remote terminal service container.

[0085] In some embodiments of this application, considering that system resources change rapidly, abnormal changes in system resources can lead to application failures. To quickly locate the failure, an operation behavior auditing module can be introduced to store the authentication results mentioned in the above embodiments in a log file. This allows administrators to search operation records and check whether user accounts have security issues when application failures occur.

[0086] In some embodiments of this application, considering that displaying operation records in the log files mentioned in the above embodiments can help administrators locate faults more quickly, the remote terminal service container access system provided in this application may further include a display module and an operation record reporting module. The process of displaying operation record data in the remote terminal service container access system is described below. Specifically, this process may include:

[0087] S1. The operation record reporting module can parse the log file to obtain operation record data.

[0088] S2. The operation record reporting module sends the user operation record data to the display module in the management backend so that the display module can display the operation record data.

[0089] The display module, temporary token authentication module, and temporary token acquisition module can all be located in the management backend.

[0090] In some embodiments of this application, considering that the remote terminal service container is the most essential foundation for application instances and the basis for Kubernetes to run various workloads, the security of the remote terminal service container can be further guaranteed after the requester is allowed to access the remote terminal service container (that is, after the remote terminal service 30 establishes a WebSocket connection with the browser 10). Based on this, the access system for the remote terminal service container provided in this application may also include a high-risk command blocking module, and the process of restricting access permissions to the remote terminal service container is described. Specifically, this process may include:

[0091] S1. If the user role information in the authentication result of the target temporary token is a non-administrator role, after the remote terminal service 30 establishes a websocket connection with the browser 10, and before the operation command is transmitted to the remote terminal service container, the high-risk command blocking module detects the operation command according to a preset command whitelist and obtains the detection result of the operation command.

[0092] The operation command is generated by the server in response to the user's control operation.

[0093] For example, after the remote terminal service 30 establishes a WebSocket connection with the browser 10, the user enters an operation command to control the remote terminal service container in the browser 10. The operation command is transmitted to the remote terminal service 30 through the WebSocket connection. Before the remote terminal service 30 responds to the operation command and performs the corresponding action on the remote terminal service container, the high-risk command blocking module can compare the operation command with the command whitelist. If the operation command is recorded in the command whitelist, the detection result of the operation command is allowed; otherwise, it is not allowed.

[0094] S2. If the detection result of the operation command is that the detection is successful, the high-risk command blocking module will transmit the operation command to the remote terminal service container.

[0095] It is understandable that if the detected operation command is recorded in the command whitelist, that is, the operation behavior allowed under the current user's permissions can be executed, then the high-risk command blocking module can transmit the operation command to the remote terminal service container, so that the user can successfully access the remote terminal service container on the browser 10 side.

[0096] S3. If the detection result of the operation command is that the detection fails, the high-risk command blocking module sends a prompt message to the browser 10 indicating that the operation command has been blocked.

[0097] Understandably, if an operation command that fails the detection is not recorded in the command whitelist, meaning it can perform an operation that is not allowed under the current user's permissions, the high-risk command blocking module can intercept this operation command and send a notification message to the browser 10 indicating that the operation command has been blocked.

[0098] The remote terminal service container access system provided in this embodiment uses a high-risk command blocking module to intercept high-risk commands executed by the user when accessing the remote terminal service container, based on a command whitelist, thereby ensuring the security of accessing the remote terminal service container.

[0099] In some embodiments of this application, considering the need for administrators to monitor and statistically analyze the detailed access information of remote terminal service containers, the remote terminal service container access system provided in this application may further include an operation behavior auditing module to record data flow information of remote terminal service container access in a log file. The process by which the operation behavior auditing module records data flow information of remote terminal service container access may include:

[0100] S1. Before the operation command is transmitted to the remote terminal service container, the operation behavior audit module obtains the operation command.

[0101] It is understandable that the operation commands generated by each user initiating command control to the remote terminal service container can be recorded by the operation behavior audit module, thereby strictly monitoring the access records of the remote terminal service container.

[0102] S2. The operation behavior auditing module filters out invisible characters in the operation command to obtain the filtered operation command.

[0103] It is understandable that since the operation commands generated by the user each time they initiate command control to the remote terminal service container are transmitted from the browser 10 to the remote terminal service 30 through the WebSocket connection link, these operation commands contain invisible characters. These invisible characters may affect the normal recognition of the remote terminal service container and reduce the success rate of backtracking operation records. Therefore, it is necessary to filter the invisible characters in the operation commands.

[0104] Specifically, examples of invisible characters include "\r", "\u007f", and "\t".

[0105] S3. The operation behavior auditing module transmits the filtered operation commands to the remote terminal service container.

[0106] In addition, the operation behavior auditing module can also store information such as user account information, requested access role information, name of the remote terminal service container requested for access, and user access time information obtained by the temporary token authentication module in the log file.

[0107] The remote terminal service container access system provided in this embodiment records the data flow information of the remote terminal service container being accessed through the operation behavior audit module, which makes it convenient for administrators to monitor and statistically analyze the detailed situation of the remote terminal service container being accessed.

[0108] Finally, it should be noted that in this document, relational terms such as "first" and "second" are used only to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.

[0109] The various embodiments in this specification are described in a progressive manner. Each embodiment focuses on the differences from other embodiments. The various embodiments can be combined as needed, and the same or similar parts can be referred to each other.

[0110] The above description of the disclosed embodiments enables those skilled in the art to make or use this application. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of this application. Therefore, this application is not to be limited to the embodiments shown herein, but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims

1. A remote terminal service container access system, characterized in that, This includes the browser, temporary token acquisition module, and remote terminal service; When the browser receives an instruction from the user to access the remote terminal service container, it sends a pre-request instruction to the temporary token acquisition module to acquire a temporary token. The temporary token acquisition module responds to the pre-request instruction, queries the authentication method of the remote terminal service, determines the target temporary token of the pre-request instruction based on the authentication method of the remote terminal service, and generates a request address containing the target temporary token. The browser generates a container access request instruction containing the target temporary token based on the target temporary token in the request address, and sends the container access request instruction to the remote terminal service according to the request address. The remote terminal service authenticates the target temporary token in the container access request instruction according to the authentication method, and obtains the authentication result of the target temporary token. If the authentication result of the target temporary token passes the authentication, the container parameters for accessing the container of the remote terminal service are obtained. The remote terminal service requests access to the remote terminal service container through the container parameters, and after successfully accessing the remote terminal service container, establishes a WebSocket connection with the browser to return the container parameters to the browser; The browser accesses the remote terminal service container via WebUI based on the container parameters. The system also includes a high-risk command blocking module; If the user role information in the authentication result of the target temporary token is a non-administrator role, after the remote terminal service establishes a websocket connection with the browser and before the operation command is transmitted to the remote terminal service container, the high-risk command blocking module detects the operation command according to a preset command whitelist and obtains the detection result of the operation command. The operation command is generated by the server in response to the user's control operation. If the detection result of the operation command is that the detection is successful, the high-risk command blocking module will transmit the operation command to the remote terminal service container.

2. The system according to claim 1, characterized in that, The temporary token acquisition module determines the target temporary token for the pre-request instruction based on the authentication method of the remote terminal service, including: When the authentication method of the remote terminal service is external authentication, the temporary token acquisition module generates a unique identifier based on the parameters in the header of the pre-request instruction; The temporary token acquisition module constructs the target temporary token for the pre-request instruction based on the unique identifier and the preset time-to-live value.

3. The system according to claim 1, characterized in that, The temporary token acquisition module determines the target temporary token for the pre-request instruction based on the authentication method of the remote terminal service, including: When the authentication method of the remote terminal service is internal authentication, the parameters in the header of the pre-request instruction are encrypted using a preset encryption algorithm to obtain the target temporary token of the encrypted pre-request instruction.

4. The system according to claim 1, characterized in that, The management backend where the temporary token acquisition module is located also includes a temporary token authentication module, and the authentication method of the remote terminal service is external authentication. The remote terminal service authenticates the target temporary token in the container access request instruction according to the authentication method, and obtains the authentication result of the target temporary token, including: The remote terminal service sends an authentication request instruction to the temporary token authentication module to authenticate the target temporary token in the container access request instruction. The remote terminal service obtains the authentication result and uses the authentication result as the authentication result of the target temporary token. The authentication result is obtained by the authentication interface of the temporary token authentication module authenticating the target temporary token in the container access request instruction.

5. The system according to claim 3, characterized in that, The authentication method for the remote terminal service is internal authentication. The remote terminal service authenticates the target temporary token in the container access request instruction according to the authentication method, and obtains the authentication result of the target temporary token, including: The remote terminal service decrypts the target temporary token in the container access request instruction according to the decryption algorithm corresponding to the encryption algorithm, obtains the decryption result, and uses the decryption result as the authentication result of the target temporary token.

6. The system according to claim 4, characterized in that, It also includes an operational behavior auditing module; The operation behavior auditing module stores the authentication results in a log file.

7. The system according to claim 6, characterized in that, It also includes an operation log reporting module; The operation record reporting module parses the log file to obtain operation record data; The operation record reporting module sends the user operation record data to the display module in the management backend so that the display module can display the operation record data.

8. The system according to claim 1, characterized in that, The high-risk command blocking module is also used for: If the detection result of the operation command is that the detection fails, a prompt message indicating that the operation command has been blocked is sent to the browser.

9. The system according to any one of claims 1-5 and 8, characterized in that, It also includes an operational behavior auditing module; Before the operation command is transmitted to the remote terminal service container, the operation behavior audit module obtains the operation command; The operation behavior auditing module filters out invisible characters in the operation command to obtain the filtered operation command. The operation behavior auditing module transmits the filtered operation commands to the remote terminal service container.

Citation Information

Patent Citations

  • Container login method and system, application server and storage medium

    CN107948203A